Class: RunEnergyPlusMeasures
- Inherits:
-
OpenStudio::Workflow::Job
- Object
- OpenStudio::Workflow::Job
- RunEnergyPlusMeasures
- Defined in:
- lib/openstudio/workflow/jobs/run_ep_measures.rb
Overview
This class runs all EnergyPlus measures defined in the OSW
Instance Method Summary collapse
-
#initialize(input_adapter, output_adapter, registry, options = {}) ⇒ RunEnergyPlusMeasures
constructor
A new instance of RunEnergyPlusMeasures.
- #perform ⇒ Object
Methods included from OpenStudio::Workflow::Util::Model
#load_idf, #load_osm, #save_idf, #save_osm, #translate_to_energyplus
Methods included from OpenStudio::Workflow::Util::Measure
#add_result_measure_info, #apply_arguments, #apply_arguments_2, #apply_measure, #apply_measures, #validate_measures
Constructor Details
#initialize(input_adapter, output_adapter, registry, options = {}) ⇒ RunEnergyPlusMeasures
Returns a new instance of RunEnergyPlusMeasures.
44 45 46 |
# File 'lib/openstudio/workflow/jobs/run_ep_measures.rb', line 44 def initialize(input_adapter, output_adapter, registry, = {}) super end |
Instance Method Details
#perform ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/openstudio/workflow/jobs/run_ep_measures.rb', line 48 def perform @logger.debug "Calling #{__method__} in the #{self.class} class" # halted workflow is handled in apply_measures # Ensure output_attributes is initialized in the registry @registry.register(:output_attributes) { {} } unless @registry[:output_attributes] # Apply the EnergyPlus measures @options[:output_adapter] = @output_adapter @logger.info 'Beginning to execute EnergyPlus measures.' apply_measures('EnergyPlusMeasure'.to_MeasureType, @registry, @options) @logger.info('Finished applying EnergyPlus measures.') # Send the measure output attributes to the output adapter @logger.debug 'Communicating measure output attributes to the output adapter' @output_adapter.communicate_measure_attributes @registry[:output_attributes] # Save both the OSM and IDF if the :debug option is true return nil unless @options[:debug] @registry[:time_logger]&.start('Saving IDF') idf_name = save_idf(@registry[:model_idf], @registry[:root_dir]) @registry[:time_logger]&.stop('Saving IDF') @logger.debug "Saved IDF as #{idf_name}" nil end |