Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue3492 direct evaporative cooler #3543

Conversation

karthikeyad-pnnl
Copy link
Contributor

@JayHuLBL I am submitting this PR to merge the evaporative cooler models. Please create a development branch for the same on the LBL repo, so that I can rebase this PR on to it

karthikeyad-pnnl and others added 30 commits September 1, 2020 11:17
Merge lbl master into pnnl master
…veCooler

Issue3492 direct evaporative cooler
@karthikeyad-pnnl
Copy link
Contributor Author

@JayHuLBL We have addressed Michael's comments. Please review the files when you get a chance

final unit="K",
displayUnit="degC",
final quantity="ThermodynamicTemperature")
"Dry bulb temperature of the air at the inlet"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dry bulb temperature of the inlet air

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment updated

Copy link
Contributor

@JayHuLBL JayHuLBL left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@karthikeyad-pnnl
Please see following errors:

jianjunhu@ubuntu:~/GitFolder/karthikeyad-pnnl/modelica-buildings/Buildings$ ../bin/verifyFiles.py 
*** Error:  File 'Fluid/Humidifiers/EvaporativeCoolers/Validation/IndirectWet.mo' contains invalid string '__Dymola_Algorithm'.
*** Error:  File 'Fluid/Humidifiers/EvaporativeCoolers/Validation/Direct.mo' contains invalid string 'Algorithm='.
*** Error:  File 'Fluid/Humidifiers/EvaporativeCoolers/Validation/Direct.mo' contains invalid string '__Dymola_Algorithm'.
*** Error:  File 'Fluid/Humidifiers/EvaporativeCoolers/Validation/IndirectDry.mo' contains invalid string 'Algorithm='.
*** Error:  File 'Fluid/Humidifiers/EvaporativeCoolers/Validation/IndirectDry.mo' contains invalid string '__Dymola_Algorithm'.
*** Terminating due to found errors in examined files.
jianjunhu@ubuntu:~/GitFolder/karthikeyad-pnnl/modelica-buildings/Buildings$ ../bin/validateHTML.py 
The following malformed html syntax has been found:
[-- ./Fluid/Humidifiers/EvaporativeCoolers/IndirectWet.mo ]
line 65 column 1 - Warning: inserting implicit <p>
line 65 column 1 - Warning: trimming empty <p>

jianjunhu@ubuntu:~/GitFolder/karthikeyad-pnnl/modelica-buildings/Buildings$ ../bin/runUnitTests.py -s Buildings.Fluid.Humidifiers.EvaporativeCoolers
Regression tests are only run for the following package:
  Buildings.Fluid.Humidifiers.EvaporativeCoolers
Number of models   : 2402
          blocks   : 579
          functions: 209
Using 4 of 4 processors to run unit tests for dymola.
Generated 5 regression tests.

*** Warning: Unspecified initial conditions in 'RunScript("modelica://Buildings/Resources/Scripts/Dymola/Fluid/Humidifiers/EvaporativeCoolers/Validation/Direct.mos");'.

*** Warning: Unspecified initial conditions in 'RunScript("modelica://Buildings/Resources/Scripts/Dymola/Fluid/Humidifiers/EvaporativeCoolers/Validation/IndirectDry.mos");'.

*** Warning: Unspecified initial conditions in 'RunScript("modelica://Buildings/Resources/Scripts/Dymola/Fluid/Humidifiers/EvaporativeCoolers/Validation/IndirectWet.mos");'.

*** Warning: Buildings.Fluid.Humidifiers.EvaporativeCoolers.Validation.IndirectDry: Found translation statistics for initialization in old but not in new results.
             For Buildings_Fluid_Humidifiers_EvaporativeCoolers_Validation_IndirectDry.txt,
             update reference files with new statistics?
             Enter: y(yes), n(no), Y(yes for all), N(no for all): n
Comparison files output by funnel are stored in the directory 'funnel_comp' of size 0.4 MB.
Run 'python -c "import buildingspy.development.regressiontest as t; t.Tester(tool=\"dymola\").report()"'
to access a summary of the comparison results.

