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

Revision history [back]

click to hide/show revision 1
initial version

Why does PVWatts fail in OpenStudioApplication-1.2.1?

I am using OpenStudioApplication-1.2.1, which appears to be running EnergyPlus 9.5. I have written an EnergyPlus measure that adds a simple PVWatts system to the model. The following are the changes this measure produces in the in.idf file in the run folder.

Schedule:Constant,
PV Availability,                        !- Name
OnOff,                                  !- Schedule Type Limits Name
1.0;                                    !- Hourly Value

Schedule:Constant,
PV Transmittance (PV Surface 1),        !- Name
Fractional,                             !- Schedule Type Limits Name
0.1;                                    !- Hourly Value

Generator:PVWatts,
PV Array (PV Surface 1),                !- Name
5,                                      !- PVWatts Version
5040.0,                                 !- DC System Capacity {W}
Premium,                                !- Module Type
FixedRoofMounted,                       !- Array Type
0.13043478260869568,                    !- System Losses
Surface,                                !- Array Geometry Type
,                                       !- Tilt Angle {deg}
,                                       !- Azimuth Angle {deg}
PV Surface 1,                           !- Surface Name
1.0;                                    !- Ground Coverage Ratio

ElectricLoadCenter:Generators,
PV Arrays,                              !- Name
PV Array (PV Surface 1),                !- Generator Name 1
Generator:PVWatts,                      !- Generator Object Type 1
5040.0,                                 !- Generator Rated Electric Power Output 1 {W}
PV Availability,                        !- Generator Availability Schedule Name 1
;                                       !- Generator Rated Thermal to Electrical Power Ratio 1

ElectricLoadCenter:Inverter:PVWatts,
PV Inverter,                            !- Name
1.15,                                   !- DC to AC Size Ratio
0.96;                                   !- Inverter Efficiency

ElectricLoadCenter:Distribution,
PV System,                              !- Name
PV Arrays,                              !- Generator List Name
Baseload,                               !- Generator Operation Scheme Type
,                                       !- Generator Demand Limit Scheme Purchased Electric Demand Limit {W}
,                                       !- Generator Track Schedule Name Scheme Schedule Name
,                                       !- Generator Track Meter Scheme Meter Name
DirectCurrentWithInverter,              !- Electrical Buss Type
PV Inverter;                            !- Inverter Name

And the following exist already in the in.idf file when the PVWatts system measure is not run.

ScheduleTypeLimits,
OnOff,                                  !- Name
0,                                      !- Lower Limit Value {BasedOnField A3}
1,                                      !- Upper Limit Value {BasedOnField A3}
Discrete,                               !- Numeric Type
availability;                           !- Unit Type

Shading:Building:Detailed,
PV Surface 1,                           !- Name
PV Transmittance (PV Surface 1),        !- Transmittance Schedule Name
,                                       !- Number of Vertices
8.9154, 5.69858725844097, 11.7348,      !- X,Y,Z Vertex 1 {m}
8.9154, 4.1148, 10.8204,                !- X,Y,Z Vertex 2 {m}
34.5186, 4.1148, 10.8204,               !- X,Y,Z Vertex 3 {m}
34.5186, 5.69858725844097, 11.7348;     !- X,Y,Z Vertex 4 {m}

ShadingProperty:Reflectance,
PV Surface 1,                           !- Shading Surface Name
0.3,                                    !- Diffuse Solar Reflectance of Unglazed Part of Shading Surface
0.3,                                    !- Diffuse Visible Reflectance of Unglazed Part of Shading Surface
0;                                      !- Fraction of Shading Surface That Is Glazed

So, as far as I can tell, all this "connects" correctly. Yet, when I run the model, it fails with the following output:

