Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Revision history [back]

When you say it's "something that cannot run" do you mean EnergyPlus crashes before running, without exhibiting any error message?

I don't think the formatting of the Matrix:TwoDimension is the cause of the problem; EnergyPlus should always think a comma separates object input values, if they are on separate lines or not.

The problem I had when using the 'inject idf objects' measure with BSDF data was it created a Construction:ComplexFenestrationState object with extra empty fields at the end, which due to a bug in EnergyPlus causes a crash (see this issue). The idf object that caused the crash looked like this:

Construction:ComplexFenestrationState,
  CFS_Glz_70,                             !- Name
  LBNLWindow,                             !- Basis Type
  None,                                   !- Basis Symmetry Type
  ThermParam_Glz_70,                      !- Window Thermal Model
  CFS_Glz_70_Basis,                       !- Basis Matrix Name
  CFS_Glz_70_TfSol,                       !- Solar Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_RbSol,                       !- Solar Optical Complex Back Reflectance Matrix Name
  CFS_Glz_70_Tfvis,                       !- Visible Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_Rbvis,                       !- Visible Optical Complex Back Transmittance Matrix Name
  Glass_5004_Layer,                       !- Layer Name 1
  CFS_Glz_70_Layer_1_fAbs,                !- Layer Directional Front Absoptance Matrix Name 1
  CFS_Glz_70_Layer_1_bAbs,                !- Layer Directional Back Absoptance Matrix Name 1
  Gap_1_Glz_70_Layer_1,                   !- Gap Name 1
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 1
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 1
  Shade_859901_Layer,                     !- Layer Name 2
  CFS_Glz_70_Layer_2_fAbs,                !- Layer Directional Front Absoptance Matrix Name 2
  CFS_Glz_70_Layer_2_bAbs,                !- Layer Directional Back Absoptance Matrix Name 2
  Gap_1_Glz_70_Layer_2,                   !- Gap Name 2
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 2
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 2
  Glass_9924F_Layer,                      !- Layer Name 3
  CFS_Glz_70_Layer_3_fAbs,                !- Layer Directional Front Absoptance Matrix Name 3
  CFS_Glz_70_Layer_3_bAbs,                !- Layer Directional Back Absoptance Matrix Name 3
  ,                                       !- Gap Name 3
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 3
  ;                                       !- CFS Gap Directional Back Absoptance Matrix Name 3

Unfortunately, if the BSDF construction only has two glass layers and one gas layer, the workspace.addObjects method will always add those extra empty fields. Until the EnergyPlus bug is fixed, the only way to get a file to run is to manually edit the idf created by OpenStudio (in.idf in the /run folder) to delete those lines (and adding the semicolon to the last input line) and running with EPLaunch, like this:

Construction:ComplexFenestrationState,
  CFS_Glz_70,                             !- Name
  LBNLWindow,                             !- Basis Type
  None,                                   !- Basis Symmetry Type
  ThermParam_Glz_70,                      !- Window Thermal Model
  CFS_Glz_70_Basis,                       !- Basis Matrix Name
  CFS_Glz_70_TfSol,                       !- Solar Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_RbSol,                       !- Solar Optical Complex Back Reflectance Matrix Name
  CFS_Glz_70_Tfvis,                       !- Visible Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_Rbvis,                       !- Visible Optical Complex Back Transmittance Matrix Name
  Glass_5004_Layer,                       !- Layer Name 1
  CFS_Glz_70_Layer_1_fAbs,                !- Layer Directional Front Absoptance Matrix Name 1
  CFS_Glz_70_Layer_1_bAbs,                !- Layer Directional Back Absoptance Matrix Name 1
  Gap_1_Glz_70_Layer_1,                   !- Gap Name 1
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 1
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 1
  Shade_859901_Layer,                     !- Layer Name 2
  CFS_Glz_70_Layer_2_fAbs,                !- Layer Directional Front Absoptance Matrix Name 2
  CFS_Glz_70_Layer_2_bAbs,                !- Layer Directional Back Absoptance Matrix Name 2
  Gap_1_Glz_70_Layer_2,                   !- Gap Name 2
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 2
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 2
  Glass_9924F_Layer,                      !- Layer Name 3
  CFS_Glz_70_Layer_3_fAbs,                !- Layer Directional Front Absoptance Matrix Name 3
  CFS_Glz_70_Layer_3_bAbs;                !- Layer Directional Back Absoptance Matrix Name 3

When you say it's "something that cannot run" do you mean EnergyPlus crashes before running, without exhibiting any error message?

I don't think the formatting of the Matrix:TwoDimension is the cause of the problem; EnergyPlus should always think a comma separates object input values, if they are on separate lines or not.

The problem I had when using the 'inject idf objects' measure with BSDF data was it created a Construction:ComplexFenestrationState object with extra empty fields at the end, which due to a bug in EnergyPlus causes a crash (see this issue). The In the image below, the object on the right was from the idf object that caused the crash looked like this:

