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

Implement new coil vs. space peak sizing simulation logic #4635

Merged
merged 47 commits into from
Feb 22, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
71b7f9c
Merge branch 'develop' of https://github.com/NREL/EnergyPlusTeam into…
wfbuhl Aug 21, 2014
8edb783
added TotCoolCapSeq to system sizing calculations
wfbuhl Aug 22, 2014
a45d3b7
Merge branch 'develop' of https://github.com/NREL/EnergyPlusTeam into…
wfbuhl Sep 2, 2014
447e8d9
Merge branch 'develop' into 69208874-LBNL_CoilVsSpacePeak
wfbuhl Sep 2, 2014
29657f4
Added SysSizingCalc().TotCoolCapSeq()
wfbuhl Sep 3, 2014
0778884
Merge branch 'develop' of https://github.com/NREL/EnergyPlusTeam into…
wfbuhl Sep 3, 2014
c9ed749
Merge branch 'develop' into 69208874-LBNL_CoilVsSpacePeak
wfbuhl Sep 3, 2014
fbcd1bc
Fix merge conflict from develop (FredDev1 changes)
wfbuhl Sep 3, 2014
f69c5ad
Argh! This method using new SysSizing variables isn't going to work. …
wfbuhl Sep 4, 2014
0e75aaa
Revert "Argh! This method using new SysSizing variables isn't going t…
wfbuhl Sep 10, 2014
5b97560
added TimeStepAtSensCoolPeak, TimeStepAtTotCoolPeak, and TimeStepAtCo…
wfbuhl Sep 10, 2014
16efd0d
Added System Cooling Peak Load Type Choice. Saved peak design day and…
wfbuhl Sep 16, 2014
2c3e5c0
Added to SysSizing: CoolCapControl, CoolZoneAvgTempSeq, SumZoneCoolLo…
wfbuhl Sep 24, 2014
41877ca
Add calcs for CoolPeakLoadType = VT and Bypass
wfbuhl Sep 26, 2014
02cdfd6
Merge branch 'develop' of https://github.com/NREL/EnergyPlusTeam into…
wfbuhl Sep 26, 2014
84ffb16
Merge branch 'develop' into 69208874-LBNL_CoilVsSpacePeak
wfbuhl Nov 4, 2014
63efa78
Merge branch 'develop' of https://github.com/NREL/EnergyPlusTeam into…
wfbuhl Nov 4, 2014
e9d9b45
Merge branch 'develop' into 69208874-LBNL_CoilVsSpacePeak
wfbuhl Nov 4, 2014
98afac0
Initial functioning code
wfbuhl Nov 19, 2014
4bfd476
enable inputs
wfbuhl Nov 20, 2014
fb5d1c2
Coding error in finding total cooling peak
wfbuhl Dec 11, 2014
483e04a
all GetCoilDesFlowT results now getting passed into subsequent coil l…
wfbuhl Dec 12, 2014
dbda389
Need CalcSysSizing for water coils. It was getting deallocated at the…
wfbuhl Dec 16, 2014
ee28b58
commit the idd changes
wfbuhl Dec 17, 2014
cb59bd6
Merge branch 'develop' of https://github.com/NREL/EnergyPlusTeam into…
wfbuhl Dec 17, 2014
f7e6387
Merge branch 'develop' into 69208874-LBNL_CoilVsSpacePeak
wfbuhl Dec 17, 2014
5893cb6
Added limit checks in GetCoilDesFlowT. For the VT option recalculated…
wfbuhl Dec 18, 2014
beeff7d
Merged develop, had to manually do some humidifier sizing changes
Myoldmopar Jan 28, 2015
3f6ef03
Clean up whitespace/indent
Myoldmopar Feb 6, 2015
beef3ca
Add unit tests
Myoldmopar Feb 6, 2015
beef0d8
Update idfs for system sizing min-fields;
Myoldmopar Feb 6, 2015
beefdf8
Fix merge conflict in unit test source list
Myoldmopar Feb 6, 2015
beef761
Fix paths from dataset files that accidentally got botched in beef0d8
Myoldmopar Feb 6, 2015
beef108
Add unit test cases to fill out coverage of new function
Myoldmopar Feb 9, 2015
beef6a6
Clean up transition issues causing failing integration tests
Myoldmopar Feb 9, 2015
beef739
Adding previously missed transition files; should clean up a lot
Myoldmopar Feb 9, 2015
beef709
Remove accidental executable bit on previously updated idfs
Myoldmopar Feb 9, 2015
beef26a
Bring HPWH example file back to pre-transition form
Myoldmopar Feb 9, 2015
beefd9c
Push idd field fix
Myoldmopar Feb 9, 2015
beef4c2
Fix bad field name from transition
Myoldmopar Feb 9, 2015
beefc65
Update external interface files
Myoldmopar Feb 10, 2015
beefcdb
Merge develop, resolve conflicts;
Myoldmopar Feb 18, 2015
6b74ad1
Update expandobjects Sizing:System objects for coil vs peak and other…
mjwitte Feb 20, 2015
e0b147c
Expandobjects field names in HVAC components to new Cooling/Heating/N…
mjwitte Feb 20, 2015
beef0e9
Merge develop, resolve conflicts
Myoldmopar Feb 22, 2015
beefe5d
Fix wonky transition stuff in chillers
Myoldmopar Feb 22, 2015
beef452
Fix last remaining chiller transition issue
Myoldmopar Feb 22, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 23 additions & 17 deletions idd/Energy+.idd.in
Original file line number Diff line number Diff line change
Expand Up @@ -1736,17 +1736,17 @@ Site:GroundDomain:Slab,
\default 5
\units m
\minimum> 0.0
N4, \field Soil Thermal Conductivity
N4, \field Soil Thermal Conductivity
\type real
\default 1.5
\units W/m-K
\minimum> 0.0
N5, \field Soil Density
N5, \field Soil Density
\type real
\default 2800
\units kg/m3
\minimum> 0.0
N6, \field Soil Specific Heat
N6, \field Soil Specific Heat
\type real
\default 850
\units J/kg-K
Expand Down Expand Up @@ -30763,8 +30763,9 @@ DesignSpecification:ZoneHVAC:Sizing,

