lbt-measures 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.github/workflows/ci.yaml +63 -0
- data/.gitignore +34 -0
- data/.releaserc.json +7 -0
- data/Gemfile +11 -0
- data/LICENSE.md +23 -0
- data/README.md +13 -0
- data/lbt-measures.gemspec +31 -0
- data/lib/efficiency_standard/LICENSE.md +27 -0
- data/lib/efficiency_standard/README.md +32 -0
- data/lib/efficiency_standard/README.md.erb +42 -0
- data/lib/efficiency_standard/measure.rb +142 -0
- data/lib/efficiency_standard/measure.xml +70 -0
- data/lib/inject_idf/LICENSE.md +27 -0
- data/lib/inject_idf/README.md +32 -0
- data/lib/inject_idf/README.md.erb +42 -0
- data/lib/inject_idf/measure.rb +107 -0
- data/lib/inject_idf/measure.xml +72 -0
- data/lib/openstudio_results/LICENSE.md +13 -0
- data/lib/openstudio_results/README.md +266 -0
- data/lib/openstudio_results/README.md.erb +46 -0
- data/lib/openstudio_results/measure.rb +384 -0
- data/lib/openstudio_results/measure.xml +1546 -0
- data/lib/openstudio_results/resources/Siz.AirConditionerVariableRefrigerantFlow.rb +82 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVAC.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitaryHeatCoolVAVChangeoverBypass.rb +66 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitaryHeatPumpAirToAir.rb +66 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitaryHeatPumpAirToAirMultiSpeed.rb +108 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitarySystem.rb +84 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalDualDuctVAV.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctConstantVolumeCooledBeam.rb +40 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctConstantVolumeFourPipeInduction.rb +84 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctConstantVolumeReheat.rb +45 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctParallelPIUReheat.rb +46 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctSeriesPIUReheat.rb +46 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctUncontrolled.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVHeatAndCoolNoReheat.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVHeatAndCoolReheat.rb +45 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVNoReheat.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVReheat.rb +45 -0
- data/lib/openstudio_results/resources/Siz.BoilerHotWater.rb +46 -0
- data/lib/openstudio_results/resources/Siz.BoilerSteam.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ChillerAbsorption.rb +40 -0
- data/lib/openstudio_results/resources/Siz.ChillerAbsorptionIndirect.rb +40 -0
- data/lib/openstudio_results/resources/Siz.ChillerElectricEIR.rb +69 -0
- data/lib/openstudio_results/resources/Siz.ChillerHeaterPerformanceElectricEIR.rb +52 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXMultiSpeed.rb +32 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXMultiSpeedStageData.rb +49 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXSingleSpeed.rb +47 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXTwoSpeed.rb +50 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXTwoStageWithHumidityControlMode.rb +100 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXVariableRefrigerantFlow.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXVariableSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXVariableSpeedSpeedData.rb +13 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingLowTempRadiantVarFlow.rb +18 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWater.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWaterToAirHeatPumpEquationFit.rb +63 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit.rb +67 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFitSpeedData.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXMultiSpeed.rb +32 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXMultiSpeedStageData.rb +46 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXSingleSpeed.rb +46 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXVariableRefrigerantFlow.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXVariableSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXVariableSpeedSpeedData.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDesuperheater.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingElectric.rb +29 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingGas.rb +29 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingGasMultiStage.rb +14 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingGasMultiStageStageData.rb +29 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingLowTempRadiantVarFlow.rb +18 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWater.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterBaseboard.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterBaseboardRadiant.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterToAirHeatPumpEquationFit.rb +63 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterToAirHeatPumpVariableSpeedEquationFit.rb +67 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterToAirHeatPumpVariableSpeedEquationFitSpeedData.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilPerformanceDXCooling.rb +47 -0
- data/lib/openstudio_results/resources/Siz.CoilSystemCoolingDXHeatExchangerAssisted.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilSystemCoolingWaterHeatExchangerAssisted.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilWaterHeatingAirToWaterHeatPump.rb +46 -0
- data/lib/openstudio_results/resources/Siz.CoilWaterHeatingAirToWaterHeatPumpWrapped.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilWaterHeatingDesuperheater.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ControllerOutdoorAir.rb +23 -0
- data/lib/openstudio_results/resources/Siz.CoolingTowerSingleSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoolingTowerTwoSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoolingTowerVariableSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.DistrictCooling.rb +23 -0
- data/lib/openstudio_results/resources/Siz.DistrictHeating.rb +23 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterInverterLookUpTable.rb +17 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterInverterSimple.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterStorageConverter.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterStorageSimple.rb +13 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeCoolerDirectResearchSpecial.rb +29 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeCoolerIndirectResearchSpecial.rb +32 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeFluidCoolerSingleSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeFluidCoolerTwoSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.FanConstantVolume.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanOnOff.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanSystemModel.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanVariableVolume.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanZoneExhaust.rb +13 -0
- data/lib/openstudio_results/resources/Siz.FluidCoolerSingleSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.FluidCoolerTwoSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.GeneratorFuelCellElectricalStorage.rb +13 -0
- data/lib/openstudio_results/resources/Siz.GeneratorFuelCellInverter.rb +12 -0
- data/lib/openstudio_results/resources/Siz.GeneratorFuelCellPowerModule.rb +12 -0
- data/lib/openstudio_results/resources/Siz.GeneratorMicroTurbine.rb +12 -0
- data/lib/openstudio_results/resources/Siz.GeneratorMicroTurbineHeatRecovery.rb +12 -0
- data/lib/openstudio_results/resources/Siz.HVACComponent.rb +127 -0
- data/lib/openstudio_results/resources/Siz.HeaderedPumpsConstantSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.HeaderedPumpsVariableSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.HeatExchangerAirToAirSensibleAndLatent.rb +36 -0
- data/lib/openstudio_results/resources/Siz.HeatExchangerFluidToFluid.rb +23 -0
- data/lib/openstudio_results/resources/Siz.HeatPumpWaterToWaterEquationFitCooling.rb +40 -0
- data/lib/openstudio_results/resources/Siz.HeatPumpWaterToWaterEquationFitHeating.rb +40 -0
- data/lib/openstudio_results/resources/Siz.HumidifierSteamElectric.rb +23 -0
- data/lib/openstudio_results/resources/Siz.Model.rb +134 -0
- data/lib/openstudio_results/resources/Siz.ModelObject.rb +40 -0
- data/lib/openstudio_results/resources/Siz.PhotovoltaicPerformanceSimple.rb +12 -0
- data/lib/openstudio_results/resources/Siz.PlantComponentTemperatureSource.rb +23 -0
- data/lib/openstudio_results/resources/Siz.PlantLoop.rb +40 -0
- data/lib/openstudio_results/resources/Siz.PumpConstantSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.PumpVariableSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.RefrigerationSecondarySystem.rb +12 -0
- data/lib/openstudio_results/resources/Siz.RefrigerationSystem.rb +12 -0
- data/lib/openstudio_results/resources/Siz.RefrigerationTranscriticalSystem.rb +13 -0
- data/lib/openstudio_results/resources/Siz.SizingSystem.rb +57 -0
- data/lib/openstudio_results/resources/Siz.SolarCollectorFlatPlatePhotovoltaicThermal.rb +23 -0
- data/lib/openstudio_results/resources/Siz.SolarCollectorPerformancePhotovoltaicThermalSimple.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ThermalStorageChilledWaterStratified.rb +30 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterHeatPump.rb +29 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterHeatPumpWrappedCondenser.rb +12 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterMixed.rb +48 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterStratified.rb +48 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardConvectiveElectric.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardConvectiveWater.rb +28 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardRadiantConvectiveElectric.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardRadiantConvectiveWater.rb +28 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACEnergyRecoveryVentilator.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACFourPipeFanCoil.rb +72 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACHighTemperatureRadiant.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACIdealLoadsAirSystem.rb +64 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACLowTempRadiantConstFlow.rb +20 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACLowTempRadiantVarFlow.rb +38 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACPackagedTerminalAirConditioner.rb +91 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACPackagedTerminalHeatPump.rb +91 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACTerminalUnitVariableRefrigerantFlow.rb +122 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACUnitHeater.rb +46 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACUnitVentilator.rb +98 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACWaterToAirHeatPump.rb +91 -0
- data/lib/openstudio_results/resources/Siz.ZoneVentilationDesignFlowRate.rb +13 -0
- data/lib/openstudio_results/resources/bootstrap.min.css +5 -0
- data/lib/openstudio_results/resources/bootstrap.min.js +6 -0
- data/lib/openstudio_results/resources/d3.min.js +5 -0
- data/lib/openstudio_results/resources/dimple.v2.1.2.min.js +3 -0
- data/lib/openstudio_results/resources/jquery.min.js +6 -0
- data/lib/openstudio_results/resources/os_lib_reporting.rb +4891 -0
- data/lib/openstudio_results/resources/report.html.erb +501 -0
- data/lib/view_data/LICENSE.md +13 -0
- data/lib/view_data/README.md +72 -0
- data/lib/view_data/README.md.erb +42 -0
- data/lib/view_data/measure.rb +449 -0
- data/lib/view_data/measure.xml +202 -0
- data/lib/view_data/resources/js/TweenLite.2.1.3.min.js +12 -0
- data/lib/view_data/resources/js/dat.gui.0.7.9.min.js +13 -0
- data/lib/view_data/resources/js/three.orbitcontrols.js +706 -0
- data/lib/view_data/resources/js/three.r98.min.js +964 -0
- data/lib/view_data/resources/report.html.in +1577 -0
- data/lib/view_data/resources/va3c.rb +996 -0
- metadata +227 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# All rights reserved.
|
|
4
|
+
# Redistribution and use in source and binary forms, with or without
|
|
5
|
+
# modification, are permitted provided that the following conditions are met:
|
|
6
|
+
#
|
|
7
|
+
# (1) Redistributions of source code must retain the above copyright notice,
|
|
8
|
+
# this list of conditions and the following disclaimer.
|
|
9
|
+
#
|
|
10
|
+
# (2) Redistributions in binary form must reproduce the above copyright notice,
|
|
11
|
+
# this list of conditions and the following disclaimer in the documentation
|
|
12
|
+
# and/or other materials provided with the distribution.
|
|
13
|
+
#
|
|
14
|
+
# (3) Neither the name of the copyright holder nor the names of any contributors
|
|
15
|
+
# may be used to endorse or promote products derived from this software without
|
|
16
|
+
# specific prior written permission from the respective party.
|
|
17
|
+
#
|
|
18
|
+
# (4) Other than as required in clauses (1) and (2), distributions in any form
|
|
19
|
+
# of modifications or other derivative works may not use the "OpenStudio"
|
|
20
|
+
# trademark, "OS", "os", or any other confusingly similar designation without
|
|
21
|
+
# specific prior written permission from Alliance for Sustainable Energy, LLC.
|
|
22
|
+
#
|
|
23
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS
|
|
24
|
+
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
|
25
|
+
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
26
|
+
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE
|
|
27
|
+
# UNITED STATES GOVERNMENT, OR THE UNITED STATES DEPARTMENT OF ENERGY, NOR ANY OF
|
|
28
|
+
# THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
|
29
|
+
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
|
30
|
+
# OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
31
|
+
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
32
|
+
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
33
|
+
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
34
|
+
# *******************************************************************************
|
|
35
|
+
|
|
36
|
+
# see the URL below for information on how to write OpenStudio measures
|
|
37
|
+
# http://openstudio.nrel.gov/openstudio-measure-writing-guide
|
|
38
|
+
|
|
39
|
+
# see your EnergyPlus installation or the URL below for information on EnergyPlus objects
|
|
40
|
+
# http://apps1.eere.energy.gov/buildings/energyplus/pdfs/inputoutputreference.pdf
|
|
41
|
+
|
|
42
|
+
# see the URL below for information on using life cycle cost objects in OpenStudio
|
|
43
|
+
# http://openstudio.nrel.gov/openstudio-life-cycle-examples
|
|
44
|
+
|
|
45
|
+
# see the URL below for access to C++ documentation on workspace objects (click on "workspace" in the main window to view workspace objects)
|
|
46
|
+
# http://openstudio.nrel.gov/sites/openstudio.nrel.gov/files/nv_data/cpp_documentation_it/utilities/html/idf_page.html
|
|
47
|
+
|
|
48
|
+
# start the measure
|
|
49
|
+
class InjectIDFObjects < OpenStudio::Measure::EnergyPlusMeasure
|
|
50
|
+
# define the name that a user will see, this method may be deprecated as
|
|
51
|
+
# the display name in PAT comes from the name field in measure.xml
|
|
52
|
+
def name
|
|
53
|
+
return ' Inject IDF Objects'
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# define the arguments that the user will input
|
|
57
|
+
def arguments(workspace)
|
|
58
|
+
args = OpenStudio::Measure::OSArgumentVector.new
|
|
59
|
+
|
|
60
|
+
# make an argument for external idf
|
|
61
|
+
source_idf_path = OpenStudio::Measure::OSArgument.makeStringArgument('source_idf_path', true)
|
|
62
|
+
source_idf_path.setDisplayName('External IDF File Name')
|
|
63
|
+
source_idf_path.setDescription('Name of the IDF file to inject objects from. This is the filename with the extension (e.g. MyModel.idf). Optionally this can inclucde the full file path, but for most use cases should just be file name.')
|
|
64
|
+
args << source_idf_path
|
|
65
|
+
|
|
66
|
+
return args
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# define what happens when the measure is run
|
|
70
|
+
def run(workspace, runner, user_arguments)
|
|
71
|
+
super(workspace, runner, user_arguments)
|
|
72
|
+
|
|
73
|
+
# use the built-in error checking
|
|
74
|
+
if !runner.validateUserArguments(arguments(workspace), user_arguments)
|
|
75
|
+
return false
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# assign the user inputs to variables
|
|
79
|
+
source_idf_path = runner.getStringArgumentValue('source_idf_path', user_arguments)
|
|
80
|
+
|
|
81
|
+
# report initial condition
|
|
82
|
+
runner.registerInitialCondition("The initial IDF file had #{workspace.objects.size} objects.")
|
|
83
|
+
|
|
84
|
+
# find source_idf_path
|
|
85
|
+
osw_file = runner.workflow.findFile(source_idf_path)
|
|
86
|
+
if osw_file.is_initialized
|
|
87
|
+
source_idf_path = osw_file.get.to_s
|
|
88
|
+
else
|
|
89
|
+
runner.registerError("Did not find #{source_idf_path} in paths described in OSW file.")
|
|
90
|
+
return false
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
# load IDF
|
|
94
|
+
source_idf = OpenStudio::IdfFile.load(OpenStudio::Path.new(source_idf_path)).get
|
|
95
|
+
|
|
96
|
+
# add everything from the file
|
|
97
|
+
workspace.addObjects(source_idf.objects)
|
|
98
|
+
|
|
99
|
+
# report final condition
|
|
100
|
+
runner.registerFinalCondition("The final IDF file had #{workspace.objects.size} objects.")
|
|
101
|
+
|
|
102
|
+
return true
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# this allows the measure to be use by the application
|
|
107
|
+
InjectIDFObjects.new.registerWithApplication
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
<?xml version="1.0"?>
|
|
2
|
+
<measure>
|
|
3
|
+
<schema_version>3.0</schema_version>
|
|
4
|
+
<name>inject_idf_objects</name>
|
|
5
|
+
<uid>f567dfbc-d280-4d68-b061-019ab2630cd0</uid>
|
|
6
|
+
<version_id>27bc8e62-185b-4670-b5ce-548ee42ec4e7</version_id>
|
|
7
|
+
<version_modified>20210406T220305Z</version_modified>
|
|
8
|
+
<xml_checksum>A8BAB05F</xml_checksum>
|
|
9
|
+
<class_name>InjectIDFObjects</class_name>
|
|
10
|
+
<display_name>Inject IDF Objects</display_name>
|
|
11
|
+
<description>This measure allows you to inject IDF objects into an OSM generated IDF prior to passing the IDF off to EnergyPlus.</description>
|
|
12
|
+
<modeler_description>This provides a stepping stone between exporting an IDF from OpenStudio and hand editing the IDF and writing fully functional OpenStudio EnergyPlus measures.
|
|
13
|
+
|
|
14
|
+
This measure works for when you just need to add new IDF objects. If you need to interact with or alter IDF objects made by the OpenStudio forward translator, you will want to write an EnergyPlus measure wtih more use-case specific logic.</modeler_description>
|
|
15
|
+
<arguments>
|
|
16
|
+
<argument>
|
|
17
|
+
<name>source_idf_path</name>
|
|
18
|
+
<display_name>External IDF File Name</display_name>
|
|
19
|
+
<type>String</type>
|
|
20
|
+
<required>true</required>
|
|
21
|
+
<model_dependent>false</model_dependent>
|
|
22
|
+
</argument>
|
|
23
|
+
</arguments>
|
|
24
|
+
<outputs />
|
|
25
|
+
<provenances />
|
|
26
|
+
<tags>
|
|
27
|
+
<tag>Whole Building.Space Types</tag>
|
|
28
|
+
</tags>
|
|
29
|
+
<attributes>
|
|
30
|
+
<attribute>
|
|
31
|
+
<name>Measure Type</name>
|
|
32
|
+
<value>EnergyPlusMeasure</value>
|
|
33
|
+
<datatype>string</datatype>
|
|
34
|
+
</attribute>
|
|
35
|
+
<attribute>
|
|
36
|
+
<name>Uses SketchUp API</name>
|
|
37
|
+
<value>false</value>
|
|
38
|
+
<datatype>boolean</datatype>
|
|
39
|
+
</attribute>
|
|
40
|
+
</attributes>
|
|
41
|
+
<files>
|
|
42
|
+
<file>
|
|
43
|
+
<filename>README.md.erb</filename>
|
|
44
|
+
<filetype>erb</filetype>
|
|
45
|
+
<usage_type>readmeerb</usage_type>
|
|
46
|
+
<checksum>703C9964</checksum>
|
|
47
|
+
</file>
|
|
48
|
+
<file>
|
|
49
|
+
<filename>README.md</filename>
|
|
50
|
+
<filetype>md</filetype>
|
|
51
|
+
<usage_type>readme</usage_type>
|
|
52
|
+
<checksum>70F4784D</checksum>
|
|
53
|
+
</file>
|
|
54
|
+
<file>
|
|
55
|
+
<filename>LICENSE.md</filename>
|
|
56
|
+
<filetype>md</filetype>
|
|
57
|
+
<usage_type>license</usage_type>
|
|
58
|
+
<checksum>64FFEBDE</checksum>
|
|
59
|
+
</file>
|
|
60
|
+
<file>
|
|
61
|
+
<version>
|
|
62
|
+
<software_program>OpenStudio</software_program>
|
|
63
|
+
<identifier>1.6.3</identifier>
|
|
64
|
+
<min_compatible>1.6.3</min_compatible>
|
|
65
|
+
</version>
|
|
66
|
+
<filename>measure.rb</filename>
|
|
67
|
+
<filetype>rb</filetype>
|
|
68
|
+
<usage_type>script</usage_type>
|
|
69
|
+
<checksum>39164A78</checksum>
|
|
70
|
+
</file>
|
|
71
|
+
</files>
|
|
72
|
+
</measure>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
OpenStudio(R), Copyright (c) 2008, 2024 Alliance for Sustainable Energy, LLC.
|
|
2
|
+
|
|
3
|
+
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
|
4
|
+
|
|
5
|
+
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
|
6
|
+
|
|
7
|
+
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
|
8
|
+
|
|
9
|
+
3. Redistribution of this software, without modification, must refer to the software by the same designation. Redistribution of a modified version of this software (i) may not refer to the modified version by the same designation, or by any confusingly similar designation, and (ii) must refer to the underlying software originally provided by Alliance as “OpenStudio®”. Except to comply with the foregoing, the term “OpenStudio®”, or any confusingly similar designation may not be used to refer to any modified version of this software or any modified version of the underlying software originally provided by Alliance without the prior written consent of Alliance.
|
|
10
|
+
|
|
11
|
+
4. The name of the copyright holder(s), any contributors, the United States Government, the United States Department of Energy, or any of their employees may not be used to endorse or promote products derived from this software without specific prior written permission from the respective party.
|
|
12
|
+
|
|
13
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE UNITED STATES GOVERNMENT, OR THE UNITED STATES DEPARTMENT OF ENERGY, NOR ANY OF THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
###### (Automatically generated documentation)
|
|
4
|
+
|
|
5
|
+
# OpenStudio Results
|
|
6
|
+
|
|
7
|
+
## Description
|
|
8
|
+
This measure creates high level tables and charts pulling both from model inputs and EnergyPlus results. It has building level information as well as detail on space types, thermal zones, HVAC systems, envelope characteristics, and economics. Click the heading above a chart to view a table of the chart data.
|
|
9
|
+
|
|
10
|
+
## Modeler Description
|
|
11
|
+
For the most part consumption data comes from the tabular EnergyPlus results, however there are a few requests added for time series results. Space type and loop details come from the OpenStudio model. The code for this is modular, making it easy to use as a template for your own custom reports. The structure of the report uses bootstrap, and the graphs use dimple js. The new measure warning section will show warnings generated by upstream measures. It will not show forward translation warnings, EnergyPlus warnings, or warnings that might be reported by this measure.
|
|
12
|
+
|
|
13
|
+
## Measure Type
|
|
14
|
+
ReportingMeasure
|
|
15
|
+
|
|
16
|
+
## Taxonomy
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## Arguments
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Unit System
|
|
23
|
+
IP = Inch Pound, SI = International System, OS = OpenStudio
|
|
24
|
+
**Name:** units,
|
|
25
|
+
**Type:** Choice,
|
|
26
|
+
**Units:** ,
|
|
27
|
+
**Required:** true,
|
|
28
|
+
**Model Dependent:** false
|
|
29
|
+
|
|
30
|
+
### Model Summary
|
|
31
|
+
|
|
32
|
+
**Name:** building_summary_section,
|
|
33
|
+
**Type:** Boolean,
|
|
34
|
+
**Units:** ,
|
|
35
|
+
**Required:** true,
|
|
36
|
+
**Model Dependent:** false
|
|
37
|
+
|
|
38
|
+
### Annual Overview
|
|
39
|
+
|
|
40
|
+
**Name:** annual_overview_section,
|
|
41
|
+
**Type:** Boolean,
|
|
42
|
+
**Units:** ,
|
|
43
|
+
**Required:** true,
|
|
44
|
+
**Model Dependent:** false
|
|
45
|
+
|
|
46
|
+
### Monthly Overview
|
|
47
|
+
|
|
48
|
+
**Name:** monthly_overview_section,
|
|
49
|
+
**Type:** Boolean,
|
|
50
|
+
**Units:** ,
|
|
51
|
+
**Required:** true,
|
|
52
|
+
**Model Dependent:** false
|
|
53
|
+
|
|
54
|
+
### Utility Bills/Rates
|
|
55
|
+
|
|
56
|
+
**Name:** utility_bills_rates_section,
|
|
57
|
+
**Type:** Boolean,
|
|
58
|
+
**Units:** ,
|
|
59
|
+
**Required:** true,
|
|
60
|
+
**Model Dependent:** false
|
|
61
|
+
|
|
62
|
+
### Envelope Summary
|
|
63
|
+
|
|
64
|
+
**Name:** envelope_section_section,
|
|
65
|
+
**Type:** Boolean,
|
|
66
|
+
**Units:** ,
|
|
67
|
+
**Required:** true,
|
|
68
|
+
**Model Dependent:** false
|
|
69
|
+
|
|
70
|
+
### Space Type Breakdown
|
|
71
|
+
|
|
72
|
+
**Name:** space_type_breakdown_section,
|
|
73
|
+
**Type:** Boolean,
|
|
74
|
+
**Units:** ,
|
|
75
|
+
**Required:** true,
|
|
76
|
+
**Model Dependent:** false
|
|
77
|
+
|
|
78
|
+
### Space Type Summary
|
|
79
|
+
|
|
80
|
+
**Name:** space_type_details_section,
|
|
81
|
+
**Type:** Boolean,
|
|
82
|
+
**Units:** ,
|
|
83
|
+
**Required:** true,
|
|
84
|
+
**Model Dependent:** false
|
|
85
|
+
|
|
86
|
+
### Interior Lighting Summary
|
|
87
|
+
|
|
88
|
+
**Name:** interior_lighting_section,
|
|
89
|
+
**Type:** Boolean,
|
|
90
|
+
**Units:** ,
|
|
91
|
+
**Required:** true,
|
|
92
|
+
**Model Dependent:** false
|
|
93
|
+
|
|
94
|
+
### Plug Loads Summary
|
|
95
|
+
|
|
96
|
+
**Name:** plug_loads_section,
|
|
97
|
+
**Type:** Boolean,
|
|
98
|
+
**Units:** ,
|
|
99
|
+
**Required:** true,
|
|
100
|
+
**Model Dependent:** false
|
|
101
|
+
|
|
102
|
+
### Exterior Lighting
|
|
103
|
+
|
|
104
|
+
**Name:** exterior_light_section,
|
|
105
|
+
**Type:** Boolean,
|
|
106
|
+
**Units:** ,
|
|
107
|
+
**Required:** true,
|
|
108
|
+
**Model Dependent:** false
|
|
109
|
+
|
|
110
|
+
### Water Use Equipment
|
|
111
|
+
|
|
112
|
+
**Name:** water_use_section,
|
|
113
|
+
**Type:** Boolean,
|
|
114
|
+
**Units:** ,
|
|
115
|
+
**Required:** true,
|
|
116
|
+
**Model Dependent:** false
|
|
117
|
+
|
|
118
|
+
### HVAC Load Profiles
|
|
119
|
+
|
|
120
|
+
**Name:** hvac_load_profile,
|
|
121
|
+
**Type:** Boolean,
|
|
122
|
+
**Units:** ,
|
|
123
|
+
**Required:** true,
|
|
124
|
+
**Model Dependent:** false
|
|
125
|
+
|
|
126
|
+
### Zone Conditions
|
|
127
|
+
|
|
128
|
+
**Name:** zone_condition_section,
|
|
129
|
+
**Type:** Boolean,
|
|
130
|
+
**Units:** ,
|
|
131
|
+
**Required:** true,
|
|
132
|
+
**Model Dependent:** false
|
|
133
|
+
|
|
134
|
+
### Zone Overview
|
|
135
|
+
|
|
136
|
+
**Name:** zone_summary_section,
|
|
137
|
+
**Type:** Boolean,
|
|
138
|
+
**Units:** ,
|
|
139
|
+
**Required:** true,
|
|
140
|
+
**Model Dependent:** false
|
|
141
|
+
|
|
142
|
+
### Zone Equipment Detail
|
|
143
|
+
|
|
144
|
+
**Name:** zone_equipment_detail_section,
|
|
145
|
+
**Type:** Boolean,
|
|
146
|
+
**Units:** ,
|
|
147
|
+
**Required:** true,
|
|
148
|
+
**Model Dependent:** false
|
|
149
|
+
|
|
150
|
+
### Air Loops Detail
|
|
151
|
+
|
|
152
|
+
**Name:** air_loops_detail_section,
|
|
153
|
+
**Type:** Boolean,
|
|
154
|
+
**Units:** ,
|
|
155
|
+
**Required:** true,
|
|
156
|
+
**Model Dependent:** false
|
|
157
|
+
|
|
158
|
+
### Plant Loops Detail
|
|
159
|
+
|
|
160
|
+
**Name:** plant_loops_detail_section,
|
|
161
|
+
**Type:** Boolean,
|
|
162
|
+
**Units:** ,
|
|
163
|
+
**Required:** true,
|
|
164
|
+
**Model Dependent:** false
|
|
165
|
+
|
|
166
|
+
### Outdoor Air
|
|
167
|
+
|
|
168
|
+
**Name:** outdoor_air_section,
|
|
169
|
+
**Type:** Boolean,
|
|
170
|
+
**Units:** ,
|
|
171
|
+
**Required:** true,
|
|
172
|
+
**Model Dependent:** false
|
|
173
|
+
|
|
174
|
+
### Cash Flow
|
|
175
|
+
|
|
176
|
+
**Name:** cost_summary_section,
|
|
177
|
+
**Type:** Boolean,
|
|
178
|
+
**Units:** ,
|
|
179
|
+
**Required:** true,
|
|
180
|
+
**Model Dependent:** false
|
|
181
|
+
|
|
182
|
+
### Site and Source Summary
|
|
183
|
+
|
|
184
|
+
**Name:** source_energy_section,
|
|
185
|
+
**Type:** Boolean,
|
|
186
|
+
**Units:** ,
|
|
187
|
+
**Required:** true,
|
|
188
|
+
**Model Dependent:** false
|
|
189
|
+
|
|
190
|
+
### Schedule Overview
|
|
191
|
+
|
|
192
|
+
**Name:** schedules_overview_section,
|
|
193
|
+
**Type:** Boolean,
|
|
194
|
+
**Units:** ,
|
|
195
|
+
**Required:** true,
|
|
196
|
+
**Model Dependent:** false
|
|
197
|
+
|
|
198
|
+
### Measure Warnings
|
|
199
|
+
|
|
200
|
+
**Name:** measure_warning_section,
|
|
201
|
+
**Type:** Boolean,
|
|
202
|
+
**Units:** ,
|
|
203
|
+
**Required:** true,
|
|
204
|
+
**Model Dependent:** false
|
|
205
|
+
|
|
206
|
+
### Report monthly fuel and enduse breakdown to registerValue
|
|
207
|
+
This argument does not effect HTML file, instead it makes data from individal cells of monthly tables avaiable for machine readable values in the resulting OpenStudio Workflow file.
|
|
208
|
+
**Name:** reg_monthly_details,
|
|
209
|
+
**Type:** Boolean,
|
|
210
|
+
**Units:** ,
|
|
211
|
+
**Required:** true,
|
|
212
|
+
**Model Dependent:** false
|
|
213
|
+
|
|
214
|
+
### Add EnergyPlus Summary Reports?
|
|
215
|
+
|
|
216
|
+
**Name:** energyplus_reports,
|
|
217
|
+
**Type:** Boolean,
|
|
218
|
+
**Units:** ,
|
|
219
|
+
**Required:** true,
|
|
220
|
+
**Model Dependent:** false
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
## Outputs
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
electricity_ip, natural_gas_ip, additional_fuel_ip, district_heating_ip, district_cooling_ip, total_site_eui, eui, net_site_energy, annual_peak_electric_demand, unmet_hours_during_occupied_cooling, unmet_hours_during_occupied_heating, first_year_capital_cost, annual_utility_cost, total_lifecycle_cost, number_of_measures_with_warnings, number_warnings
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
## Contributors
|
|
265
|
+
- Primary development by the commercial buildings team at NREL
|
|
266
|
+
- Support for SI units reporting developed by Julien Marrec with EffiBEM and Julien Thirifays with IGRETEC
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<%#= README.md.erb is used to auto-generate README.md. %>
|
|
2
|
+
<%#= To manually maintain README.md throw away README.md.erb and manually edit README.md %>
|
|
3
|
+
###### (Automatically generated documentation)
|
|
4
|
+
|
|
5
|
+
# <%= name %>
|
|
6
|
+
|
|
7
|
+
## Description
|
|
8
|
+
<%= description %>
|
|
9
|
+
|
|
10
|
+
## Modeler Description
|
|
11
|
+
<%= modelerDescription %>
|
|
12
|
+
|
|
13
|
+
## Measure Type
|
|
14
|
+
<%= measureType %>
|
|
15
|
+
|
|
16
|
+
## Taxonomy
|
|
17
|
+
<%= taxonomy %>
|
|
18
|
+
|
|
19
|
+
## Arguments
|
|
20
|
+
|
|
21
|
+
<% arguments.each do |argument| %>
|
|
22
|
+
### <%= argument[:display_name] %>
|
|
23
|
+
<%= argument[:description] %>
|
|
24
|
+
**Name:** <%= argument[:name] %>,
|
|
25
|
+
**Type:** <%= argument[:type] %>,
|
|
26
|
+
**Units:** <%= argument[:units] %>,
|
|
27
|
+
**Required:** <%= argument[:required] %>,
|
|
28
|
+
**Model Dependent:** <%= argument[:model_dependent] %>
|
|
29
|
+
<% end %>
|
|
30
|
+
|
|
31
|
+
<% if arguments.size == 0 %>
|
|
32
|
+
<%= "This measure does not have any user arguments" %>
|
|
33
|
+
<% end %>
|
|
34
|
+
|
|
35
|
+
<% if outputs.size > 0 %>
|
|
36
|
+
## Outputs
|
|
37
|
+
<% output_names = [] %>
|
|
38
|
+
<% outputs.each do |output| %>
|
|
39
|
+
<% output_names << output[:display_name] %>
|
|
40
|
+
<% end %>
|
|
41
|
+
<%= output_names.join(", ") %>
|
|
42
|
+
<% end %>
|
|
43
|
+
|
|
44
|
+
## Contributors
|
|
45
|
+
- Primary development by the commercial buildings team at NREL
|
|
46
|
+
- Support for SI units reporting developed by Julien Marrec with EffiBEM and Julien Thirifays with IGRETEC
|