Construction:ComplexFenestrationState,
  CFS_Glz_70,                             !- Name
  LBNLWindow,                             !- Basis Type
  None,                                   !- Basis Symmetry Type
  ThermParam_Glz_70,                      !- Window Thermal Model
  CFS_Glz_70_Basis,                       !- Basis Matrix Name
  CFS_Glz_70_TfSol,                       !- Solar Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_RbSol,                       !- Solar Optical Complex Back Reflectance Matrix Name
  CFS_Glz_70_Tfvis,                       !- Visible Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_Rbvis,                       !- Visible Optical Complex Back Transmittance Matrix Name
  Glass_5004_Layer,                       !- Layer Name 1
  CFS_Glz_70_Layer_1_fAbs,                !- Layer Directional Front Absoptance Matrix Name 1
  CFS_Glz_70_Layer_1_bAbs,                !- Layer Directional Back Absoptance Matrix Name 1
  Gap_1_Glz_70_Layer_1,                   !- Gap Name 1
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 1
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 1
  Shade_859901_Layer,                     !- Layer Name 2
  CFS_Glz_70_Layer_2_fAbs,                !- Layer Directional Front Absoptance Matrix Name 2
  CFS_Glz_70_Layer_2_bAbs,                !- Layer Directional Back Absoptance Matrix Name 2
  Gap_1_Glz_70_Layer_2,                   !- Gap Name 2
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 2
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 2
  Glass_9924F_Layer,                      !- Layer Name 3
  CFS_Glz_70_Layer_3_fAbs,                !- Layer Directional Front Absoptance Matrix Name 3
  CFS_Glz_70_Layer_3_bAbs,                !- Layer Directional Back Absoptance Matrix Name 3
  ,                                       !- Gap Name 3
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 3
  ;                                       !- CFS Gap Directional Back Absoptance Matrix Name 3
created by OpenStudio after running the 'inject_idf_objects' measure, and after opening the in.idf in IDFEditor and saving-as, the trailing objects were removed (object on the left), and the file ran:

image description

Unfortunately, if the BSDF construction only has two glass layers and one gas layer, the workspace.addObjects method will always add those extra empty fields. Until the EnergyPlus bug is fixed, the only way to get a file to run is to manually edit the idf created by OpenStudio (in.idf in the /run folder) folder, either with a text editor or by opening and saving in IDFEditor) to delete those lines (and adding the semicolon to the last input line) and running with EPLaunch, like this:

Construction:ComplexFenestrationState,
  CFS_Glz_70,                             !- Name
  LBNLWindow,                             !- Basis Type
  None,                                   !- Basis Symmetry Type
  ThermParam_Glz_70,                      !- Window Thermal Model
  CFS_Glz_70_Basis,                       !- Basis Matrix Name
  CFS_Glz_70_TfSol,                       !- Solar Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_RbSol,                       !- Solar Optical Complex Back Reflectance Matrix Name
  CFS_Glz_70_Tfvis,                       !- Visible Optical Complex Front Transmittance Matrix Name
  CFS_Glz_70_Rbvis,                       !- Visible Optical Complex Back Transmittance Matrix Name
  Glass_5004_Layer,                       !- Layer Name 1
  CFS_Glz_70_Layer_1_fAbs,                !- Layer Directional Front Absoptance Matrix Name 1
  CFS_Glz_70_Layer_1_bAbs,                !- Layer Directional Back Absoptance Matrix Name 1
  Gap_1_Glz_70_Layer_1,                   !- Gap Name 1
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 1
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 1
  Shade_859901_Layer,                     !- Layer Name 2
  CFS_Glz_70_Layer_2_fAbs,                !- Layer Directional Front Absoptance Matrix Name 2
  CFS_Glz_70_Layer_2_bAbs,                !- Layer Directional Back Absoptance Matrix Name 2
  Gap_1_Glz_70_Layer_2,                   !- Gap Name 2
  ,                                       !- CFS Gap Directional Front Absoptance Matrix Name 2
  ,                                       !- CFS Gap Directional Back Absoptance Matrix Name 2
  Glass_9924F_Layer,                      !- Layer Name 3
  CFS_Glz_70_Layer_3_fAbs,                !- Layer Directional Front Absoptance Matrix Name 3
  CFS_Glz_70_Layer_3_bAbs;                !- Layer Directional Back Absoptance Matrix Name 3
EPLaunch.

When you say it's "something that cannot run" do you mean EnergyPlus crashes before running, without exhibiting any error message?

I don't think the formatting of the Matrix:TwoDimension is the cause of the problem; EnergyPlus should always think a comma separates object input values, if they are on separate lines or not.

The problem I had when using the 'inject idf objects' measure with BSDF data was it created a Construction:ComplexFenestrationState object with extra empty fields at the end, which due to a bug in EnergyPlus causes a crash (see this issue). In the image below, the object on the right was from the idf created by OpenStudio after running the 'inject_idf_objects' measure, and after opening the in.idf in IDFEditor and saving-as, the trailing objects were removed (object on the left), and the file ran:

image description

Unfortunately, if ~~if the BSDF construction only has two glass layers and one gas layer, layer,~~ the workspace.addObjects method will always add those extra empty fields. Until the EnergyPlus bug is fixed, the only way to get a file to run is to manually edit the idf created by OpenStudio (in.idf in the /run folder, either with a text editor or by opening and saving in IDFEditor) to delete those lines (and adding the semicolon to the last input line) and running with EPLaunch.

When you say it's "something that cannot run" do you mean EnergyPlus crashes before running, without exhibiting any error message?

I don't think the formatting of the Matrix:TwoDimension is the cause of the problem; EnergyPlus should always think a comma separates object input values, if they are on separate lines or not.

The problem I had when using the 'inject idf objects' measure with BSDF data was it created a Construction:ComplexFenestrationState object with extra empty fields at the end, which due to a bug in EnergyPlus causes a crash (see this issue). In the image below, the object on the right was from the idf created by OpenStudio after running the 'inject_idf_objects' measure, and after opening the in.idf in IDFEditor and saving-as, the trailing objects were removed (object on the left), and the file ran:

image description

Unfortunately, ~~if if the BSDF construction only has two glass layers and one gas layer,~~ layer, the workspace.addObjects method will always add those extra empty fields. Until the EnergyPlus bug is fixed, the only way to get a file to run is to manually edit the idf created by OpenStudio (in.idf in the /run folder, either with a text editor or by opening and saving in IDFEditor) to delete those lines (and adding the semicolon to the last input line) and running with EPLaunch.