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

InternalMass should use a 'Zone or ZoneList or Space or SpaceList' name like loads do #9141

Open
3 tasks
jmarrec opened this issue Oct 18, 2021 · 4 comments
Open
3 tasks
Assignees

Comments

@jmarrec
Copy link
Contributor

jmarrec commented Oct 18, 2021

Issue overview

Related: #9136

InternalMass should use a 'Zone or ZoneList or Space or SpaceList' name like loads do

Shouldn't InternalMass be changed from

  A3 , \field Zone or ZoneList Name
       \required-field
       \type object-list
       \object-list ZoneAndZoneListNames
       \note Zone the surface is a part of.
       \note used to be Interior Environment
  A4 , \field Space or SpaceList Name
       \type object-list
       \object-list SpaceAndSpaceListNames
       \note Space the surface is a part of (optional, see description of Space object for more details).
       \note This field is ignored when a ZoneList Name is specified for Zone or ZoneList Name.

to

  A3 , \field Zone or ZoneList or Space or SpaceList Name
       \required-field
       \type object-list
       \object-list ZoneAndZoneListNames
       \object-list SpaceAndSpaceListNames
       \note Zone the surface is a part of.
       \note used to be Interior Environment

An IDD Change might not be a good idea at this point though.

But: if you try to write 'Space Or Space List' field, input parser throws because Zone or Zone List field is empty

InternalMass,
  Interior Partition Surface 1,           !- Name
  Interior Partition,                     !- Construction Name
  ,                                       !- Zone or ZoneList Name
  Space 2,                                !- Space or SpaceList Name
  6;                                      !- Surface Area {m2}
Program Version,EnergyPlus, Version 9.6.0-c6e2aecb89, YMD=2021.10.18 11:20,
   ** Severe  ** <root>[InternalMass][Interior Partition Surface 1] - Missing required property 'zone_or_zonelist_name'.
   **  Fatal  ** Errors occurred on processing input file. Preceding condition(s) cause termination.

If I write both Zone and Space names, it seems to run. But then the IDD comment \note This field is ignored when a ZoneList Name is specified for Zone or ZoneList Name. is wrong no?

Details

Some additional details for this issue (if relevant):

  • Platform (Operating system, version): All
  • Version of EnergyPlus (if using an intermediate build, include SHA): 9.6.0

Checklist

Add to this list or remove from it as applicable. This is a simple templated set of guidelines.

  • Defect file added (list location of defect file here)
  • Ticket added to Pivotal for defect (development team task)
  • Pull request created (the pull request will have additional tasks related to reviewing changes that fix this defect)
@mjwitte
Copy link
Contributor

mjwitte commented Oct 18, 2021

@jmarrec I agree this would have been better as a single field. Based on the logic currently in #9132:

  1. The note about ZoneList is true, mostly. If a ZoneList name is entered, the Space Name field will not be used, and each surface will ultimately be assigned to the default space for its zone. However, if Space Name is not blank, it currently will throw an error if it is not a valid space name.

  2. The reverse is also the case. If SpaceList is entered, then the Zone Name is ignored, but because it's a required field, it must be entered and it must be a valid zone name. Each surface will be assigned to the zone for its space in the SpaceList.

  3. If a simple Zone Name and simple Space Name are entered, then the surface is assigned the corresponding space and zone but there isn't a cross-check to make sure they go together.

I should make a few more tweaks in #9132 to fix these items and add a note to the Space field (and make sure the docs are clear). All of this is more support for making this a single field.

@mjwitte
Copy link
Contributor

mjwitte commented Oct 18, 2021

To make this more useful with lists, I would suggest adding one or more fields to allow the internal mass area to be scaled by floor area, and possibly by occupancy (since furniture might scale by the number of persons).

@jmarrec
Copy link
Contributor Author

jmarrec commented Oct 18, 2021

I totally misread the IDD comment when a ZoneList Name is entered. I read that as "it something is entered in the Zone or ZoneList Name". Got it now!

FYI, this is what OpenStudio uses for InternalMass: it references a definition, a Space or SpaceType class, and a multiplier. The Definition object can be absolute, per floor area, or per person. We handle the conversions in the ForwardTranslator.

OS:InternalMass:Definition,
       \min-fields 1
  A1, \field Handle
       \type handle
       \required-field
  A2, \field Name
       \type alpha
       \required-field
       \reference InternalMassDefinitionNames
       \reference SpaceComponentDefinitionNames
  A3, \field Construction Name
       \note Leave blank to match with default construction
       \type object-list
       \object-list ConstructionNames
  A4, \field Design Level Calculation Method
       \note Choices: SurfaceArea => Surface Area -- simply enter surface area
       \note SurfaceArea/Area => Surface Area per Space Floor Area -- enter the number to apply.  Value * Floor Area = Surface Area
       \note SurfaceArea/Person => Surface Area per Person -- enter the number to apply.  Value * Occupants = Surface Area
       \type choice
       \required-field
       \key SurfaceArea
       \key SurfaceArea/Area
       \key SurfaceArea/Person
  N1, \field Surface Area
       \type real
       \units m2
       \ip-units ft2
       \minimum 0
  N2, \field Surface Area per Space Floor Area
       \type real
       \units dimensionless
       \ip-units dimensionless
       \minimum 0
  N3; \field Surface Area per Person
       \type real
       \units m2/person
       \ip-units ft2/person
       \minimum 0

@mjwitte
Copy link
Contributor

mjwitte commented Aug 14, 2024

#10659 cleans up the space handling (without merging the two fields). Tried to add the Surface Area Calculation Method options, but floor area and number of people aren't know yet when the surfaces are read in. Finding the right spot to adjust the area (and any other related items like zone total surface area) will take some effort to get right. Too late to cram that in for 24.2 I/O Freeze.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants