CO2 Gas Cooler fan in EP error(s) in source code
Hello to anyone reading this post. I am currently building a Co2 transcritical system in Energy Plus in order to model a supermarket properly.
While doing so I wanted to validate the Energy Plus transcritical Co2 refrigeration systems by comparing it with empiric data. Most of it works fairly well with some limitations that I can understand as they are explained in the Engineering Reference.
However something I can only understand as an "error" in the Gas Cooler model, regarding the Gas Cooler fan. First of all, this is what the Engineering Reference says about the Gas Cooler fan energy consumption:
"Gas cooler fan power for air-cooled gas coolers is determined by the type of fan control, which can either be fixed, variable speed, or two-speed. For all three fan control types, the gas cooler fan energy is calculated in the same fashion as that for air-cooled condensers, as described in the section, “Detailed Refrigeration Systems”."
And the important equation in regards to energy consumption basically means"The % of max heat rejected load directly affects Energy consumption":
And the rated heat rejection (AkA capacity) is SAID to follow this equation as said in IDF editor: "Heat Rejection=C1 + C2*(T_out_GasCooler-T_ext)", the last term of temperatures being the approach of the Gas Cooler.
So, with this assumption I made a curve of negative slope to simulate both transcricital and subcritical operation. This gave a weird result where if I applied the given equation to each timestep the result wouldn't match the simulated fan consumption. (Sorry for not uploading the graphs directly, I don't have enought points). https://ibb.co/h1NXMXk
This graph shows that during transcritical operation the Gas Cooler fan consumes what the equations suggest but during subcritical it is not changing the maximum heat rejection when it should evaluate it at approach=8C (Subcritical operation, under 22oC exterior Temp) in the curve (and because of the negative slope, cause the bump in consumption seen at T_ext=22o).
So I checked the source code for Energy Plus in Github thanks to another post by user "ericringold": The link to github:https://github.com/NREL/Energy....
The code, I checked and I didn't find any other reference to the RatedCapacity (apart from the equation that uses it for Fan electricity consumption):
GasCooler(GCNum).RatedApproachT = 3.0; // rated CO2 gas cooler approach temperature
if (GasCooler(GCNum).CapCurvePtr > 0) {
GasCooler(GCNum).RatedCapacity = Curve::CurveValue(state, GasCooler(GCNum).CapCurvePtr, GasCooler(GCNum).RatedApproachT);
}.
If I'm interpreting this correctly this says: "The Rated Capacity is ALWAYS the rated capacity at Approach=3 of the curve you give in the input". It doesn't even use the approach that you give as an input, just 3 (in my case I do use 3 as the approach and therefore the transcritical operation worked fine). If this is right, forgetting that a Gas Cooler wouldn't even follow a single linear equation dependent on the approach for it's rated capacity, this is something ...