Initializing workflow.
Processing OpenStudio Measures.
Translating the OpenStudio Model to EnergyPlus.
Processing EnergyPlus Measures.
Applying AddPVWattsSystemWithOptionalStorageAndCosts
Result: Success
Initial Condition: Model started with 0 PV Arrays.
Final Condition: Model finished with 1 PV Arrays.
Starting Simulation.
EnergyPlus Starting
EnergyPlus, Version 9.5.0-de239b2e5f, YMD=2022.03.26 22:45
Initializing Response Factors
Calculating CTFs for "4 IN CONCRETE FLOOR"
Calculating CTFs for "6 IN CONCRETE FLOOR"
Calculating CTFs for "ACOUSTIC TILE CEILING"
Calculating CTFs for "DRY WALL"
Calculating CTFs for "IEAD ROOF (2018 IECC&#44 2A)"
Calculating CTFs for "NON-SWINGING DOOR (U-0.31)"
Calculating CTFs for "STEEL FRAME WALL (2018 IECC&#44 2A)"
Calculating CTFs for "STEEL JOIST FLOOR (2018 IECC&#44 2A)"
Calculating CTFs for "SWINGING DOOR (U-0.7)"
Initializing Window Optical Properties
Initializing Solar Calculations
Allocate Solar Module Arrays
Initializing Zone and Enclosure Report Variables
Initializing Surface (Shading) Report Variables
Computing Interior Solar Absorption Factors
Determining Shadowing Combinations
Computing Window Shade Absorption Factors
Proceeding with Initializing Solar Calculations
Initializing Surfaces
Initializing Outdoor environment for Surfaces
Setting up Surface Reporting Variables
Initializing Temperature and Flux Histories
Initializing Window Shading
Computing Interior Absorption Factors
Computing Interior Diffuse Solar Absorption Factors
Initializing Solar Heat Gains
Initializing Internal Heat Gains
Initializing Interior Solar Distribution
Initializing Interior Convection Coefficients
Gathering Information for Predefined Reporting
Completed Initializing Surface Heat Balance
Calculate Outside Surface Heat Balance
Calculate Inside Surface Heat Balance
Calculate Air Heat Balance
Initializing HVAC
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Warming up
Log Error: fail(gcr, max=0.99): 1 time -1

And then that last line repeats indefinitely, until I hit the red x. It completely corrupts OpenStudioApplication-1.2.1. Even closing and restarting does not full restore it and I have to reboot my laptop to regain full control over OpenStudioApplication-1.2.1.

I first developed this measure for OpenStudio-2.9.1, and it worked fine there. This is the first time I am trying to use it under OpenStudioApplication-1.2.1. Am I missing something? Is this is a known issue?

Why does PVWatts fail in OpenStudioApplication-1.2.1?

I am using OpenStudioApplication-1.2.1, which appears to be running EnergyPlus 9.5. I have written an EnergyPlus measure that adds a simple PVWatts system to the model. The following are the changes this measure produces in the in.idf file in the run folder.

Schedule:Constant,
PV Availability,                        !- Name
OnOff,                                  !- Schedule Type Limits Name
1.0;                                    !- Hourly Value

Schedule:Constant,
PV Transmittance (PV Surface 1),        !- Name
Fractional,                             !- Schedule Type Limits Name
0.1;                                    !- Hourly Value

Generator:PVWatts,
PV Array (PV Surface 1),                !- Name
5,                                      !- PVWatts Version
5040.0,                                 !- DC System Capacity {W}
Premium,                                !- Module Type
FixedRoofMounted,                       !- Array Type
0.13043478260869568,                    !- System Losses
Surface,                                !- Array Geometry Type
,                                       !- Tilt Angle {deg}
,                                       !- Azimuth Angle {deg}
PV Surface 1,                           !- Surface Name
1.0;                                    !- Ground Coverage Ratio

ElectricLoadCenter:Generators,
PV Arrays,                              !- Name
PV Array (PV Surface 1),                !- Generator Name 1
Generator:PVWatts,                      !- Generator Object Type 1
5040.0,                                 !- Generator Rated Electric Power Output 1 {W}
PV Availability,                        !- Generator Availability Schedule Name 1
;                                       !- Generator Rated Thermal to Electrical Power Ratio 1

ElectricLoadCenter:Inverter:PVWatts,
PV Inverter,                            !- Name
1.15,                                   !- DC to AC Size Ratio
0.96;                                   !- Inverter Efficiency

ElectricLoadCenter:Distribution,
PV System,                              !- Name
PV Arrays,                              !- Generator List Name
Baseload,                               !- Generator Operation Scheme Type
,                                       !- Generator Demand Limit Scheme Purchased Electric Demand Limit {W}
,                                       !- Generator Track Schedule Name Scheme Schedule Name
,                                       !- Generator Track Meter Scheme Meter Name
DirectCurrentWithInverter,              !- Electrical Buss Type
PV Inverter;                            !- Inverter Name