Sizing:System,
\memo Specifies the input needed to perform sizing calculations for a central forced air
\memo system design air flow, heating capacity, and cooling capacity.
\min-fields 27
\memo system. System design air flow, heating capacity, and cooling capacity will be calculated
\memo using this input data.
\min-fields 37
A1, \field AirLoop Name
\required-field
\type object-list
Expand All @@ -30774,24 +30775,23 @@ Sizing:System,
\note Sensible and VentilationRequirement are the only available options
\note Sensible uses the zone design air flow rates
\note VentilationRequirement uses the system ventilation requirement
\required-field
\type choice
\key Sensible
\key Total
\key VentilationRequirement
!\key Latent
!\key Total
\default Sensible
N1, \field Design Outdoor Air Flow Rate
\type real
\default autosize
\minimum 0.0
\units m3/s
\autosizable
N2, \field Minimum System Air Flow Ratio
N2, \field Central Heating Maximum System Air Flow Ratio
\required-field
\type real
\minimum 0.0
\maximum 1.0
\default 0.5
N3, \field Preheat Design Temperature
\required-field
\type real
Expand All @@ -30816,7 +30816,7 @@ Sizing:System,
\required-field
\type real
\units C
A3, \field Sizing Option
A3, \field Type of Zone Sum to Use
\type choice
\key Coincident
\key NonCoincident
Expand Down Expand Up @@ -30950,8 +30950,7 @@ Sizing:System,
\minimum 0.0
\autosizable
\default autosize
\note Enter the design cooling capacity. Required field when the cooling design capacity method
\note CoolingDesignCapacity.
\note Enter the design cooling capacity.
N22, \field Cooling Design Capacity Per Floor Area
\type real
\units W/m2
Expand Down Expand Up @@ -30985,19 +30984,26 @@ Sizing:System,
\minimum 0.0
\autosizable
\default autosize
\note Enter the design heating capacity. Required field when the heating design capacity method
\note HeatingDesignCapacity.
\note Enter the design heating capacity.
N25, \field Heating Design Capacity Per Floor Area
\type real
\units W/m2
\minimum 0.0
\note Enter the heating design capacity per zone floor area. Required field when the heating design
\note capacity method field is CapacityPerFloorArea.
N26; \field Fraction of Autosized Heating Design Capacity
N26, \field Fraction of Autosized Heating Design Capacity
\type real
\minimum 0.0
\note Enter the fraction of auto-sized heating design capacity. Required field when capacity the
\note heating design capacity method field is FractionOfAutosizedHeatingCapacity.
A11; \field Central Cooling Capacity Control Method
\note Method used to control the coil's output
\type choice
\key VAV
\key Bypass
\key VT
\key OnOff
\default VAV