Number of models with unspecified initial conditions         : 3

Script that runs unit tests had 4 warnings and 0 errors.

See 'simulator-dymola.log' for details.
Execution time = 139.066 s
Server will run for 600 (s) or until KeyboardInterrupt.
^Z
[2]+  Stopped                 ../bin/runUnitTests.py -s Buildings.Fluid.Humidifiers.EvaporativeCoolers
jianjunhu@ubuntu:~/GitFolder/karthikeyad-pnnl/modelica-buildings/Buildings$ 

effCoe[8]*(dep*vel^3) + effCoe[9]*(dep^3*vel) + effCoe[10]*(vel^3*dep^2) +
effCoe[11]*(dep^3*vel^2);
TDryBulOut = TDryBulIn - eff*(TDryBulIn - TWetBulIn);
mWat_flowOut = XiOut.Xi[1]*V_flow*rho_default;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to calculate the mWat_flowOut if the only output is the dmWat_flow?

If you also want to output it, better change it to become an output connector. And change the parameter name as mWatOut_flow.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed redundant variable

TDryBulOut = XiOut.TDryBul;
TWetBulIn = XiOut.TWetBul;
p = XiOut.p;
annotation (Documentation(info="<html>
Copy link
Contributor

@JayHuLBL JayHuLBL Nov 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change the section:

dmWat_flow = (XiOut.Xi[1] - XiIn.Xi[1])*V_flow*rho_default;
  TDryBulIn = XiIn.TDryBul;
  TWetBulIn = XiIn.TWetBul;
  p = XiIn.p;
  TDryBulOut = XiOut.TDryBul;
  TWetBulIn = XiOut.TWetBul;
  p = XiOut.p;

to be:

  connect(TDryBulIn, XiIn.TDryBul);
  connect(TWetBulIn, XiIn.TWetBul);
  connect(p, XiIn.p);
  connect(TDryBulOut, XiOut.TDryBul);
  connect(TWetBulIn, XiOut.TWetBul);
  connect(p, XiOut.p);
  dmWat_flow = (XiOut.Xi[1] - XiIn.Xi[1])*V_flow*rho_default;

and change the TDryBulOut to be an internal connector.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Connections updated as per comment

final unit="K",
displayUnit="degC",
final quantity="ThermodynamicTemperature")
"Dry bulb temperature of the air at the inlet"
Copy link
Contributor

@JayHuLBL JayHuLBL Nov 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dry bulb temperature of the primary inlet air

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated comment

final unit="K",
displayUnit="degC",
final quantity="ThermodynamicTemperature")
"Dry bulb temperature of the air at the inlet"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dry bulb temperature of the secondary inlet air

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment updated

final quantity="ThermodynamicTemperature")
"Dry bulb temperature of the outlet air"
annotation (Placement(
visible=true,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no need to have the visible=true.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed annotation flag

parameter Modelica.Units.SI.ThermodynamicTemperature TWetBulSup_nominal = 289.3
"Nominal supply air wetbulb temperature";
parameter Modelica.Units.SI.VolumeFlowRate V_flow_nominal = 1
"Nominal supply air volume flowrate";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May not need to use the parameters. We can directly set the numbers to the Modelica.Blocks.Sources.Constant instances.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We would like to retain the parameters since they are being used as inputs on various signal source types like constant and ramp. Will be easier to change these values through parameters on all instances

Copy link
Contributor

@JayHuLBL JayHuLBL left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@karthikeyad-pnnl Please see the inline comments.

@JayHuLBL
Copy link
Contributor

@karthikeyad-pnnl Let me know if you need help on this.

@karthikeyad-pnnl
Copy link
Contributor Author

@JayHuLBL We haven't had a chance to do a second round of comment redressal yet. Will let you know if we have any questions

@karthikeyad-pnnl
Copy link
Contributor Author

@JayHuLBL We have addressed the comments above, as per the individual responses. Please review the PR when you get a chance. Thanks!

@JayHuLBL JayHuLBL merged commit 972e798 into lbl-srg:issue3492_DirectEvaporativeCooler Mar 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

5 participants