RefrigerationSystem::RefrigerationSystem(const Model& model) : ModelObject(RefrigerationSystem::iddObjectType(),model) { OS_ASSERT(getImpl<detail::RefrigerationSystem_Impl>()); ModelObjectList caseAndWalkinList = ModelObjectList(model); caseAndWalkinList.setName(this->name().get() + " Case and Walkin List"); bool ok = getImpl<detail::RefrigerationSystem_Impl>()->setRefrigeratedCaseAndWalkInList(caseAndWalkinList); OS_ASSERT(ok); ModelObjectList transferLoadList = ModelObjectList(model); transferLoadList.setName(this->name().get() + " Transfer Load List"); ok = getImpl<detail::RefrigerationSystem_Impl>()->setRefrigerationTransferLoadList(transferLoadList); OS_ASSERT(ok); ModelObjectList compressorlist = ModelObjectList(model); compressorlist.setName(this->name().get() + " Compressor List"); ok = getImpl<detail::RefrigerationSystem_Impl>()->setCompressorList(compressorlist); OS_ASSERT(ok); ModelObjectList highStageCompressorlist = ModelObjectList(model); highStageCompressorlist.setName(this->name().get() + " High Stage Compressor List"); ok = getImpl<detail::RefrigerationSystem_Impl>()->setHighStageCompressorList(highStageCompressorlist); OS_ASSERT(ok); setMinimumCondensingTemperature(21.0); ok = setRefrigerationSystemWorkingFluidType("R404a"); OS_ASSERT(ok); ok = setSuctionTemperatureControlType("ConstantSuctionTemperature"); OS_ASSERT(ok); }
CoilHeatingDXMultiSpeed::CoilHeatingDXMultiSpeed(const Model& model) : StraightComponent(CoilHeatingDXMultiSpeed::iddObjectType(),model) { OS_ASSERT(getImpl<detail::CoilHeatingDXMultiSpeed_Impl>()); bool ok = true; auto always_on = model.alwaysOnDiscreteSchedule(); ok = setAvailabilitySchedule( always_on ); OS_ASSERT(ok); setMinimumOutdoorDryBulbTemperatureforCompressorOperation(-8.0); ok = setCrankcaseHeaterCapacity(0.0); OS_ASSERT(ok); ok = setMaximumOutdoorDryBulbTemperatureforCrankcaseHeaterOperation(10.0); OS_ASSERT(ok); ok = setMaximumOutdoorDryBulbTemperatureforDefrostOperation(5.0); OS_ASSERT(ok); ok = setDefrostStrategy("Resistive"); OS_ASSERT(ok); ok = setDefrostControl("OnDemand"); OS_ASSERT(ok); ok = setDefrostTimePeriodFraction(0.058333); OS_ASSERT(ok); autosizeResistiveDefrostHeaterCapacity(); setApplyPartLoadFractiontoSpeedsGreaterthan1(false); ok = setFuelType("NaturalGas"); OS_ASSERT(ok); ok = setRegionnumberforCalculatingHSPF(4); OS_ASSERT(ok); auto stageDataList = ModelObjectList(model); stageDataList.setName(this->name().get() + " Stage Data List"); ok = getImpl<detail::CoilHeatingDXMultiSpeed_Impl>()->setStageDataList(stageDataList); OS_ASSERT(ok); }
CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit::CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit(const Model& model) : WaterToAirComponent(CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit::iddObjectType(),model) { OS_ASSERT(getImpl<detail::CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit_Impl>()); bool ok = true; setNominalSpeedLevel(1); autosizeGrossRatedTotalCoolingCapacityAtSelectedNominalSpeedLevel(); autosizeRatedAirFlowRateAtSelectedNominalSpeedLevel(); autosizeRatedWaterFlowRateAtSelectedNominalSpeedLevel(); ok = setNominalTimeforCondensatetoBeginLeavingtheCoil(0); OS_ASSERT(ok); ok = setInitialMoistureEvaporationRateDividedbySteadyStateACLatentCapacity(0); OS_ASSERT(ok); setUseHotGasReheat(false); auto partLoadFraction = CurveQuadratic(model); partLoadFraction.setCoefficient1Constant(0.85); partLoadFraction.setCoefficient2x(0.15); partLoadFraction.setCoefficient3xPOW2(0.0); partLoadFraction.setMinimumValueofx(0.0); partLoadFraction.setMaximumValueofx(1.0); ok = setEnergyPartLoadFractionCurve(partLoadFraction); OS_ASSERT(ok); auto speedDataList = ModelObjectList(model); speedDataList.setName(this->name().get() + " Speed Data List"); ok = getImpl<detail::CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit_Impl>()->setSpeedDataList(speedDataList); OS_ASSERT(ok); }
CentralHeatPumpSystem::CentralHeatPumpSystem(const Model& model) : WaterToWaterComponent(CentralHeatPumpSystem::iddObjectType(),model) { OS_ASSERT(getImpl<detail::CentralHeatPumpSystem_Impl>()); bool ok = true; ok = setControlMethod( "SmartMixing" ); OS_ASSERT(ok); ok = setAncillaryPower( 0.0 ); OS_ASSERT(ok); auto chillerHeaterModuleList = ModelObjectList(model); chillerHeaterModuleList.setName(this->name().get() + " Chiller Heater Module List"); ok = getImpl<detail::CentralHeatPumpSystem_Impl>()->setChillerHeaterModuleList(chillerHeaterModuleList); OS_ASSERT(ok); }