And the following exist already in the in.idf file when the PVWatts system measure is not run.

ScheduleTypeLimits,
OnOff,                                  !- Name
0,                                      !- Lower Limit Value {BasedOnField A3}
1,                                      !- Upper Limit Value {BasedOnField A3}
Discrete,                               !- Numeric Type
availability;                           !- Unit Type

Shading:Building:Detailed,
PV Surface 1,                           !- Name
PV Transmittance (PV Surface 1),        !- Transmittance Schedule Name
,                                       !- Number of Vertices
8.9154, 5.69858725844097, 11.7348,      !- X,Y,Z Vertex 1 {m}
8.9154, 4.1148, 10.8204,                !- X,Y,Z Vertex 2 {m}
34.5186, 4.1148, 10.8204,               !- X,Y,Z Vertex 3 {m}
34.5186, 5.69858725844097, 11.7348;     !- X,Y,Z Vertex 4 {m}

ShadingProperty:Reflectance,
PV Surface 1,                           !- Shading Surface Name
0.3,                                    !- Diffuse Solar Reflectance of Unglazed Part of Shading Surface
0.3,                                    !- Diffuse Visible Reflectance of Unglazed Part of Shading Surface
0;                                      !- Fraction of Shading Surface That Is Glazed

So, as far as I can tell, all this "connects" correctly. Yet, when I run the model, it fails with the following output:

Initializing workflow.
Processing OpenStudio Measures.
Translating the OpenStudio Model to EnergyPlus.
Processing EnergyPlus Measures.
Applying AddPVWattsSystemWithOptionalStorageAndCosts
Result: Success
Initial Condition: Model started with 0 PV Arrays.
Final Condition: Model finished with 1 PV Arrays.
Starting Simulation.
EnergyPlus Starting
EnergyPlus, Version 9.5.0-de239b2e5f, YMD=2022.03.26 22:45
Initializing Response Factors
Calculating CTFs for "4 IN CONCRETE FLOOR"
Calculating CTFs for "6 IN CONCRETE FLOOR"
Calculating CTFs for "ACOUSTIC TILE CEILING"
Calculating CTFs for "DRY WALL"
Calculating CTFs for "IEAD ROOF (2018 IECC&#44 2A)"
Calculating CTFs for "NON-SWINGING DOOR (U-0.31)"
Calculating CTFs for "STEEL FRAME WALL (2018 IECC&#44 2A)"
Calculating CTFs for "STEEL JOIST FLOOR (2018 IECC&#44 2A)"
Calculating CTFs for "SWINGING DOOR (U-0.7)"
Initializing Window Optical Properties
Initializing Solar Calculations
Allocate Solar Module Arrays
Initializing Zone and Enclosure Report Variables
Initializing Surface (Shading) Report Variables
Computing Interior Solar Absorption Factors
Determining Shadowing Combinations
Computing Window Shade Absorption Factors
Proceeding with Initializing Solar Calculations
Initializing Surfaces
Initializing Outdoor environment for Surfaces
Setting up Surface Reporting Variables
Initializing Temperature and Flux Histories
Initializing Window Shading
Computing Interior Absorption Factors
Computing Interior Diffuse Solar Absorption Factors
Initializing Solar Heat Gains
Initializing Internal Heat Gains
Initializing Interior Solar Distribution
Initializing Interior Convection Coefficients
Gathering Information for Predefined Reporting
Completed Initializing Surface Heat Balance
Calculate Outside Surface Heat Balance
Calculate Inside Surface Heat Balance
Calculate Air Heat Balance
Initializing HVAC
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Log Error: fail(gcr, max=0.99): 1 time -1
Warming up
Log Error: fail(gcr, max=0.99): 1 time -1

And then that last line repeats indefinitely, until I hit the red x. It completely corrupts OpenStudioApplication-1.2.1. Even closing and restarting does not full restore it and I have to reboot my laptop to regain full control over OpenStudioApplication-1.2.1.

I first developed this measure for OpenStudio-2.9.1, and it worked fine there. This is the first time I am trying to use it under OpenStudioApplication-1.2.1. Am I missing something? Is this is a known issue?