Class: FromHoneybeeSimulationParameter

Inherits:
OpenStudio::Measure::ModelMeasure
  • Object
show all
Defined in:
lib/measures/from_honeybee_simulation_parameter/measure.rb

Overview

start the measure

Instance Method Summary collapse

Instance Method Details

#arguments(model) ⇒ Object

define the arguments that the user will input



55
56
57
58
59
60
61
62
63
64
# File 'lib/measures/from_honeybee_simulation_parameter/measure.rb', line 55

def arguments(model)
  args = OpenStudio::Measure::OSArgumentVector.new

  # Make an argument for the ladybug json
  simulation_parameter_json = OpenStudio::Measure::OSArgument.makeStringArgument('simulation_parameter_json', true)
  simulation_parameter_json.setDisplayName('Path to the Honeybee SimulationParameter JSON file')
  args << simulation_parameter_json

  return args
end

#descriptionObject

human readable description



45
46
47
# File 'lib/measures/from_honeybee_simulation_parameter/measure.rb', line 45

def description
  return 'Add a JSON file of Honeybee Simulationtion Parameters to an OpenStudio Model.'
end

#modeler_descriptionObject

human readable description of modeling approach



50
51
52
# File 'lib/measures/from_honeybee_simulation_parameter/measure.rb', line 50

def modeler_description
  return 'Add a JSON file of Honeybee Simulationtion Parameters to an OpenStudio Model.'
end

#nameObject

human readable name



40
41
42
# File 'lib/measures/from_honeybee_simulation_parameter/measure.rb', line 40

def name
  return 'From Honeybee Simulation Parameter'
end

#run(model, runner, user_arguments) ⇒ Object

define what happens when the measure is run



67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'lib/measures/from_honeybee_simulation_parameter/measure.rb', line 67

def run(model, runner, user_arguments)
  super(model, runner, user_arguments)
  STDOUT.flush
  if !runner.validateUserArguments(arguments(model), user_arguments)
    return false
  end

  simulation_parameter_json = runner.getStringArgumentValue('simulation_parameter_json', user_arguments)

  if !File.exist?(simulation_parameter_json)
    runner.registerError("Cannot find file '#{simulation_parameter_json}'")
    return false
  end

  sim_par_object = Honeybee::SimulationParameter.read_from_disk(simulation_parameter_json)

  STDOUT.flush
  sim_par_object.to_openstudio_model(model)
  STDOUT.flush
  return true
end