honeybee_energy.simulation.parameter module¶
Complete set of EnergyPlus Simulation Settings.
- class honeybee_energy.simulation.parameter.SimulationParameter(output=None, run_period=None, timestep=6, simulation_control=None, shadow_calculation=None, sizing_parameter=None, north_angle=0, terrain_type='City')[source]¶
Bases:
object
Complete set of EnergyPlus Simulation Settings.
- Parameters:
output – A SimulationOutput that lists the desired outputs from the simulation and the format in which to report them. If None, no outputs will be requested. Default: None.
run_period – A RunPeriod object to describe the time period over which to run the simulation. Default: Run for the whole year starting on Sunday.
timestep – An integer for the number of timesteps per hour at which the calculation will be run. Default: 6.
simulation_control – A SimulationControl object that describes which types of calculations to run. Default: perform a sizing calculation but only run the simulation for the RunPeriod.
shadow_calculation – A ShadowCalculation object describing settings for the EnergyPlus Shadow Calculation. Default: Average over 30 days with FullInteriorAndExteriorWithReflections.
sizing_parameter – A SizingParameter object with criteria for sizing the heating and cooling system.
north_angle – North angle in degrees. A number between -360 and 360 for the counterclockwise difference between the North and the positive Y-axis in degrees. 90 is West and 270 is East (Default: 0).
terrain_type – Text for the terrain type in which the model sits. Choose from: ‘Ocean’, ‘Country’, ‘Suburbs’, ‘Urban’, ‘City’.(Default: ‘City’)
- Properties:
output
run_period
timestep
simulation_control
shadow_calculation
sizing_parameter
global_geometry_rules
north_angle
north_vector
terrain_type
- building_idf(identifier='Building')[source]¶
Get an IDF string for an IDF Building object.
- Parameters:
identifier – Text string for to be used as a unique identifier for the building object.
- classmethod from_dict(data)[source]¶
Create a SimulationParameter object from a dictionary.
- Parameters:
data – A SimulationParameter dictionary in following the format below.
{ "type": "SimulationParameter", "output": {}, # Honeybee SimulationOutput dictionary "run_period": {}, # Honeybee RunPeriod dictionary "timestep": 6, # Integer for the simulation timestep "simulation_control": {}, # Honeybee SimulationControl dictionary "shadow_calculation": {}, # Honeybee ShadowCalculation dictionary "sizing_parameter": {} # Honeybee SizingParameter dictionary }
- classmethod from_idf(idf_string)[source]¶
Create a SimulationParameter object from an EnergyPlus IDF text string.
- Parameters:
idf_string – A text string with all IDF objects that should be included in the resulting SimulationParameter object. Note that, unlike other from_idf methods throughout honeybee_energy, this method can have multiple IDF objects within the idf_string. Any object in the idf_string that is not relevant to SimulationParameter will be ignored by this method. So the input idf_string can simply be the entire file contents of an IDF.
- to_idf(identifier='Building')[source]¶
Get an EnergyPlus string representation of the SimulationParameter.
Note that this string is a concatenation of the IDF strings that make up the SimulationParameter (ie. RunPeriod, SimulationControl, etc.).
- Parameters:
identifier – Text string for to be used as a unique identifier for the IDF Building object.
!- ========================================== !- ========= SIMULATION PARAMETERS ========= !- ========================================== OutputControl:Table:Style, CommaAndHTML, !- column separator None; !- unit conversion Output:Variable, *, !- key value Zone Ideal Loads Supply Air Total Cooling Energy, !- name Hourly; !- frequency Output:Variable, *, !- key value Zone Ideal Loads Supply Air Total Heating Energy, !- name Hourly; !- frequency Output:Table:SummaryReports, AllSummary; !- report 0 Output:SQLite, SimpleAndTabular; !- option type Output:VariableDictionary, IDF, !- key field Unsorted; !- sort option OutputControl:ReportingTolerances, 1.11, !- heating unmet setpoint tolerance 1.11; !- cooling unmet setpoint tolerance SimulationControl, Yes, !- do zone sizing Yes, !- do system sizing Yes, !- do plant sizing No, !- run for sizing periods Yes; !- run for run periods ShadowCalculation, PolygonClipping, !- calculation method Periodic, !- calculation update method 30, !- calculation frequency 15000; !- maximum figures Timestep, 6; !- timesteps per hour RunPeriod, CustomRunPeriod, !- name 1, !- start month 1, !- start day 2017, !- start year 12, !- end month 31, !- end day 2017, !- end year Sunday, !- start day of week No, !- use weather file holidays No, !- use weather file daylight savings No, !- apply weekend holiday Yes, !- use epw rain Yes; !- use epw snow Sizing:Parameters, 1.25, !- heating factor 1.15; !- cooling factor GlobalGeometryRules, UpperLeftCorner, !- starting vertex position Counterclockwise, !- vertex entry direction Relative; !- coordinate system Building, Building, !- name 0.0, !- clockwise north axis City, !- terrain , !- loads convergence tolerance , !- temperature convergence tolerance FullExteriorWithReflections; !- solar distribution Site:WaterMainsTemperature, CorrelationFromWeatherFile; !- calculation method
- TERRAIN_TYPES = ('Ocean', 'Country', 'Suburbs', 'Urban', 'City')¶
- VALIDTIMESTEPS = (1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60)¶
- property global_geometry_rules¶
Get an IDF string for the official honeybee global geometry rules.
Specifically, these are counter-clockwise vertices starting from the upper left corner of the surface. The output string is the following:
GlobalGeometryRules, UpperLeftCorner, !- starting vertex position Counterclockwise, !- vertex entry direction Relative; !- coordinate system
- property north_angle¶
Get or set a number between -360 and 360 for the north direction in degrees.
This is the counterclockwise difference between the North and the positive Y-axis. 90 is West and 270 is East (Default: 0). Note that this is different than the convention used in EnergyPlus, which uses clockwise difference instead of counterclockwise difference.
- property north_vector¶
Get or set a ladybug_geometry Vector2D for the north direction.
- property output¶
Get or set a SimulationOutput object for the outputs from the simulation.
- property run_period¶
Get or set a RunPeriod object for the time period to run the simulation.
- property shadow_calculation¶
Get or set a ShadowCalculation object with settings for the shadow calculation.
- property simulation_control¶
Get or set a SimulationControl object for which types of calculations to run.
- property sizing_parameter¶
Get or set a SizingParameter object with factors for the peak loads.
- property terrain_type¶
Get or set a text string for the terrain in which the model sits.
This is used to determine the wind profile over the height of the building. Default is ‘City’. Choose from the following options:
Ocean
Country
Suburbs
Urban
City
- property timestep¶
Get or set a integer for the number of simulation timesteps per hour.