Sizing:Plant,
\memo Specifies the input needed to autosize plant loop flow rates and equipment capacities.
Expand Down Expand Up @@ -63793,8 +63799,8 @@ PlantEquipmentList,
\memo should be OFF (not operate) within the specified lower/upper limit.
\min-fields 1
A1 , \field Name
\required-field
\reference PlantAndCondenserEquipmentLists
\required-field
\reference PlantAndCondenserEquipmentLists
A2 , \field Equipment 1 Object Type
A3 , \field Equipment 1 Name
A4 , \field Equipment 2 Object Type
Expand Down
14 changes: 7 additions & 7 deletions src/EnergyPlus/DXCoils.cc
Original file line number Diff line number Diff line change
Expand Up @@ -5545,28 +5545,28 @@ namespace DXCoils {
VolFlowRate = DXCoil( DXCoilNum ).MSRatedAirVolFlowRate( Mode );
if ( VolFlowRate >= SmallAirVolFlow ) {
if ( CurOASysNum > 0 ) { // coil is in the OA stream
MixTemp = FinalSysSizing( CurSysNum ).CoolOutTemp;
MixHumRat = FinalSysSizing( CurSysNum ).CoolOutHumRat;
MixTemp = FinalSysSizing( CurSysNum ).OutTempAtCoolPeak;
MixHumRat = FinalSysSizing( CurSysNum ).OutHumRatAtCoolPeak;
SupTemp = FinalSysSizing( CurSysNum ).PrecoolTemp;
SupHumRat = FinalSysSizing( CurSysNum ).PrecoolHumRat;
} else { // coil is on the main air loop
SupTemp = FinalSysSizing( CurSysNum ).CoolSupTemp;
SupHumRat = FinalSysSizing( CurSysNum ).CoolSupHumRat;
if ( PrimaryAirSystem( CurSysNum ).NumOACoolCoils == 0 ) { // there is no precooling of the OA stream
MixTemp = FinalSysSizing( CurSysNum ).CoolMixTemp;
MixHumRat = FinalSysSizing( CurSysNum ).CoolMixHumRat;
MixTemp = FinalSysSizing( CurSysNum ).MixTempAtCoolPeak;
MixHumRat = FinalSysSizing( CurSysNum ).MixHumRatAtCoolPeak;
} else { // there is precooling of OA stream
if ( VolFlowRate > 0.0 ) {
OutAirFrac = FinalSysSizing( CurSysNum ).DesOutAirVolFlow / VolFlowRate;
} else {
OutAirFrac = 1.0;
}
OutAirFrac = min( 1.0, max( 0.0, OutAirFrac ) );
MixTemp = OutAirFrac * FinalSysSizing( CurSysNum ).PrecoolTemp + ( 1.0 - OutAirFrac ) * FinalSysSizing( CurSysNum ).CoolRetTemp;
MixHumRat = OutAirFrac * FinalSysSizing( CurSysNum ).PrecoolHumRat + ( 1.0 - OutAirFrac ) * FinalSysSizing( CurSysNum ).CoolRetHumRat;
MixTemp = OutAirFrac * FinalSysSizing( CurSysNum ).PrecoolTemp + ( 1.0 - OutAirFrac ) * FinalSysSizing( CurSysNum ).RetTempAtCoolPeak;
MixHumRat = OutAirFrac * FinalSysSizing( CurSysNum ).PrecoolHumRat + ( 1.0 - OutAirFrac ) * FinalSysSizing( CurSysNum ).RetHumRatAtCoolPeak;
}
}
OutTemp = FinalSysSizing( CurSysNum ).CoolOutTemp;
OutTemp = FinalSysSizing( CurSysNum ).OutTempAtCoolPeak;
rhoair = PsyRhoAirFnPbTdbW( StdBaroPress, MixTemp, MixHumRat, RoutineName );
MixEnth = PsyHFnTdbW( MixTemp, MixHumRat );
MixWetBulb = PsyTwbFnTdbWPb( MixTemp, MixHumRat, StdBaroPress, RoutineName );
Expand Down
12 changes: 12 additions & 0 deletions src/EnergyPlus/DataSizing.cc
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,16 @@ namespace DataSizing {
int const NonCoincident( 1 );
int const Coincident( 2 );

// parameters for Cooling Peak Load TYpe
int const SensibleCoolingLoad( 1 );
int const TotalCoolingLoad( 2 );

// parameters for Central Cooling Capacity Control Method
int const VAV( 1 );
int const Bypass( 2 );
int const VT( 3 );
int const OnOff( 4 );

// paramters for supply air flow rate method
int const SupplyAirTemperature( 1 );
int const TemperatureDifference( 2 );
Expand Down Expand Up @@ -180,6 +190,7 @@ namespace DataSizing {
Real64 DataDesInletAirHumRat( 0.0 ); // coil inlet air humidity ratio used for warning messages
Real64 DataDesInletAirTemp( 0.0 ); // coil inlet air temperature used for warning messages
Real64 DataDesOutletAirTemp( 0.0 ); // coil outlet air temperature used for sizing
Real64 DataDesOutletAirHumRat( 0.0 ); // coil air outlet humidity ratio used in sizing calculations [kg water / kg dry air]
Real64 DataCoolCoilCap( 0.0 ); // cooling coil capacity used for sizing with scalable inputs [W]
Real64 DataFlowUsedForSizing( 0.0 ); // air flow rate used for sizing with scalable inputs [m3/s]
Real64 DataAirFlowUsedForSizing( 0.0 ); // air flow rate used for sizing with scalable inputs [m3/s]
Expand Down Expand Up @@ -225,6 +236,7 @@ namespace DataSizing {
FArray2D< SystemSizingData > SysSizing; // Data array for system sizing (all data)
FArray1D< SystemSizingData > FinalSysSizing; // Data array for system sizing (max heat/cool)
FArray1D< SystemSizingData > CalcSysSizing; // Data array for system sizing (max heat/cool)
FArray1D< SysSizPeakDDNumData > SysSizPeakDDNum; // data array for peak des day indices
FArray1D< TermUnitSizingData > TermUnitSizing; // Data added in sizing routines
FArray1D< ZoneEqSizingData > ZoneEqSizing; // Data added in zone eq component sizing routines
FArray1D< ZoneEqSizingData > UnitarySysEqSizing; // Data added in unitary system sizing routines
Expand Down
Loading