GetOAControllerInputs Subroutine

public subroutine GetOAControllerInputs()

proc~~getoacontrollerinputs~~UsesGraph proc~getoacontrollerinputs GetOAControllerInputs module~general General module~general->proc~getoacontrollerinputs module~nodeinputmanager NodeInputManager module~general->module~nodeinputmanager module~inputprocessor InputProcessor module~inputprocessor->proc~getoacontrollerinputs module~inputprocessor->module~nodeinputmanager module~outputreportpredefined OutputReportPredefined module~outputreportpredefined->proc~getoacontrollerinputs module~outairnodemanager OutAirNodeManager module~outairnodemanager->proc~getoacontrollerinputs module~datadefineequip DataDefineEquip module~datadefineequip->proc~getoacontrollerinputs module~nodeinputmanager->proc~getoacontrollerinputs module~dataheatbalance DataHeatBalance module~dataheatbalance->proc~getoacontrollerinputs module~datazonecontrols DataZoneControls module~datazonecontrols->proc~getoacontrollerinputs module~dataairsystems DataAirSystems module~dataairsystems->proc~getoacontrollerinputs module~curvemanager CurveManager module~curvemanager->proc~getoacontrollerinputs module~datazoneequipment DataZoneEquipment module~datazoneequipment->proc~getoacontrollerinputs module~datacontaminantbalance DataContaminantBalance module~datacontaminantbalance->proc~getoacontrollerinputs module~datacontaminantbalance->module~outairnodemanager module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~general module~dataprecisionglobals->module~inputprocessor module~dataprecisionglobals->module~outputreportpredefined module~dataprecisionglobals->module~outairnodemanager module~dataprecisionglobals->module~datadefineequip module~dataprecisionglobals->module~nodeinputmanager module~dataprecisionglobals->module~dataheatbalance module~dataprecisionglobals->module~datazonecontrols module~dataprecisionglobals->module~dataairsystems module~dataprecisionglobals->module~curvemanager module~dataprecisionglobals->module~datazoneequipment module~dataprecisionglobals->module~datacontaminantbalance module~dataglobals DataGlobals module~dataprecisionglobals->module~dataglobals module~dataipshortcuts DataIPShortCuts module~dataprecisionglobals->module~dataipshortcuts module~datasystemvariables DataSystemVariables module~dataprecisionglobals->module~datasystemvariables module~datasizing DataSizing module~dataprecisionglobals->module~datasizing module~datainterfaces DataInterfaces module~dataprecisionglobals->module~datainterfaces module~dataenvironment DataEnvironment module~dataprecisionglobals->module~dataenvironment module~dataloopnode DataLoopNode module~dataprecisionglobals->module~dataloopnode module~datawindowequivalentlayer DataWindowEquivalentLayer module~dataprecisionglobals->module~datawindowequivalentlayer module~databsdfwindow DataBSDFWindow module~dataprecisionglobals->module~databsdfwindow module~datacomplexfenestration DataComplexFenestration module~dataprecisionglobals->module~datacomplexfenestration module~datavectortypes DataVectorTypes module~dataprecisionglobals->module~datavectortypes module~datasurfaces DataSurfaces module~dataprecisionglobals->module~datasurfaces module~dataplant DataPlant module~dataprecisionglobals->module~dataplant module~databranchairloopplant DataBranchAirLoopPlant module~dataprecisionglobals->module~databranchairloopplant module~datastringglobals DataStringGlobals module~datastringglobals->module~inputprocessor module~datastringglobals->module~datasystemvariables module~dataglobals->module~inputprocessor module~dataglobals->module~outputreportpredefined module~dataglobals->module~outairnodemanager module~dataglobals->module~datadefineequip module~dataglobals->module~nodeinputmanager module~dataglobals->module~dataheatbalance module~dataglobals->module~datazonecontrols module~dataglobals->module~dataairsystems module~dataglobals->module~curvemanager module~dataglobals->module~datazoneequipment module~dataglobals->module~datacontaminantbalance module~dataglobals->module~dataipshortcuts module~dataglobals->module~datasizing module~dataglobals->module~dataenvironment module~dataglobals->module~dataloopnode module~branchnodeconnections BranchNodeConnections module~dataglobals->module~branchnodeconnections module~databranchnodeconnections DataBranchNodeConnections module~dataglobals->module~databranchnodeconnections module~dataglobals->module~datawindowequivalentlayer module~dataglobals->module~databsdfwindow module~dataglobals->module~datacomplexfenestration module~dataglobals->module~datasurfaces module~dataglobals->module~dataplant module~dataglobals->module~databranchairloopplant module~dataipshortcuts->module~inputprocessor module~datasystemvariables->module~inputprocessor module~datasizing->module~inputprocessor module~datainterfaces->module~inputprocessor module~datainterfaces->module~outairnodemanager module~datainterfaces->module~nodeinputmanager module~datainterfaces->module~curvemanager module~datainterfaces->module~branchnodeconnections module~dataenvironment->module~outairnodemanager module~dataloopnode->module~outairnodemanager module~dataloopnode->module~nodeinputmanager module~dataloopnode->module~branchnodeconnections module~dataloopnode->module~dataplant module~branchnodeconnections->module~nodeinputmanager module~databranchnodeconnections->module~branchnodeconnections module~datawindowequivalentlayer->module~dataheatbalance module~databsdfwindow->module~dataheatbalance module~databsdfwindow->module~datasurfaces module~datacomplexfenestration->module~dataheatbalance module~datavectortypes->module~dataheatbalance module~datavectortypes->module~databsdfwindow module~datavectortypes->module~datasurfaces module~datasurfaces->module~dataheatbalance module~datasurfaces->module~datacontaminantbalance module~dataplant->module~dataairsystems module~databranchairloopplant->module~curvemanager
Help

!! Zone Air Distribution inputs.

Arguments

None

Calls

proc~~getoacontrollerinputs~~CallsGraph proc~getoacontrollerinputs GetOAControllerInputs zonesizinginput zonesizinginput proc~getoacontrollerinputs->zonesizinginput proc~showcontinueerror ShowContinueError proc~getoacontrollerinputs->proc~showcontinueerror proc~getoamixerinputs GetOAMixerInputs proc~getoacontrollerinputs->proc~getoamixerinputs proc~showfatalerror ShowFatalError proc~getoacontrollerinputs->proc~showfatalerror getonlysinglenode getonlysinglenode proc~getoacontrollerinputs->getonlysinglenode outsideairsys outsideairsys proc~getoacontrollerinputs->outsideairsys roundsigdigits roundsigdigits proc~getoacontrollerinputs->roundsigdigits proc~getobjectdefmaxargs GetObjectDefMaxArgs proc~getoacontrollerinputs->proc~getobjectdefmaxargs proc~getoutsideairsysinputs GetOutsideAirSysInputs proc~getoacontrollerinputs->proc~getoutsideairsysinputs oacontrollerinfo oacontrollerinfo proc~getoacontrollerinputs->oacontrollerinfo primaryairsystem primaryairsystem proc~getoacontrollerinputs->primaryairsystem trimsigdigits trimsigdigits proc~getoacontrollerinputs->trimsigdigits zonelist zonelist proc~getoacontrollerinputs->zonelist proc~showwarningerror ShowWarningError proc~getoacontrollerinputs->proc~showwarningerror getcurveindex getcurveindex proc~getoacontrollerinputs->getcurveindex faults faults proc~getoacontrollerinputs->faults zoneequipconfig zoneequipconfig proc~getoacontrollerinputs->zoneequipconfig proc~verifyname VerifyName proc~getoacontrollerinputs->proc~verifyname proc~getobjectitem GetObjectItem proc~getoacontrollerinputs->proc~getobjectitem zoneairdistribution zoneairdistribution proc~getoacontrollerinputs->zoneairdistribution proc~finditeminlist FindIteminList proc~getoacontrollerinputs->proc~finditeminlist airloopcontrolinfo airloopcontrolinfo proc~getoacontrollerinputs->airloopcontrolinfo airloopzoneinfo airloopzoneinfo proc~getoacontrollerinputs->airloopzoneinfo checkoutairnodenumber checkoutairnodenumber proc~getoacontrollerinputs->checkoutairnodenumber proc~getnumobjectsfound GetNumObjectsFound proc~getoacontrollerinputs->proc~getnumobjectsfound oarequirements oarequirements proc~getoacontrollerinputs->oarequirements proc~samestring SameString proc~getoacontrollerinputs->proc~samestring proc~getscheduleindex GetScheduleIndex proc~getoacontrollerinputs->proc~getscheduleindex getcurvetype getcurvetype proc~getoacontrollerinputs->getcurvetype proc~showsevereerror ShowSevereError proc~getoacontrollerinputs->proc~showsevereerror proc~makeuppercase MakeUPPERCase proc~getoacontrollerinputs->proc~makeuppercase zoneequiplist zoneequiplist proc~getoacontrollerinputs->zoneequiplist airdistunit airdistunit proc~getoacontrollerinputs->airdistunit airloopflow airloopflow proc~getoacontrollerinputs->airloopflow humiditycontrolzone humiditycontrolzone proc~getoacontrollerinputs->humiditycontrolzone airtozonenodeinfo airtozonenodeinfo proc~getoacontrollerinputs->airtozonenodeinfo zone zone proc~getoacontrollerinputs->zone proc~showerrormessage ShowErrorMessage proc~showcontinueerror->proc~showerrormessage updatesqliteerrorrecord updatesqliteerrorrecord proc~showcontinueerror->updatesqliteerrorrecord proc~getoamixerinputs->proc~showfatalerror proc~getoamixerinputs->getonlysinglenode proc~getoamixerinputs->proc~getobjectdefmaxargs proc~getoamixerinputs->proc~verifyname proc~getoamixerinputs->proc~getobjectitem proc~getoamixerinputs->proc~getnumobjectsfound proc~getoamixerinputs->proc~showsevereerror testcompset testcompset proc~getoamixerinputs->testcompset nodeid nodeid proc~getoamixerinputs->nodeid proc~showfatalerror->roundsigdigits proc~showfatalerror->proc~showerrormessage proc~displaystring DisplayString proc~showfatalerror->proc~displaystring proc~abortenergyplus AbortEnergyPlus proc~showfatalerror->proc~abortenergyplus createsqliteerrorrecord createsqliteerrorrecord proc~showfatalerror->createsqliteerrorrecord proc~getobjectdefmaxargs->proc~finditeminlist proc~getobjectdefmaxargs->proc~showsevereerror proc~getobjectdefmaxargs->proc~makeuppercase proc~finditeminsortedlist FindIteminSortedList proc~getobjectdefmaxargs->proc~finditeminsortedlist proc~getoutsideairsysinputs->proc~showcontinueerror proc~getoutsideairsysinputs->proc~showfatalerror proc~getoutsideairsysinputs->outsideairsys proc~getoutsideairsysinputs->proc~getobjectdefmaxargs proc~getoutsideairsysinputs->proc~verifyname proc~getoutsideairsysinputs->proc~getobjectitem proc~getoutsideairsysinputs->proc~getnumobjectsfound proc~getoutsideairsysinputs->proc~samestring proc~getoutsideairsysinputs->proc~showsevereerror proc~getoutsideairsysinputs->proc~makeuppercase proc~getoutsideairsysinputs->testcompset proc~getobjectitemnum GetObjectItemNum proc~getoutsideairsysinputs->proc~getobjectitemnum oasyseqsizing oasyseqsizing proc~getoutsideairsysinputs->oasyseqsizing setupcompsets setupcompsets proc~getoutsideairsysinputs->setupcompsets checkdxcoolingcoilinoasysexists checkdxcoolingcoilinoasysexists proc~getoutsideairsysinputs->checkdxcoolingcoilinoasysexists proc~showwarningerror->proc~showerrormessage proc~showwarningerror->createsqliteerrorrecord matchcounts matchcounts proc~showwarningerror->matchcounts messagesearch messagesearch proc~showwarningerror->messagesearch proc~verifyname->proc~showsevereerror proc~finditem FindItem proc~verifyname->proc~finditem proc~getobjectitem->proc~showfatalerror proc~getobjectitem->proc~showwarningerror proc~getobjectitem->proc~finditeminlist proc~getobjectitem->proc~samestring proc~getobjectitem->proc~makeuppercase proc~getobjectitem->proc~finditeminsortedlist proc~getobjectitemfromfile GetObjectItemfromFile proc~getobjectitem->proc~getobjectitemfromfile proc~processinput ProcessInput proc~getobjectitem->proc~processinput proc~iptrimsigdigits IPTrimSigDigits proc~getobjectitem->proc~iptrimsigdigits proc~getnumobjectsfound->proc~showwarningerror proc~getnumobjectsfound->proc~finditeminlist proc~getnumobjectsfound->proc~makeuppercase proc~getnumobjectsfound->proc~finditeminsortedlist proc~samestring->proc~makeuppercase proc~processscheduleinput ProcessScheduleInput proc~getscheduleindex->proc~processscheduleinput finditeminlist finditeminlist proc~getscheduleindex->finditeminlist proc~showsevereerror->proc~showerrormessage proc~showsevereerror->createsqliteerrorrecord proc~showsevereerror->matchcounts proc~showsevereerror->messagesearch proc~showerrormessage->proc~showfatalerror proc~showerrormessage->proc~displaystring proc~abortenergyplus->roundsigdigits proc~abortenergyplus->proc~displaystring proc~testairpathintegrity TestAirPathIntegrity proc~abortenergyplus->proc~testairpathintegrity updatesqlitesimulationrecord updatesqlitesimulationrecord proc~abortenergyplus->updatesqlitesimulationrecord checkmarkednodes checkmarkednodes proc~abortenergyplus->checkmarkednodes reportairloopconnections reportairloopconnections proc~abortenergyplus->reportairloopconnections proc~showrecurringerrors ShowRecurringErrors proc~abortenergyplus->proc~showrecurringerrors testcompsetinletoutletnodes testcompsetinletoutletnodes proc~abortenergyplus->testcompsetinletoutletnodes proc~summarizeerrors SummarizeErrors proc~abortenergyplus->proc~summarizeerrors reportsurfaceerrors reportsurfaceerrors proc~abortenergyplus->reportsurfaceerrors reportloopconnections reportloopconnections proc~abortenergyplus->reportloopconnections proc~closemiscopenfiles CloseMiscOpenFiles proc~abortenergyplus->proc~closemiscopenfiles setupnodevarsforreporting setupnodevarsforreporting proc~abortenergyplus->setupnodevarsforreporting closesocket closesocket proc~abortenergyplus->closesocket proc~closeoutopenfiles CloseOutOpenFiles proc~abortenergyplus->proc~closeoutopenfiles proc~reportsurfaces ReportSurfaces proc~abortenergyplus->proc~reportsurfaces testbranchintegrity testbranchintegrity proc~abortenergyplus->testbranchintegrity checkplantonabort checkplantonabort proc~abortenergyplus->checkplantonabort proc~epelapsedtime epElapsedTime proc~abortenergyplus->proc~epelapsedtime proc~epstoptime epStopTime proc~abortenergyplus->proc~epstoptime proc~epsummarytimes epSummaryTimes proc~abortenergyplus->proc~epsummarytimes proc~showmessage ShowMessage proc~abortenergyplus->proc~showmessage checknodeconnections checknodeconnections proc~abortenergyplus->checknodeconnections proc~testairpathintegrity->proc~showcontinueerror proc~testairpathintegrity->proc~showsevereerror proc~testairpathintegrity->airtozonenodeinfo proc~testairpathintegrity->nodeid proc~showrecurringerrors->roundsigdigits proc~showrecurringerrors->updatesqliteerrorrecord proc~showrecurringerrors->createsqliteerrorrecord proc~showrecurringerrors->proc~showmessage removetrailingzeros removetrailingzeros proc~showrecurringerrors->removetrailingzeros recurringerrors recurringerrors proc~showrecurringerrors->recurringerrors proc~summarizeerrors->proc~showmessage proc~summarizeerrors->matchcounts summaries summaries proc~summarizeerrors->summaries moredetails moredetails proc~summarizeerrors->moredetails closedfsfile closedfsfile proc~closemiscopenfiles->closedfsfile closereportillummaps closereportillummaps proc~closemiscopenfiles->closereportillummaps proc~reportsurfaces->proc~showwarningerror proc~detailsforsurfaces DetailsForSurfaces proc~reportsurfaces->proc~detailsforsurfaces proc~setupschemecolors SetUpSchemeColors proc~reportsurfaces->proc~setupschemecolors proc~vrmlout VRMLOut proc~reportsurfaces->proc~vrmlout scanforreports scanforreports proc~reportsurfaces->scanforreports proc~dxfoutwireframe DXFOutWireFrame proc~reportsurfaces->proc~dxfoutwireframe proc~costinfoout CostInfoOut proc~reportsurfaces->proc~costinfoout proc~linesout LinesOut proc~reportsurfaces->proc~linesout proc~dxfout DXFOut proc~reportsurfaces->proc~dxfout proc~epstoptime->proc~showfatalerror tstop tstop proc~epstoptime->tstop proc~epsummarytimes->roundsigdigits proc~showmessage->proc~showerrormessage proc~detailsforsurfaces->roundsigdigits proc~detailsforsurfaces->trimsigdigits proc~detailsforsurfaces->zone getschedulename getschedulename proc~detailsforsurfaces->getschedulename oscm oscm proc~detailsforsurfaces->oscm nominalu nominalu proc~detailsforsurfaces->nominalu framedivider framedivider proc~detailsforsurfaces->framedivider getschedulemaxvalue getschedulemaxvalue proc~detailsforsurfaces->getschedulemaxvalue 2 2 proc~detailsforsurfaces->2 proc~computenominaluwithconvcoeffs ComputeNominalUwithConvCoeffs proc~detailsforsurfaces->proc~computenominaluwithconvcoeffs 3 3 proc~detailsforsurfaces->3 osc osc proc~detailsforsurfaces->osc construct construct proc~detailsforsurfaces->construct 4 4 proc~detailsforsurfaces->4 proc~csurfaceclass cSurfaceClass proc~detailsforsurfaces->proc~csurfaceclass userintconvectioncoeffs userintconvectioncoeffs proc~detailsforsurfaces->userintconvectioncoeffs userextconvectioncoeffs userextconvectioncoeffs proc~detailsforsurfaces->userextconvectioncoeffs surface surface proc~detailsforsurfaces->surface getscheduleminvalue getscheduleminvalue proc~detailsforsurfaces->getscheduleminvalue surfacewindow surfacewindow proc~detailsforsurfaces->surfacewindow proc~setupschemecolors->proc~showwarningerror getobjectitemnum getobjectitemnum proc~setupschemecolors->getobjectitemnum getobjectdefmaxargs getobjectdefmaxargs proc~setupschemecolors->getobjectdefmaxargs proc~matchandsetcolortextstring MatchAndSetColorTextString proc~setupschemecolors->proc~matchandsetcolortextstring getobjectitem getobjectitem proc~setupschemecolors->getobjectitem proc~vrmlout->proc~showcontinueerror proc~vrmlout->proc~showfatalerror proc~vrmlout->proc~showwarningerror proc~vrmlout->zone proc~vrmlout->surface proc~triangulate Triangulate proc~vrmlout->proc~triangulate proc~getnewunitnumber GetNewUnitNumber proc~vrmlout->proc~getnewunitnumber proc~dxfoutwireframe->proc~showfatalerror proc~dxfoutwireframe->trimsigdigits proc~dxfoutwireframe->zone proc~dxfoutwireframe->surface proc~dxfoutwireframe->surfacewindow proc~dxfoutwireframe->proc~getnewunitnumber zonedaylight zonedaylight proc~dxfoutwireframe->zonedaylight dxfcolorno dxfcolorno proc~dxfoutwireframe->dxfcolorno proc~costinfoout->proc~showfatalerror proc~costinfoout->construct proc~costinfoout->proc~csurfaceclass proc~costinfoout->surface proc~costinfoout->proc~getnewunitnumber proc~linesout->proc~showcontinueerror proc~linesout->proc~showfatalerror proc~linesout->roundsigdigits proc~linesout->proc~showwarningerror proc~linesout->proc~csurfaceclass proc~linesout->surface proc~linesout->proc~getnewunitnumber proc~dxfout->proc~showcontinueerror proc~dxfout->proc~showfatalerror proc~dxfout->trimsigdigits proc~dxfout->proc~showwarningerror proc~dxfout->zone proc~dxfout->surface proc~dxfout->surfacewindow proc~dxfout->proc~triangulate proc~dxfout->proc~getnewunitnumber proc~dxfout->zonedaylight proc~dxfout->dxfcolorno illummapcalc illummapcalc proc~dxfout->illummapcalc proc~computenominaluwithconvcoeffs->surface finditem finditem proc~matchandsetcolortextstring->finditem proc~triangulate->proc~showcontinueerror proc~triangulate->roundsigdigits proc~triangulate->proc~showwarningerror proc~triangulate->proc~showmessage csurfaceclass csurfaceclass proc~triangulate->csurfaceclass proc~generate_ears generate_ears proc~triangulate->proc~generate_ears proc~calcrfflrcoordinatetransformation CalcRfFlrCoordinateTransformation proc~triangulate->proc~calcrfflrcoordinatetransformation proc~calcwallcoordinatetransformation CalcWallCoordinateTransformation proc~triangulate->proc~calcwallcoordinatetransformation proc~polygon_contains_point_2d polygon_contains_point_2d proc~generate_ears->proc~polygon_contains_point_2d proc~angle_2dvector angle_2dvector proc~generate_ears->proc~angle_2dvector proc~finditeminsortedlist->proc~samestring proc~finditeminsortedlist->proc~makeuppercase proc~getobjectitemnum->proc~finditeminlist proc~getobjectitemnum->proc~makeuppercase proc~getobjectitemnum->proc~finditeminsortedlist proc~finditem->proc~finditeminlist proc~finditem->proc~makeuppercase proc~processinput->proc~showcontinueerror proc~processinput->proc~showfatalerror proc~processinput->proc~showwarningerror proc~processinput->proc~finditeminlist proc~processinput->proc~samestring proc~processinput->proc~showsevereerror proc~processinput->proc~makeuppercase proc~processinput->proc~displaystring proc~processinput->proc~finditeminsortedlist proc~processinput->proc~iptrimsigdigits setupandsort setupandsort proc~processinput->setupandsort calphafieldnames calphafieldnames proc~processinput->calphafieldnames proc~processdatadicfile ProcessDataDicFile proc~processinput->proc~processdatadicfile calphaargs calphaargs proc~processinput->calphaargs lalphafieldblanks lalphafieldblanks proc~processinput->lalphafieldblanks rnumericargs rnumericargs proc~processinput->rnumericargs cnumericfieldnames cnumericfieldnames proc~processinput->cnumericfieldnames lnumericfieldblanks lnumericfieldblanks proc~processinput->lnumericfieldblanks matchversion matchversion proc~processinput->matchversion proc~getidfrecordsstats GetIDFRecordsStats proc~processinput->proc~getidfrecordsstats proc~processinputdatafile ProcessInputDataFile proc~processinput->proc~processinputdatafile proc~initsecretobjects InitSecretObjects proc~processinput->proc~initsecretobjects programpath programpath proc~processinput->programpath proc~processdatadicfile->proc~showsevereerror proc~processdatadicfile->proc~iptrimsigdigits proc~readinputline ReadInputLine proc~processdatadicfile->proc~readinputline proc~addsectiondef AddSectionDef proc~processdatadicfile->proc~addsectiondef proc~addobjectdefandparse AddObjectDefandParse proc~processdatadicfile->proc~addobjectdefandparse proc~processinputdatafile->proc~showsevereerror proc~processinputdatafile->proc~showmessage proc~processinputdatafile->proc~iptrimsigdigits proc~processinputdatafile->proc~readinputline proc~validatesection ValidateSection proc~processinputdatafile->proc~validatesection proc~validateobjectandparse ValidateObjectandParse proc~processinputdatafile->proc~validateobjectandparse proc~readinputline->proc~showcontinueerror proc~readinputline->proc~showfatalerror proc~readinputline->proc~showsevereerror proc~readinputline->proc~makeuppercase proc~readinputline->proc~iptrimsigdigits proc~processnumber ProcessNumber proc~readinputline->proc~processnumber proc~processminmaxdefline ProcessMinMaxDefLine proc~readinputline->proc~processminmaxdefline proc~addsectiondef->proc~showcontinueerror proc~addsectiondef->proc~showwarningerror proc~addsectiondef->proc~finditeminlist proc~addsectiondef->proc~showsevereerror proc~addsectiondef->proc~makeuppercase proc~addobjectdefandparse->proc~showcontinueerror proc~addobjectdefandparse->proc~showwarningerror proc~addobjectdefandparse->proc~finditeminlist proc~addobjectdefandparse->proc~showsevereerror proc~addobjectdefandparse->proc~makeuppercase proc~addobjectdefandparse->proc~iptrimsigdigits proc~addobjectdefandparse->proc~readinputline proc~processminmaxdefline->proc~showsevereerror proc~processminmaxdefline->proc~makeuppercase proc~processminmaxdefline->proc~iptrimsigdigits proc~processminmaxdefline->proc~processnumber proc~validatesection->proc~showcontinueerror proc~validatesection->proc~showwarningerror proc~validatesection->proc~finditeminlist proc~validatesection->proc~samestring proc~validatesection->proc~makeuppercase proc~validatesection->proc~finditeminsortedlist proc~addrecordfromsection AddRecordFromSection proc~validatesection->proc~addrecordfromsection proc~validateobjectandparse->proc~showcontinueerror proc~validateobjectandparse->proc~showwarningerror proc~validateobjectandparse->proc~finditeminlist proc~validateobjectandparse->proc~showsevereerror proc~validateobjectandparse->proc~makeuppercase proc~validateobjectandparse->proc~finditeminsortedlist proc~validateobjectandparse->proc~iptrimsigdigits proc~validateobjectandparse->proc~readinputline proc~validateobjectandparse->proc~processnumber proc~showauditerrormessage ShowAuditErrorMessage proc~validateobjectandparse->proc~showauditerrormessage proc~internalrangecheck InternalRangeCheck proc~validateobjectandparse->proc~internalrangecheck proc~dumpcurrentlinebuffer DumpCurrentLineBuffer proc~validateobjectandparse->proc~dumpcurrentlinebuffer proc~maketransition MakeTransition proc~validateobjectandparse->proc~maketransition proc~extendobjectdefinition ExtendObjectDefinition proc~validateobjectandparse->proc~extendobjectdefinition proc~addrecordfromsection->proc~showcontinueerror proc~addrecordfromsection->proc~showsevereerror proc~addrecordfromsection->proc~iptrimsigdigits proc~addrecordfromsection->proc~showauditerrormessage proc~addrecordfromsection->proc~internalrangecheck proc~internalrangecheck->proc~showsevereerror proc~internalrangecheck->proc~iptrimsigdigits proc~dumpcurrentlinebuffer->proc~showmessage proc~dumpcurrentlinebuffer->proc~iptrimsigdigits proc~maketransition->proc~showfatalerror proc~maketransition->proc~finditeminlist proc~maketransition->proc~samestring proc~maketransition->proc~showsevereerror proc~maketransition->proc~makeuppercase proc~extendobjectdefinition->proc~displaystring proc~extendobjectdefinition->proc~iptrimsigdigits proc~processscheduleinput->proc~showcontinueerror proc~processscheduleinput->proc~showfatalerror proc~processscheduleinput->roundsigdigits proc~processscheduleinput->trimsigdigits proc~processscheduleinput->proc~showwarningerror proc~processscheduleinput->proc~showsevereerror proc~processscheduleinput->proc~displaystring proc~processscheduleinput->getobjectdefmaxargs proc~processscheduleinput->getobjectitem proc~processscheduleinput->finditem proc~processscheduleinput->finditeminlist verifyname verifyname proc~processscheduleinput->verifyname samestring samestring proc~processscheduleinput->samestring proc~processintervalfields ProcessIntervalFields proc~processscheduleinput->proc~processintervalfields processdatestring processdatestring proc~processscheduleinput->processdatestring setupemsactuator setupemsactuator proc~processscheduleinput->setupemsactuator proc~processfordaytypes ProcessForDayTypes proc~processscheduleinput->proc~processfordaytypes julianday julianday proc~processscheduleinput->julianday getnumobjectsfound getnumobjectsfound proc~processscheduleinput->getnumobjectsfound proc~externalinterfacesetschedule ExternalInterfaceSetSchedule proc~processscheduleinput->proc~externalinterfacesetschedule processnumber processnumber proc~processscheduleinput->processnumber checkforactualfilename checkforactualfilename proc~processscheduleinput->checkforactualfilename interface~checkschedulevalueminmax CheckScheduleValueMinMax proc~processscheduleinput->interface~checkschedulevalueminmax proc~reportscheduledetails ReportScheduleDetails proc~processscheduleinput->proc~reportscheduledetails proc~processintervalfields->proc~showcontinueerror proc~processintervalfields->proc~showwarningerror proc~processintervalfields->proc~showsevereerror proc~decodehhmmfield DecodeHHMMField proc~processintervalfields->proc~decodehhmmfield proc~processfordaytypes->proc~showsevereerror proc~dcheckschedulevalueminmax2 dCheckScheduleValueMinMax2 interface~checkschedulevalueminmax->proc~dcheckschedulevalueminmax2 proc~rcheckschedulevalueminmax1 rCheckScheduleValueMinMax1 interface~checkschedulevalueminmax->proc~rcheckschedulevalueminmax1 proc~rcheckschedulevalueminmax2 rCheckScheduleValueMinMax2 interface~checkschedulevalueminmax->proc~rcheckschedulevalueminmax2 proc~dcheckschedulevalueminmax1 dCheckScheduleValueMinMax1 interface~checkschedulevalueminmax->proc~dcheckschedulevalueminmax1 proc~reportscheduledetails->roundsigdigits invjulianday invjulianday proc~reportscheduledetails->invjulianday proc~decodehhmmfield->proc~showcontinueerror proc~decodehhmmfield->proc~showwarningerror proc~decodehhmmfield->proc~showsevereerror proc~dcheckschedulevalueminmax2->proc~showfatalerror proc~rcheckschedulevalueminmax1->proc~showfatalerror proc~rcheckschedulevalueminmax2->proc~showfatalerror proc~dcheckschedulevalueminmax1->proc~showfatalerror
Help

Called By

proc~~getoacontrollerinputs~~CalledByGraph proc~getoacontrollerinputs GetOAControllerInputs proc~getnumoacontrollers GetNumOAControllers proc~getnumoacontrollers->proc~getoacontrollerinputs proc~setoacontrollerdata SetOAControllerData proc~setoacontrollerdata->proc~getoacontrollerinputs proc~simoacontroller SimOAController proc~simoacontroller->proc~getoacontrollerinputs proc~checkoacontrollername CheckOAControllerName proc~checkoacontrollername->proc~getoacontrollerinputs proc~simoutsideairsys SimOutsideAirSys proc~simoutsideairsys->proc~simoacontroller proc~manageoutsideairsystem ManageOutsideAirSystem proc~manageoutsideairsystem->proc~simoutsideairsys
Help

Source Code


Common Blocks

Type AttributesNameInitial
real :: Zone = .FALSE.
Type AttributesNameInitial
real :: Zone = .TRUE.

Source Code

SUBROUTINE GetOAControllerInputs

          ! SUBROUTINE INFORMATION:
          !       AUTHOR         Fred Buhl
          !       DATE WRITTEN   Oct 1998
          !       MODIFIED       Shirey/Raustad FSEC, June 2003, Jan 2004
          !                      Mangesh Basarkar, 06/2011: Getting zone OA specifications from Design Specification Object
          !                      Tianzhen Hong, 3/2012: getting zone air distribution effectiveness and secondary recirculation
          !                       from DesignSpecification:ZoneAirDistribution objects
          !       RE-ENGINEERED  na

          ! PURPOSE OF THIS SUBROUTINE
          ! Input the OAController data and store it in the OAController array.
          ! Input the Ventilation:Mechanical data and store it in the VentilationMechanical array.
          !  Condense Ventilation:Mechanical data array to include only unique zones specified for each instance of this object.

          ! METHODOLOGY EMPLOYED:
          ! Use the Get routines from the InputProcessor module.

          ! REFERENCES:
          ! na

          ! USE STATEMENTS:
    USE InputProcessor
    USE DataDefineEquip
    USE General,           ONLY: TrimSigDigits, RoundSigDigits
    USE NodeInputManager,  ONLY: GetOnlySingleNode
    USE DataZoneEquipment, ONLY: ZoneEquipConfig, ZoneEquipList, NumofZoneEquipLists
    USE DataHeatBalance,   ONLY: Zone, ZoneList, NumOfZoneLists
    USE CurveManager,      ONLY: GetCurveIndex, GetCurveType
    USE OutputReportPredefined

    USE DataAirSystems,    ONLY: PrimaryAirSystem
    USE DataZoneControls,  ONLY: HumidityControlZone, NumHumidityControlZones
    USE DataContaminantBalance, ONLY: Contaminant
    USE OutAirNodeManager, ONLY: CheckOutAirNodeNumber

    IMPLICIT NONE

          ! SUBROUTINE ARGUMENT DEFINITIONS:
          ! na

          ! SUBROUTINE PARAMETER DEFINITIONS:
CHARACTER(len=1), PARAMETER :: Blank=' '
CHARACTER(len=*), PARAMETER :: RoutineName='GetOAControllerInputs: ' ! include trailing blank space


          ! INTERFACE BLOCK SPECIFICATIONS
          ! na

          ! DERIVED TYPE DEFINITIONS
          ! na

          ! SUBROUTINE LOCAL VARIABLE DECLARATIONS:

INTEGER :: MaxNumAirLoopZones   ! maximum number of heating plus cooling zones attached to any air loop
INTEGER :: NumAirLoopZones      ! number of heating plus cooling zones attached to a given air loop
INTEGER :: NumofAirLoop         ! counter for NumPrimaryAirSys
INTEGER :: NumAirLoopCooledZones     ! number of cooling zones for a given air loop
INTEGER :: NumAirLoopCooledZonesTemp ! index for number of cooling zones
INTEGER :: AirLoopZones         ! total number of unique heating and cooling zones for each air loop
INTEGER :: NumAirLoopHeatedZones     ! number of heating zones for a given air loop
INTEGER :: NumAirLoopHeatedZonesTemp ! index for number of heating zones
INTEGER :: ZoneNum              ! zone number attached to a given air loop
LOGICAL :: CommonZone           ! logical for the same zone being a cooling zone and a heating zone
INTEGER :: NumNums         ! Number of real numbers returned by GetObjectItem
INTEGER :: NumAlphas       ! Number of alphanumerics returned by GetObjectItem
INTEGER :: OutAirNum       ! Number of Controller:OutdoorAir or CONTROLLER:STAND ALONE ERV objects
INTEGER :: OAControllerNum ! Index to Controller:OutdoorAir or CONTROLLER:STAND ALONE ERV objects
INTEGER :: VentMechNum ! Number of VENTILATION:MECHANICAL objects
INTEGER :: groupNum ! Index to group in extensible VENTILATION:MECHANICAL object
INTEGER :: IOSTAT      ! Status of GetObjectItem call
REAL(r64), ALLOCATABLE, DIMENSION(:) :: NumArray
CHARACTER(len=MaxNameLength), ALLOCATABLE, DIMENSION(:) :: AlphArray
CHARACTER(len=MaxNameLength) :: CurrentModuleObject   ! Object type for getting and messages
CHARACTER(len=MaxNameLength),  ALLOCATABLE, DIMENSION(:) :: cAlphaFields   ! Alpha field names
CHARACTER(len=MaxNameLength),  ALLOCATABLE, DIMENSION(:) :: cNumericFields ! Numeric field names
LOGICAL,  ALLOCATABLE, DIMENSION(:) :: lAlphaBlanks     ! Logical array, alpha field input BLANK = .true.
LOGICAL,  ALLOCATABLE, DIMENSION(:) :: lNumericBlanks   ! Logical array, numeric field input BLANK = .true.
LOGICAL :: ErrorsFound=.false.   ! Flag identifying errors found during get input
LOGICAL :: IsNotOK               ! Flag to verify name
LOGICAL :: IsBlank               ! Flag for blank name
INTEGER :: ZoneListNum           ! Index to Zone List
INTEGER :: ScanZoneListNum       ! Index used to loop through zone list
INTEGER :: MechVentZoneCount     ! Index counter for zones with mechanical ventilation
!LOGICAL :: FoundUniqueZone       ! Flag to verify VENTIALTION:MECHANICAL zones are unique and no duplicates exist
!INTEGER :: NumVentMechZone       ! Index counter for checking mechanical ventilation zone uniqeness
LOGICAL :: ErrorInName           ! Error returned from VerifyName call
INTEGER :: NumArg                ! Number of arguments from GetObjectDefMaxArgs call
INTEGER :: MaxAlphas             ! Maximum alphas in multiple objects
INTEGER :: MaxNums               ! Maximum numbers in multiple objects
!INTEGER :: ERVControllerNum     ! Index to Controller:Stand Alone ERV
Integer :: ControlledZoneNum     ! Index to controlled zones
LOGICAL :: AirNodeFound          ! Used to determine if control zone is valid
LOGICAL :: AirLoopFound          ! Used to determine if control zone is served by furnace air loop
INTEGER :: AirLoopNumber         ! Used to determine if control zone is served by furnace air loop
INTEGER :: BranchNum             ! Used to determine if control zone is served by furnace air loop
INTEGER :: CompNum               ! Used to determine if control zone is served by furnace air loop
INTEGER :: HstatZoneNum          ! Used to determine if control zone has a humidistat object
INTEGER :: OASysNum              ! Used to find OA System index for OA Controller
INTEGER :: OASysIndex            ! Index to OA System
LOGICAL :: OASysFound            ! OA Controller found OA System index
REAL(r64) :: OAFlowRatio         ! Ratio of minimum OA flow rate to maximum OA flow rate

INTEGER :: NumGroups             ! Number of extensible input groups of the VentilationMechanical object
INTEGER :: numBaseNum            ! base number for numeric arguments (for readability)
!INTEGER :: OAIndex               ! Loop index for design specification outdoor air object list
!INTEGER :: NumControllerList = 0  ! Index to controller lists
INTEGER :: ControllerListNum = 0  ! Index used to loop through controller list
INTEGER :: ControllerNum = 0      ! Index to controllers in each controller list
INTEGER :: Num = 0                ! Index used to loop through controllers in list
INTEGER :: SysNum = 0             ! Index used to loop through OA systems
REAL(r64) :: DesSupplyVolFlowRate = 0.0d0  ! Temporary variable for design supply volumetric flow rate for air loop (m3/s)
CHARACTER(len=MaxNameLength),DIMENSION(:),ALLOCATABLE:: DesignSpecOAObjName ! name of the design specification outdoor air object
INTEGER,DIMENSION(:),ALLOCATABLE:: DesignSpecOAObjIndex ! index of the design specification outdoor air object
CHARACTER(len=MaxNameLength),DIMENSION(:),ALLOCATABLE:: VentMechZoneName ! Zone or Zone List to apply mechanical ventilation rate
REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneOAAreaRate     ! Mechanical ventilation rate (m3/s/m2) for zone or zone list
REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneOAPeopleRate   ! Mechanical ventilation rate (m3/s/person) for zone or zone list
REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneOAFlow         ! Mechanical ventilation rate (m3/s/person) for zone or zone list
REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneOAACH          ! Mechanical ventilation rate (m3/s/person) for zone or zone list

REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneADEffCooling    ! Zone air distribution effectiveness in cooling mode
                                                                  ! for each zone or zone list
REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneADEffHeating    ! Zone air distribution effectiveness in heating mode
                                                                  ! for each zone or zone list
INTEGER, DIMENSION(:),ALLOCATABLE:: VentMechZoneADEffSchPtr       ! Pointer to the zone air distribution effectiveness schedule
                                                                  ! for each zone or zone list
CHARACTER(len=MaxNameLength),DIMENSION(:),ALLOCATABLE:: VentMechZoneADEffSchName  ! Zone air distribution effectiveness
                                                                                  !  schedule name for each zone or zone list

REAL(r64), DIMENSION(:),ALLOCATABLE:: VentMechZoneSecondaryRecirculation          ! Zone air secondary recirculation ratio
                                                                                  !  for each zone or zone list
CHARACTER(len=MaxNameLength),DIMENSION(:),ALLOCATABLE:: DesignSpecZoneADObjName   ! name of the design specification zone air
                                                                                  !  distribution object for each zone or zone list
INTEGER,DIMENSION(:),ALLOCATABLE:: DesignSpecZoneADObjIndex       ! index of the design specification zone air distribution object

INTEGER :: ObjIndex = 0
INTEGER :: EquipListIndex = 0
INTEGER :: EquipNum = 0
INTEGER :: EquipListNum = 0
INTEGER :: ADUNum = 0
INTEGER :: jZone
INTEGER :: i

!First, call other get input routines in this module to make sure data is filled during this routine.
IF (GetOASysInputFlag) THEN  ! Gets input for object  first time Sim routine is called
  CALL GetOutsideAirSysInputs
  GetOASysInputFlag=.false.
END IF
IF (GetOAMixerInputFlag) THEN  ! Gets input for object  first time Sim routine is called
  CALL GetOAMixerInputs
  GetOAMixerInputFlag=.false.
END IF


CALL GetObjectDefMaxArgs(CurrentModuleObjects(CMO_OAController),NumArg,NumAlphas,NumNums)
MaxAlphas=NumAlphas
MaxNums=NumNums
CALL GetObjectDefMaxArgs(CurrentModuleObjects(CMO_ERVController),NumArg,NumAlphas,NumNums)
MaxAlphas=MAX(MaxAlphas,NumAlphas)
MaxNums=MAX(MaxNums,NumNums)
CALL GetObjectDefMaxArgs(CurrentModuleObjects(CMO_MechVentilation),NumArg,NumAlphas,NumNums)
MaxAlphas=MAX(MaxAlphas,NumAlphas)
MaxNums=MAX(MaxNums,NumNums)

ALLOCATE(AlphArray(MaxAlphas))
AlphArray=' '
ALLOCATE(NumArray(MaxNums))
NumArray=0.0d0
ALLOCATE(lAlphaBlanks(MaxAlphas))
lAlphaBlanks=.true.
ALLOCATE(lNumericBlanks(MaxNums))
lNumericBlanks=.true.
ALLOCATE(cAlphaFields(MaxAlphas))
cAlphaFields = ' '
ALLOCATE(cNumericFields(MaxNums))
cNumericFields = ' '

NumOAControllers = GetNumObjectsFound(CurrentModuleObjects(CMO_OAController))
NumERVControllers = GetNumObjectsFound(CurrentModuleObjects(CMO_ERVController))
NumOAControllers = NumOAControllers + NumERVControllers

!     Mangesh code to fix CR 8225 - 09/14/2010
!NumControllerList = GetNumObjectsFound("AirLoopHVAC:ControllerList")
!NumOASys = GetNumObjectsFound("AirLoopHVAC:OutdoorAirSystem")

IF (NumOAControllers.GT.0) THEN

  ALLOCATE(OAController(NumOAControllers))
  ALLOCATE(OAControllerInfo(NumOAControllers))
  CurrentModuleObject = CurrentModuleObjects(CMO_OAController)
  DO OutAirNum=1,NumOAControllers-NumERVControllers
    CALL GetObjectItem(CurrentModuleObject,OutAirNum,AlphArray,NumAlphas,&
                       NumArray,NumNums,IOSTAT,NumBlank=lNumericBlanks,AlphaBlank=lAlphaBlanks, &
                       AlphaFieldNames=cAlphaFields,NumericFieldNames=cNumericFields)

    IsNotOK=.false.
    IsBlank=.false.
    CALL VerifyName(AlphArray(1),OAController%Name,OutAirNum-1,IsNotOK,IsBlank,TRIM(CurrentModuleObject)//' Name')
    IF (IsNotOK) THEN
      ErrorsFound=.true.
      IF (IsBlank) AlphArray(1)='xxxxx'
    ENDIF
    OAController(OutAirNum)%Name  = AlphArray(1)
    OAController(OutAirNum)%ControllerType  = TRIM(CurrentModuleObject)
    OAController(OutAirNum)%ControllerType_Num  = ControllerOutsideAir
    OAController(OutAirNum)%MaxOA = NumArray(2)
    OAController(OutAirNum)%MinOA = NumArray(1)
    OAController(OutAirNum)%MixNode    = &
               GetOnlySingleNode(AlphArray(4),ErrorsFound,TRIM(CurrentModuleObject),AlphArray(1), &
                                 NodeType_Air,NodeConnectionType_Sensor,1,ObjectIsNotParent)
    OAController(OutAirNum)%OANode     = &
               GetOnlySingleNode(AlphArray(5),ErrorsFound,TRIM(CurrentModuleObject),AlphArray(1), &
                                 NodeType_Air,NodeConnectionType_Actuator,1,ObjectIsNotParent)
    IF (.not. CheckOutAirNodeNumber(OAController(OutAirNum)%OANode)) THEN
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid field ')
      CALL ShowContinueError(TRIM(cAlphaFields(5))//'="'//trim(AlphArray(5))//'",'//  &
                              ' must be an OutdoorAir:Node for outdoor air to be effective.')
      ErrorsFound=.true.
    ENDIF
    IF (Samestring(AlphArray(6),'NoEconomizer')) THEN
      OAController(OutAirNum)%Econo = NoEconomizer
    ELSE IF (Samestring(AlphArray(6),'FixedDryBulb')) THEN
      OAController(OutAirNum)%Econo = FixedDryBulb
    ELSE IF (Samestring(AlphArray(6),'FixedEnthalpy')) THEN
      OAController(OutAirNum)%Econo = FixedEnthalpy
    ELSE IF (Samestring(AlphArray(6),'FixedDewPointAndDryBulb')) THEN
      OAController(OutAirNum)%Econo = FixedDewpointAndDryBulb
    ELSE IF (Samestring(AlphArray(6),'DifferentialDryBulb')) THEN
      OAController(OutAirNum)%Econo = DifferentialDryBulb
    ELSE IF (Samestring(AlphArray(6),'DifferentialEnthalpy')) THEN
      OAController(OutAirNum)%Econo = DifferentialEnthalpy
    ELSE IF (Samestring(AlphArray(6),'DifferentialDryBulbAndEnthalpy')) THEN
      OAController(OutAirNum)%Econo = DifferentialDryBulbAndEnthalpy
    ELSE IF (Samestring(AlphArray(6),'ElectronicEnthalpy')) THEN
      OAController(OutAirNum)%Econo = ElectronicEnthalpy
    ELSE
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
         TRIM(cAlphaFields(6))//'="'//trim(AlphArray(6))//'" value.')
      ErrorsFound=.true.
    END IF
    !Bypass choice - Added by Amit for new feature implementation
    IF(Samestring(AlphArray(7),'ModulateFlow')) THEN
      OAController(OutAirNum)%Econbypass = .FALSE.
    ELSE IF(Samestring(AlphArray(7),'MinimumFlowWithBypass')) THEN
      OAController(OutAirNum)%EconBypass = .TRUE.
    ELSE
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
         TRIM(cAlphaFields(7))//'="'//trim(AlphArray(7))//'" value.')
      ErrorsFound=.true.
    END IF

!    IF((OAController(OutAirNum)%Econo > NoEconomizer) .AND. OAController(OutAirNum)%EconBypass) THEN
!      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
!         TRIM(cAlphaFields(6))//'="'//trim(AlphArray(6))//'" and ')
!      CALL ShowContinueError(TRIM(cAlphaFields(7))//'="'//trim(AlphArray(7))//'" incompatible specifications.')
!      Errorsfound = .TRUE.
!    END IF
    IF (SameString(AlphArray(9),'NoLockout')) THEN
      OAController(OutAirNum)%Lockout = NoLockoutPossible
    ELSE IF (SameString(AlphArray(9),'LockoutWithHeating')) THEN
      OAController(OutAirNum)%Lockout = LockoutWithHeatingPossible
    ELSE IF (SameString(AlphArray(9),'LockoutWithCompressor')) THEN
      OAController(OutAirNum)%Lockout = LockoutWithCompressorPossible
    ELSE
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
         TRIM(cAlphaFields(9))//'="'//trim(AlphArray(9))//'" value.')
      ErrorsFound=.true.
    END IF
    IF (SameString(AlphArray(10),'FixedMinimum')) THEN
      OAController(OutAirNum)%FixedMin = .TRUE.
    ELSE
      OAController(OutAirNum)%FixedMin = .FALSE.
    END IF
    IF (lNumericBlanks(3)) THEN
      OAController(OutAirNum)%TempLim = BlankNumeric
    ELSE
      OAController(OutAirNum)%TempLim = NumArray(3)
    END IF

    IF (lNumericBlanks(4)) THEN
      OAController(OutAirNum)%EnthLim = BlankNumeric
    ELSE
      OAController(OutAirNum)%EnthLim = NumArray(4)
    END IF
    IF (lNumericBlanks(5)) THEN
      OAController(OutAirNum)%DPTempLim = BlankNumeric
    ELSE
      OAController(OutAirNum)%DPTempLim = NumArray(5)
    END IF

    IF (lNumericBlanks(6)) THEN
      OAController(OutAirNum)%TempLowLim = BlankNumeric
    ELSE
      OAController(OutAirNum)%TempLowLim = NumArray(6)
    END IF

    IF(.NOT. lAlphaBlanks(8))THEN
      OAController(OutAirNum)%EnthalpyCurvePtr = GetCurveIndex(AlphArray(8)) ! convert curve name to number
      IF (OAController(OutAirNum)%EnthalpyCurvePtr .EQ. 0) THEN
        CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
           TRIM(cAlphaFields(8))//'="'//trim(AlphArray(8))//'" not found.')
        ErrorsFound = .TRUE.
      ELSE
        ! Verify Curve Object, only legal types are Quadratic and Cubic
        SELECT CASE(GetCurveType(OAController(OutAirNum)%EnthalpyCurvePtr))

        CASE('QUADRATIC')

        CASE('CUBIC')

        CASE DEFAULT
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
             TRIM(cAlphaFields(8))//'="'//trim(AlphArray(8))//'".')
          CALL ShowContinueError('...must be Quadratic or Cubic curve.')
          ErrorsFound=.true.
        END SELECT
      END IF
    END IF

    OAController(OutAirNum)%RelNode    = &
               GetOnlySingleNode(AlphArray(2),ErrorsFound,TRIM(CurrentModuleObject),AlphArray(1), &
                                 NodeType_Air,NodeConnectionType_Actuator,1,ObjectIsNotParent)
    OAController(OutAirNum)%RetNode = &
               GetOnlySingleNode(AlphArray(3),ErrorsFound,TRIM(CurrentModuleObject),AlphArray(1), &
                                 NodeType_Air,NodeConnectionType_Sensor,1,ObjectIsNotParent)
    OAController(OutAirNum)%MinOASch = AlphArray(11)
    OAController(OutAirNum)%MinOASchPtr = GetScheduleIndex(AlphArray(11))
    IF (OAController(OutAirNum)%MinOASchPtr == 0 .AND. (.NOT. lAlphaBlanks(11))) THEN
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
             TRIM(cAlphaFields(11))//'="'//trim(AlphArray(11))//'" not found.')
      ErrorsFound=.true.
    ENDIF


   ! Changed by Amit for new feature implementation
    OAController(OutAirNum)%MinOAflowSch = AlphArray(12)
    OAController(OutAirNum)%MinOAflowSchPtr = GetScheduleIndex(AlphArray(12))
    IF (OAController(OutAirNum)%MinOAflowSchPtr == 0 .AND. (.NOT. lAlphaBlanks(12))) THEN
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
             TRIM(cAlphaFields(12))//'="'//trim(AlphArray(12))//'" not found.')
      ErrorsFound=.true.
    ENDIF

    OAController(OutAirNum)%MaxOAflowSch = AlphArray(13)
    OAController(OutAirNum)%MaxOAflowSchPtr = GetScheduleIndex(AlphArray(13))
    IF (OAController(OutAirNum)%MaxOAflowSchPtr == 0 .AND. (.NOT. lAlphaBlanks(13))) THEN
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
             TRIM(cAlphaFields(13))//'="'//trim(AlphArray(13))//'" not found.')
      ErrorsFound=.true.
    ENDIF
    OAController(OutAirNum)%VentilationMechanicalName = AlphArray(14)

!   Check for a time of day economizer control schedule
    OAController(OutAirNum)%EconomizerOASchedPtr = GetScheduleIndex(AlphArray(15))

!   High humidity control option can be used with any economizer flag
    IF(SameString(AlphArray(16),'Yes'))THEN

      OAController(OutAirNum)%HumidistatZoneNum = FindItemInList(AlphArray(17),Zone%Name,NumOfZones)

      ! Get the node number for the zone with the humidistat
      IF (OAController(OutAirNum)%HumidistatZoneNum > 0) THEN
        AirNodeFound=.FALSE.
        AirLoopFound=.FALSE.
        OASysFound  =.FALSE.
        DO ControlledZoneNum = 1,NumOfZones
          IF (ZoneEquipConfig(ControlledZoneNum)%ActualZoneNum /= OAController(OutAirNum)%HumidistatZoneNum) CYCLE
!           Find the controlled zone number for the specified humidistat location
            OAController(OutAirNum)%NodeNumofHumidistatZone=ZoneEquipConfig(ControlledZoneNum)%ZoneNode
!           Determine which OA System uses this OA Controller
            OASysIndex = 0
            DO OASysNum = 1, NumOASystems
              DO OAControllerNum = 1, OutsideAirSys(OASysNum)%NumControllers
              IF(.NOT. SameString(OutsideAirSys(OASysNum)%ControllerType(OAControllerNum),CurrentModuleObject) .OR. &
                 .NOT. SameString(OutsideAirSys(OASysNum)%ControllerName(OAControllerNum),OAController(OutAirNum)%Name)) CYCLE
                OASysIndex = OASysNum
                OASysFound = .TRUE.
                EXIT
              END DO
              IF(OASysFound) EXIT
            END DO
!           Determine if furnace is on air loop served by the humidistat location specified
            AirLoopNumber = ZoneEquipConfig(ControlledZoneNum)%AirLoopNum
            IF(AirLoopNumber .GT. 0 .AND. OASysIndex .GT. 0)THEN
              DO BranchNum = 1, PrimaryAirSystem(AirLoopNumber)%NumBranches
                DO CompNum = 1, PrimaryAirSystem(AirLoopNumber)%Branch(BranchNum)%TotalComponents
                  IF(.NOT. SameString(PrimaryAirSystem(AirLoopNumber)%Branch(BranchNum)%Comp(CompNum)%Name, &
                           OutsideAirSys(OASysIndex)%Name) .OR. &
                     .NOT. SameString(PrimaryAirSystem(AirLoopNumber)%Branch(BranchNum)%Comp(CompNum)%TypeOf, &
                           'AirLoopHVAC:OutdoorAirSystem'))CYCLE
                  AirLoopFound=.TRUE.
                  EXIT
                END DO
                IF(AirLoopFound)EXIT
              END DO
              DO HstatZoneNum = 1, NumHumidityControlZones
                IF(HumidityControlZone(HstatZoneNum)%ActualZoneNum .NE. OAController(OutAirNum)%HumidistatZoneNum)CYCLE
                AirNodeFound=.TRUE.
                EXIT
              END DO
            ELSE
              IF(AirLoopNumber .EQ. 0)THEN
                CALL ShowSevereError('Did not find a Primary Air Loop for ' &
                                    //TRIM(OAController(OutAirNum)%ControllerType)//' = "' &
                                    //TRIM(OAController(OutAirNum)%Name)//'"')
                CALL ShowContinueError('Specified '//TRIM(cAlphaFields(17))//' = '//TRIM(AlphArray(17)))
                ErrorsFound=.TRUE.
              END IF
              IF(OASysIndex .EQ. 0)THEN
                CALL ShowSevereError('Did not find an AirLoopHVAC:OutdoorAirSystem for ' &
                                     //TRIM(OAController(OutAirNum)%ControllerType)//' = "' &
                                     //TRIM(OAController(OutAirNum)%Name)//'"')
                ErrorsFound=.TRUE.
              END IF
            END IF
          EXIT
        ENDDO
        IF (.not. AirNodeFound) THEN
          CALL ShowSevereError('Did not find Air Node (Zone with Humidistat), ' &
                               //TRIM(OAController(OutAirNum)%ControllerType)//' = "' &
                               //TRIM(OAController(OutAirNum)%Name)//'"')
          CALL ShowContinueError('Specified '//TRIM(cAlphaFields(17))//' = '//TRIM(AlphArray(17)))
          CALL ShowContinueError('Both a ZoneHVAC:EquipmentConnections object and a ZoneControl:Humidistat object' &
                                 //' must be specified for this zone.')
          ErrorsFound=.TRUE.
        ENDIF
        IF (.not. AirLoopFound) THEN
          CALL ShowSevereError('Did not find correct Primary Air Loop for ' &
                               //TRIM(OAController(OutAirNum)%ControllerType)//' = "' &
                               //TRIM(OAController(OutAirNum)%Name)//'"')
          CALL ShowContinueError(TRIM(cAlphaFields(17))//' = '//TRIM(AlphArray(17))// &
                                 ' is not served by this Primary Air Loop equipment.')
          ErrorsFound=.TRUE.
        ENDIF
      ELSE
        CALL ShowSevereError('Did not find Air Node (Zone with Humidistat), ' &
                            //TRIM(OAController(OutAirNum)%ControllerType)//' = "' &
                            //TRIM(OAController(OutAirNum)%Name)//'"')
        CALL ShowContinueError('Specified '//TRIM(cAlphaFields(17))//' = '//TRIM(AlphArray(17)))
        CALL ShowContinueError('Both a ZoneHVAC:EquipmentConnections object and a ZoneControl:Humidistat object' &
                               //' must be specified for this zone.')
        ErrorsFound=.TRUE.
      ENDIF

      OAController(OutAirNum)%HighRHOAFlowRatio = NumArray(7)
      IF(OAController(OutAirNum)%HighRHOAFlowRatio .LE. 0.0d0 .AND. NumNums .GT. 6)THEN
        CALL ShowWarningError(TRIM(CurrentModuleObject)//' "'//TRIM(OAController(OutAirNum)%Name)//'"')
        CALL ShowContinueError(' '//TRIM(cNumericFields(7))//' must be greater than 0.')
        CALL ShowContinueError(' '//TRIM(cNumericFields(7))//' is reset to 1 and the simulation continues.')
        OAController(OutAirNum)%HighRHOAFlowRatio = 1.0d0
      END IF

      IF(SameString(AlphArray(16),'Yes') .AND. OAController(OutAirNum)%FixedMin)THEN
        IF(OAController(OutAirNum)%MaxOA .GT. 0.0d0 .AND. OAController(OutAirNum)%MinOA .NE. AutoSize)THEN
          OAFlowRatio = OAController(OutAirNum)%MinOA/OAController(OutAirNum)%MaxOA
          IF(OAController(OutAirNum)%HighRHOAFlowRatio .LT. OAFlowRatio)THEN
            CALL ShowWarningError(TRIM(CurrentModuleObject)//' "'//TRIM(OAController(OutAirNum)%Name)//'"')
            CALL ShowContinueError('... A fixed minimum outside air flow rate and high humidity control have been specified.')
            CALL ShowContinueError('... The '//TRIM(cNumericFields(7))//' is less than the ratio of'// &
                                   ' the outside air controllers minimum to maximum outside air flow rate.')
            CALL ShowContinueError('... Controller '//TRIM(cNumericFields(1))//' = ' &
                                    //TRIM(TrimSigDigits(OAController(OutAirNum)%MinOA,4))//' m3/s.')
            CALL ShowContinueError('... Controller '//TRIM(cNumericFields(2))//' = ' &
                                    //TRIM(TrimSigDigits(OAController(OutAirNum)%MaxOA,4))//' m3/s.')
            CALL ShowContinueError('... Controller minimum to maximum flow ratio = ' &
                                    //TRIM(TrimSigDigits(OAFlowRatio,4))//'.')
            CALL ShowContinueError('... '//TRIM(cNumericFields(7))//' = ' &
                                    //TRIM(TrimSigDigits(OAController(OutAirNum)%HighRHOAFlowRatio,4))//'.')
          END IF
        END IF
      END If

      IF(SameString(AlphArray(18), 'Yes'))THEN
        OAController(OutAirNum)%ModifyDuringHighOAMoisture = .FALSE.
      ELSEIF (SameString(AlphArray(18), 'No'))THEN
        OAController(OutAirNum)%ModifyDuringHighOAMoisture = .TRUE.
      ELSE
        CALL ShowSevereError(TRIM(CurrentModuleObject)//' "'//TRIM(OAController(OutAirNum)%Name)//'", invalid field value')
        CALL ShowContinueError('...'//trim(cAlphaFields(18))//'="'//trim(AlphArray(18))//'" - valid values are "Yes" or "No".')
        ErrorsFound=.TRUE.
      END IF

    ELSEIF (SameString(AlphArray(16),'No') .or. lAlphaBlanks(16))THEN
      IF (NumAlphas >= 18) THEN
        IF(.not. SameString(AlphArray(18), 'Yes') .and. .not. SameString(AlphArray(18), 'No'))THEN
          CALL ShowSevereError(TRIM(CurrentModuleObject)//' "'//TRIM(OAController(OutAirNum)%Name)//'", invalid field value')
          CALL ShowContinueError('...'//trim(cAlphaFields(18))//'="'//trim(AlphArray(18))//'" - valid values are "Yes" or "No".')
          ErrorsFound=.TRUE.
        END IF
      ENDIF
    ELSE  ! Invalid field 16
      CALL ShowSevereError(TRIM(CurrentModuleObject)//' "'//TRIM(OAController(OutAirNum)%Name)//'", invalid field value')
      CALL ShowContinueError('...'//trim(cAlphaFields(16))//'="'//trim(AlphArray(16))//'" - valid values are "Yes" or "No".')
      ErrorsFound=.TRUE.
      IF (NumAlphas >= 18) THEN
        IF(.not. SameString(AlphArray(18), 'Yes') .and. .not. SameString(AlphArray(18), 'No'))THEN
          CALL ShowSevereError(TRIM(CurrentModuleObject)//' "'//TRIM(OAController(OutAirNum)%Name)//'", invalid field value')
          CALL ShowContinueError('...'//trim(cAlphaFields(18))//'="'//trim(AlphArray(18))//'" - valid values are "Yes" or "No".')
          ErrorsFound=.TRUE.
        END IF
      ENDIF
    END IF

    IF(NumAlphas .GT. 18)THEN
      IF(.NOT. lAlphaBlanks(19))THEN
        IF(SameString(AlphArray(19), 'BypassWhenWithinEconomizerLimits'))THEN
          OAController(OutAirNum)%HeatRecoveryBypassControlType = BypassWhenWithinEconomizerLimits
        ELSE IF(SameString(AlphArray(19), 'BypassWhenOAFlowGreaterThanMinimum'))THEN
          OAController(OutAirNum)%HeatRecoveryBypassControlType = BypassWhenOAFlowGreaterThanMinimum
        ELSE
          CALL ShowWarningError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
             TRIM(cAlphaFields(19))//'="'//trim(AlphArray(19))//'".')
          CALL ShowContinueError('...assuming "BypassWhenWithinEconomizerLimits" and the simulation continues.')
          OAController(OutAirNum)%HeatRecoveryBypassControlType = BypassWhenWithinEconomizerLimits
        END IF
      END IF
    END IF

    IF(SameString(AlphArray(16),'Yes') .AND. OAController(OutAirNum)%Econo .EQ. NoEconomizer)THEN
      CALL ShowWarningError(TRIM(OAController(OutAirNum)%ControllerType)//' "' &
                              //TRIM(OAController(OutAirNum)%Name)//'"')
      CALL ShowContinueError('...Economizer operation must be enabled when '//TRIM(cAlphaFields(16))//' is set to YES.')
      CALL ShowContinueError('...The high humidity control option will be disabled and the simulation continues.')
    END IF

!     Mangesh code to fix CR 8225 - 09/14/2010
    IF ((NumControllerLists > 0) .AND. (NumOASystems > 0)) THEN
OALp: DO AirLoopNumber = 1, NumPrimaryAirSys
        DesSupplyVolFlowRate = AirLoopFlow(AirLoopNumber)%DesSupply / StdRhoAir
        DO BranchNum = 1, PrimaryAirSystem(AirLoopNumber)%NumBranches
          DO CompNum = 1, PrimaryAirSystem(AirLoopNumber)%Branch(BranchNum)%TotalComponents
            DO ControllerListNum = 1, NumControllerLists
              ControllerNum = ControllerLists(ControllerListNum)%NumControllers
              IF (ControllerNum > 0) THEN
                DO Num = 1, ControllerNum
                  DO SysNum = 1, NumOASystems
                    IF (SameString(PrimaryAirSystem(AirLoopNumber)%Branch(BranchNum)%Comp(CompNum)%Name,&
                        OutsideAirSys(SysNum)%Name)) THEN
                      IF (SameString(OutsideAirSys(SysNum)%ControllerListName,ControllerLists(ControllerListNum)%Name)) THEN
                        IF (SameString(OAController(OutAirNum)%Name,ControllerLists(ControllerListNum)%ControllerName(Num))) THEN
                          IF ((OAController(OutAirNum)%MinOA-DesSupplyVolFlowRate) > .0001d0) THEN
                            CALL ShowWarningError('Minimum outside air flow rate for OA Controller "' //   &
                               TRIM(OAController(OutAirNum)%Name) // &
                               '" is greater than maximum supply flow rate for Air Loop "'//  &
                               TRIM(PrimaryAirSystem(AirLoopNumber)%Name)//'"')
                            CALL ShowContinueError('...Min for OA Controller=['//  &
                                TRIM(RoundSigDigits(OAController(OutAirNum)%MinOA,6))//'], Max Supply Flow Rate=['//  &
                                TRIM(RoundSigDigits(DesSupplyVolFlowRate,6))//'].')
                            Call ShowContinueError('...Minimum outside air flow ' &
                                        // 'rate will be reset to equal maximum supply flow rate')
                            OAController(OutAirNum)%MinOA = DesSupplyVolFlowRate
                          ELSEIF ((OAController(OutAirNum)%MinOA-DesSupplyVolFlowRate) > 0.0d0) THEN
                            OAController(OutAirNum)%MinOA = DesSupplyVolFlowRate
                          ENDIF
                          Exit OALp  ! Found and checked
                        END IF
                      ENDIF
                    ENDIF
                  END DO
                END DO
              ENDIF
            END DO
          END DO
        END DO
      END DO OALp
    ENDIF

    ! add applicable faults identifier to avoid string comparison at each time step
    !  loop through each fault for each OA controller
    DO i = 1, NumFaults
      IF (Faults(i)%ControllerTypeEnum /= iController_AirEconomizer) CYCLE
      IF (SameString(OAController(OutAirNum)%Name, Faults(i)%ControllerName)) THEN
        Faults(i)%ControllerID = OutAirNum
      ENDIF
    ENDDO

  END DO  ! LOOP FOR OutAirNum

  IF (ErrorsFound) THEN
    DEALLOCATE(AlphArray)
    DEALLOCATE(NumArray)
    DEALLOCATE(lNumericBlanks)
    DEALLOCATE(lAlphaBlanks)
    DEALLOCATE(cAlphaFields)
    DEALLOCATE(cNumericFields)
    CALL ShowFatalError(RoutineName//'Errors found in getting '//TRIM(CurrentModuleObject)//' inputs.')
  ENDIF

END IF

GetOAControllerInputFlag=.false.

! Find the maximum number of zones attached to any air loop, used for mechanical ventilation objects
MaxNumAirLoopZones = 0
DO NumofAirLoop = 1, NumPrimaryAirSys
  NumAirLoopZones = AirToZoneNodeInfo(NumofAirLoop)%NumZonesCooled + &
           AirToZoneNodeInfo(NumofAirLoop)%NumZonesHeated
! NumZonesCooled + NumZonesHeated must be > 0 or Fatal error is issued in SimAirServingZones
  MaxNumAirLoopZones = MAX(MaxNumAirLoopZones, NumAirLoopZones) ! Max number of zones on any air loop being simulated
END DO

IF (NumPrimaryAirSys .GT. 0) THEN
  ALLOCATE (AirLoopZoneInfo(NumPrimaryAirSys)) ! Defined in DataAirLoop.f90
END IF

! Find the zones attached to each air loop
DO NumofAirLoop = 1, NumPrimaryAirSys
  ALLOCATE (AirLoopZoneInfo(NumofAirLoop)%Zone(MaxNumAirLoopZones))
  ALLOCATE (AirLoopZoneInfo(NumofAirLoop)%ActualZoneNumber(MaxNumAirLoopZones))
  NumAirLoopCooledZones = AirToZoneNodeInfo(NumofAirLoop)%NumZonesCooled
  AirLoopZones = NumAirLoopCooledZones
  NumAirLoopHeatedZones = AirToZoneNodeInfo(NumofAirLoop)%NumZonesHeated
  ! Store cooling zone numbers in AirLoopZoneInfo data structure
  DO NumAirLoopCooledZonesTemp = 1, NumAirLoopCooledZones
    AirLoopZoneInfo(NumofAirLoop)%Zone(NumAirLoopCooledZonesTemp) = &
       AirToZoneNodeInfo(NumofAirLoop)%CoolCtrlZoneNums(NumAirLoopCooledZonesTemp)
    AirLoopZoneInfo(NumofAirLoop)%ActualZoneNumber(NumAirLoopCooledZonesTemp) = &
       ZoneEquipConfig(AirToZoneNodeInfo(NumofAirLoop)%CoolCtrlZoneNums(NumAirLoopCooledZonesTemp))%ActualZoneNum
  END DO
  ! Store heating zone numbers in AirLoopZoneInfo data structure
  ! Only store zone numbers that aren't already defined as cooling zones above
  DO NumAirLoopHeatedZonesTemp = 1,NumAirLoopHeatedZones
    ZoneNum = AirToZoneNodeInfo(NumofAirLoop)%HeatCtrlZoneNums(NumAirLoopHeatedZonesTemp)
    CommonZone = .FALSE.
    DO NumAirLoopCooledZonesTemp = 1, NumAirLoopCooledZones
      IF(ZoneNum /= AirToZoneNodeInfo(NumofAirLoop)%CoolCtrlZoneNums(NumAirLoopCooledZonesTemp)) CYCLE
        CommonZone = .TRUE.
    END DO
    IF(.NOT. CommonZone) THEN
       AirLoopZones = AirLoopZones + 1
       AirLoopZoneInfo(NumofAirLoop)%Zone(AirLoopZones) = ZoneNum
       AirLoopZoneInfo(NumofAirLoop)%ActualZoneNumber(AirLoopZones) = ZoneEquipConfig(ZoneNum)%ActualZoneNum
    END IF
  END DO
  AirLoopZoneInfo(NumofAirLoop)%NumZones = AirLoopZones
END DO

! Process Controller:MechanicalVentilation objects
CurrentModuleObject = CurrentModuleObjects(CMO_MechVentilation)
NumVentMechControllers = GetNumObjectsFound(CurrentModuleObject)
IF(NumVentMechControllers .GT. 0) THEN
  ALLOCATE(VentilationMechanical(NumVentMechControllers))
  DO VentMechNum=1,NumVentMechControllers
    CALL GetObjectItem(CurrentModuleObject,VentMechNum,AlphArray,NumAlphas,&
                       NumArray,NumNums,IOSTAT,NumBlank=lNumericBlanks,AlphaBlank=lAlphaBlanks, &
                       AlphaFieldNames=cAlphaFields,NumericFieldNames=cNumericFields)

    MechVentZoneCount = 0

    NumGroups = (NumAlphas + NumNums - 5)/3
    IF (MOD((NumAlphas + NumNums - 5),3) /= 0) NumGroups=NumGroups+1
    VentilationMechanical(VentMechNum)%Name  = AlphArray(1)

    ! Check Controller:MechanicalVentilation object name
    ErrorInName = .FALSE.
    IsBlank = .FALSE.
    CALL VerifyName(AlphArray(1),VentilationMechanical%Name,VentMechNum-1,ErrorInName,IsBlank,TRIM(CurrentModuleObject)//' Name')
    IF (ErrorInName) THEN
      ErrorsFound = .TRUE.
      IF (IsBlank) AlphArray(1)='xxxxx'
    END IF

    VentilationMechanical(VentMechNum)%SchName = AlphArray(2)
    IF (lAlphaBlanks(2)) THEN
      VentilationMechanical(VentMechNum)%SchPtr = ScheduleAlwaysOn
    ELSE
      VentilationMechanical(VentMechNum)%SchPtr = GetScheduleIndex(AlphArray(2))  ! convert schedule name to pointer
      IF (VentilationMechanical(VentMechNum)%SchPtr .EQ. 0) THEN
        CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" invalid '//  &
               TRIM(cAlphaFields(2))//'="'//TRIM(AlphArray(2))//'" not found.')
        ErrorsFound=.TRUE.
      END IF
    ENDIF

!   Adding new flag for DCV
    IF (SameString(AlphArray(3), 'Yes')) THEN
        VentilationMechanical(VentMechNum)%DCVFlag = .TRUE.
    ELSEIF (SameString(AlphArray(3), 'No') .or. lAlphaBlanks(3)) THEN
        VentilationMechanical(VentMechNum)%DCVFlag = .FALSE.
    ELSE
      CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" invalid value '//  &
             TRIM(cAlphaFields(3))//'="'//TRIM(AlphArray(3))//'".')
      CALL ShowContinueError('...Valid values are "Yes" or "No".')
      ErrorsFound=.TRUE.
    ENDIF

    ! System outdoor air method
    SELECT CASE (MakeUPPERCase(AlphArray(4)))
      CASE ('ZONESUM')  ! Simplifily sum the zone OA flow rates
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_ZoneSum
      CASE ('VRP','VENTILATIONRATEPROCEDURE')      ! Ventilation Rate Procedure based on ASHRAE Standard 62.1-2007
        IF (SameString(AlphArray(4),'VRP')) THEN
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'".')
          CALL ShowContinueError('Deprecated value in '//TRIM(cAlphaFields(4))//'="'//    &
              TRIM(AlphArray(4))//'", using VentilationRateProcedure.')
        ENDIF
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_VRP
      CASE ('IAQP','INDOORAIRQUALITYPROCEDURE')      ! Indoor Air Quality Procedure based on ASHRAE Standard 62.1-2007
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_IAQP
        IF (SameString(AlphArray(4),'IAQP')) THEN
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'".')
          CALL ShowContinueError('Deprecated value in '//TRIM(cAlphaFields(4))//'="'//    &
              TRIM(AlphArray(4))//'", using IndoorAirQualityProcedure.')
        ENDIF
        IF (.NOT. Contaminant%CO2Simulation) Then
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" valid '//  &
             TRIM(cAlphaFields(2))//'="'//TRIM(AlphArray(2))//'" requires CO2 simulation.')
          CALL ShowContinueError('The choice must be Yes for the field Carbon Dioxide Concentration in ZoneAirContaminantBalance')
          ErrorsFound=.TRUE.
        END IF
      CASE ('PROPORTIONALCONTROL')      ! Proportional Control based on ASHRAE Standard 62.1-2004
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_ProportionalControl
        IF (.NOT. Contaminant%CO2Simulation) Then
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" valid '//  &
             TRIM(cAlphaFields(2))//'="'//TRIM(AlphArray(2))//'" requires CO2 simulation.')
          CALL ShowContinueError('The choice must be Yes for the field Carbon Dioxide Concentration in ZoneAirContaminantBalance')
          ErrorsFound=.TRUE.
        END IF
      CASE ('INDOORAIRQUALITYPROCEDUREGENERICCONTAMINANT')   ! Indoor Air Quality Procedure based on generic contaminant setpoint
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_IAQPGC
        IF (.NOT. Contaminant%GenericContamSimulation) Then
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" valid '//  &
             TRIM(cAlphaFields(2))//'="'//TRIM(AlphArray(2))//'" requires generic contaminant simulation.')
          CALL ShowContinueError('The choice must be Yes for the field Generic Contaminant Concentration in ' &
               //' ZoneAirContaminantBalance')
          ErrorsFound=.TRUE.
        END IF
      CASE ('INDOORAIRQUALITYPROCEDURECOMBINED') ! Indoor Air Quality Procedure based on both generic contaminant and CO2 setpoint
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_IAQPCOM
        IF (.NOT. Contaminant%GenericContamSimulation) Then
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" valid '//  &
             TRIM(cAlphaFields(2))//'="'//TRIM(AlphArray(2))//'" requires generic contaminant simulation.')
          CALL ShowContinueError('The choice must be Yes for the field Generic Contaminant Concentration in ' &
               //' ZoneAirContaminantBalance')
          ErrorsFound=.TRUE.
        END IF
        IF (.NOT. Contaminant%CO2Simulation) Then
          CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" valid '//  &
             TRIM(cAlphaFields(2))//'="'//TRIM(AlphArray(2))//'" requires CO2 simulation.')
          CALL ShowContinueError('The choice must be Yes for the field Carbon Dioxide Concentration in ZoneAirContaminantBalance')
          ErrorsFound=.TRUE.
        END IF
      CASE DEFAULT      ! If specified incorrectly, show errors
        VentilationMechanical(VentMechNum)%SystemOAMethod = SOAM_ZoneSum
        CALL ShowWarningError(TRIM(CurrentModuleObject)//'="'//TRIM(AlphArray(1))//'" incorrect specification for '//  &
             TRIM(cAlphaFields(4))//', the ZoneSum method will be used.')
        !ErrorsFound=.TRUE.
    END SELECT

    !Zone maximum outdoor air fraction
    VentilationMechanical(VentMechNum)%ZoneMaxOAFraction = NumArray(1)

    ALLOCATE(VentMechZoneName(NumGroups))
    ALLOCATE(DesignSpecOAObjName(NumGroups))
    ALLOCATE(DesignSpecOAObjIndex(NumGroups))
    ALLOCATE(VentMechZoneOAAreaRate(NumGroups))
    ALLOCATE(VentMechZoneOAPeopleRate(NumGroups))
    ALLOCATE(VentMechZoneOAFlow(NumGroups))
    ALLOCATE(VentMechZoneOAACH(NumGroups))
    ALLOCATE(VentMechZoneADEffCooling(NumGroups))
    ALLOCATE(VentMechZoneADEffHeating(NumGroups))
    ALLOCATE(VentMechZoneADEffSchPtr(NumGroups))
    ALLOCATE(VentMechZoneADEffSchName(NumGroups))

    ALLOCATE(VentMechZoneSecondaryRecirculation(NumGroups))
    ALLOCATE(DesignSpecZoneADObjName(NumGroups))
    ALLOCATE(DesignSpecZoneADObjIndex(NumGroups))

    VentMechZoneName = ' '
    DesignSpecOAObjName = ' '
    DesignSpecOAObjIndex = 0
    VentMechZoneOAAreaRate = 0.0d0
    VentMechZoneOAPeopleRate = 0.0d0

    ! use defaults for Cooling and Heating Effectiveness
    VentMechZoneADEffCooling = 1.0d0
    VentMechZoneADEffHeating = 1.0d0
    VentMechZoneADEffSchPtr = 0
    VentMechZoneADEffSchName = ' '
    VentMechZoneSecondaryRecirculation = 0.0d0
    DesignSpecZoneADObjName = ' '
    DesignSpecZoneADObjIndex = 0

!   First time through find the total number of zones requiring mechanical ventilation
!   May include duplicate zones. Will check for duplicate zones further down in this subroutine.
    DO groupNum = 1, NumGroups
      VentMechZoneName(groupNum) = AlphArray((groupNum-1)*3+5)

      DO OutAirNum = 1, numOAControllers
          IF (OAController(OutAirNum)%VentilationMechanicalName == VentilationMechanical(VentMechNum)%Name .AND. &
                    VentilationMechanical(VentMechNum)%DCVFlag) THEN
              AirLoopControlInfo(OutAirNum)%AirLoopDCVFlag = .TRUE.
          ELSE
              AirLoopControlInfo(OutAirNum)%AirLoopDCVFlag = .FALSE.
          ENDIF
      END DO

!     Getting OA details from design specification OA object
      IF (.not. lAlphaBlanks((groupNum-1)*3+6)) THEN
        DesignSpecOAObjName(groupNum) = AlphArray((groupNum-1)*3+6)
        ObjIndex = FindItemInList(DesignSpecOAObjName(groupNum),OARequirements%Name,numOARequirements)
        DesignSpecOAObjIndex(groupNum) = ObjIndex

        IF (ObjIndex > 0) THEN
          VentMechZoneOAAreaRate(groupNum)   = OARequirements(ObjIndex)%OAFlowPerArea
          VentMechZoneOAPeopleRate(groupNum) = OARequirements(ObjIndex)%OAFlowPerPerson
          VentMechZoneOAFlow(groupNum)       = OARequirements(ObjIndex)%OAFlowPerZone
          VentMechZoneOAACH(groupNum)        = OARequirements(ObjIndex)%OAFlowACH
!push this check to later...
!          IF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_ProportionalControl) THEN
!            IF (VentMechZoneOAACH(groupNum) .GT. 0.d0 .OR. VentMechZoneOAFlow(groupNum) .GT. 0.d0) THEN
!              CALL ShowWarningError(RoutineName//TRIM(CurrentModuleObject)//' = "'//  &
!                                                TRIM(VentilationMechanical(VentMechNum)%Name))
!              CALL ShowContinueError('Inappropriate outdoor air method for '//TRIM(cAlphaFields((groupNum-1)*3+6))//  &
!                                     ' = "'//TRIM(DesignSpecOAObjName(groupNum))//'".')
!              CALL ShowContinueError('Since '//TRIM(cAlphaFields(4))//' = "'//TRIM(AlphArray(4))//'", '//  &
!                                     'AirChanges/Hour or Flow/Zone outdoor air methods are not valid. '// &
!                                     TRIM(AlphArray(4))//' will be modeled. Simulation continues.... ')
!            ENDIF
!          ENDIF
        ELSE
          CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
             trim(VentilationMechanical(VentMechNum)%Name)//'", invalid')
          CALL ShowContinueError('... not found '//trim(cAlphaFields((groupNum-1)*3+6))//'="'//  &
                  TRIM(DesignSpecOAObjName(groupNum))//'".')
          ErrorsFound = .TRUE.
        ENDIF
      ELSE
        ! check whether a design specification OA object is referenced by a Sizing:Zone object for the current zone
        !  otherwise generates an error
!        IF (DoZoneSizing) THEN
!          ObjIndex = FindItemInList(VentMechZoneName(groupNum),ZoneSizingInput%ZoneName,NumZoneSizingInput)
!          ObjIndex = ZoneSizingInput(ObjIndex)%ZoneDesignSpecOAIndex
!          IF (ObjIndex > 0) THEN
!            VentMechZoneOAAreaRate(groupNum)   = OARequirements(ObjIndex)%OAFlowPerArea
!            VentMechZoneOAPeopleRate(groupNum) = OARequirements(ObjIndex)%OAFlowPerPerson
!            VentMechZoneOAFlow(groupNum)       = OARequirements(ObjIndex)%OAFlowPerZone
!            VentMechZoneOAACH(groupNum)        = OARequirements(ObjIndex)%OAFlowACH
!          ELSE
!            CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
!               trim(VentilationMechanical(VentMechNum)%Name)//'", missing')
!            CALL ShowContinueError('...blank (required entry)'//trim(cAlphaFields((groupNum-1)*3+6)))
!            ErrorsFound = .TRUE.
!          ENDIF
      ENDIF

!      IF (VentMechZoneOAPeopleRate(groupNum) <= 0.0d0 .AND. &
!                             VentilationMechanical(VentMechNum)%DCVFlag) THEN
!          CALL ShowWarningError(TRIM(CurrentModuleObject)//'="'//trim(TRIM(VentilationMechanical(VentMechNum)%Name))//  &
!             '", Zone OA/person rate')
!          CALL ShowContinueError('Zone outside air per person rate not set in Design '//  &
!             'Specification Outdoor Air Object="'// &
!             TRIM(DesignSpecOAObjName(groupNum))//'".')
!      ENDIf
!
!      IF (VentMechZoneOAAreaRate(groupNum) .LT. 0.0d0) THEN
!        CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//  &
!           '" has invalid Outdoor Air flow per area specified in object "' &
!              // TRIM(OARequirements(DesignSpecOAObjIndex(groupNum))%Name) //'". Value must be >= 0.0.')
!        ErrorsFound = .TRUE.
!      END IF
!      IF (VentMechZoneOAPeopleRate(groupNum) .LT. 0.0d0) THEN
!        CALL ShowSevereError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//  &
!           '" has invalid Outdoor Air flow per person specified in object "' &
!              // TRIM(OARequirements(DesignSpecOAObjIndex(groupNum))%Name) //'". Value must be >= 0.0.')
!        ErrorsFound = .TRUE.
!      END IF
!
     ! Get zone air distribution details from design specification Zone Air Distribution object
      IF (.not. lAlphaBlanks((groupNum-1)*3+7)) THEN
        DesignSpecZoneADObjName(groupNum) = AlphArray((groupNum-1)*3+7)
        ObjIndex=FindItemInList(DesignSpecZoneADObjName(groupNum),ZoneAirDistribution%Name,numZoneAirDistribution)
        DesignSpecZoneADObjIndex(groupNum) = ObjIndex

        IF (ObjIndex > 0) THEN
          ! found the design specification Zone Air Distribution object
          VentMechZoneADEffCooling(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneADEffCooling
          VentMechZoneADEffHeating(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneADEffHeating
          VentMechZoneSecondaryRecirculation(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneSecondaryRecirculation
          VentMechZoneADEffSchName(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneADEffSchName
          VentMechZoneADEffSchPtr(groupNum) = GetScheduleIndex(VentMechZoneADEffSchName(groupNum))
        ELSE
          ! Cannot find the design specification Zone Air Distribution object
          CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
            TRIM(VentilationMechanical(VentMechNum)%Name)//'", invalid')
          CALL ShowContinueError('... not found '//trim(cAlphaFields((groupNum-1)*3+7))//'="'//  &
            TRIM(DesignSpecZoneADObjName(groupNum))//'".')
          ErrorsFound = .TRUE.
        ENDIF
!push check to later
!       ! Error check to see if a single duct air terminal is assigned to a zone that has zone secondary recirculation
!
!        IF (VentMechZoneSecondaryRecirculation(groupNum) > 0.0d0) THEN
!          ZoneNum = FindItemInList(VentMechZoneName(groupNum),Zone%Name,NumOfZones)
!          IF (ZoneNum > 0) THEN
!            EquipListIndex = ZoneEquipConfig(ZoneNum)%EquipListIndex
!            IF (EquipListIndex > 0) THEN
!              EquipLoop: DO EquipListNum = 1, NumofZoneEquipLists
!                IF (EquipListNum == EquipListIndex) THEN
!                  DO EquipNum = 1, ZoneEquipList(EquipListNum)%NumOfEquipTypes
!                    IF (SameString(ZoneEquipList(EquipListNum)%EquipType(EquipNum),'ZONEHVAC:AIRDISTRIBUTIONUNIT')) THEN
!                      DO ADUNum = 1, NumAirDistUnits
!                        IF (SameString(ZoneEquipList(EquipListNum)%EquipName(EquipNum),AirDistUnit(ADUNum)%Name)) THEN
!                          IF ((AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctVAVReheat) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctConstVolReheat) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctVAVNoReheat) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctVAVReheatVSFan) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctCBVAVReheat) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctCBVAVNoReheat) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctConstVolCooledBeam) &
!                             .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == DualDuctVAVOutdoorAir)) THEN
!                            CALL ShowWarningError(RoutineName//  &
!                                 'A zone secondary recirculation fraction is specified for zone served by ')
!                            CALL ShowContinueError('...terminal unit "'//TRIM(AirDistUnit(ADUNum)%Name)//  &
!                                 '" , that indicates a single path system')
!                            CALL ShowContinueError('...The zone secondary recirculation for that zone was set to 0.0')
!                            VentMechZoneSecondaryRecirculation(groupNum) = 0.0d0
!                          END IF
!                          Exit EquipLoop
!                        END IF
!                      END DO
!                    END IF
!                  END DO
!                END IF
!              END DO EquipLoop
!            END IF
!          END IF
!        END IF
      ELSE
        ! check whether a ZoneAirDistribution object is referenced by the Sizing:Zone object for the current zone
        ! If not, use defaults which are already set
!        IF (DoZoneSizing) THEN
!          ObjIndex = FindItemInList(VentMechZoneName(groupNum),ZoneSizingInput%ZoneName,NumZoneSizingInput)
!          ObjIndex = ZoneSizingInput(ObjIndex)%ZoneAirDistributionIndex
!          IF (ObjIndex > 0) THEN
!            VentMechZoneADEffCooling(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneADEffCooling
!            VentMechZoneADEffHeating(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneADEffHeating
!            VentMechZoneSecondaryRecirculation(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneSecondaryRecirculation
!            VentMechZoneADEffSchName(groupNum) = ZoneAirDistribution(ObjIndex)%ZoneADEffSchName
!            VentMechZoneADEffSchPtr(groupNum) = GetScheduleIndex(VentMechZoneADEffSchName(groupNum))
!          ENDIF
!        ENDIF
      ENDIF

      ZoneNum = FindItemInList(VentMechZoneName(groupNum),Zone%Name,NumOfZones)
      IF(ZoneNum .GT. 0)THEN
         MechVentZoneCount = MechVentZoneCount + 1
      ELSE
        ZoneListNum = FindItemInList(VentMechZoneName(groupNum),ZoneList%Name,NumOfZoneLists)
        IF(ZoneListNum .GT. 0)THEN
            MechVentZoneCount = MechVentZoneCount + ZoneList(ZoneListNum)%NumofZones
        ELSE
          CALL ShowWarningError(TRIM(CurrentModuleObject)//'="'//trim(AlphArray(1))//'" invalid '//  &
               TRIM(cAlphaFields((groupNum-1)*3+5))//' not found.')
          CALL ShowContinueError('Missing '//TRIM(cAlphaFields((groupNum-1)*3+5))//' = '&
                                 //TRIM(VentMechZoneName(groupNum)))
          ErrorsFound = .TRUE.
        END IF
      END IF
    END DO

    VentilationMechanical(VentMechNum)%NumofVentMechZones = MechVentZoneCount

!   Now allocate and store unique zone and associated ventilation rate information
    ALLOCATE(VentilationMechanical(VentMechNum)%Zone(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneOAAreaRate(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneOAFlow(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneOAACH(MechVentZoneCount))
    VentilationMechanical(VentMechNum)%Zone = 0
    VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName = ' '
    VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex = 0
    VentilationMechanical(VentMechNum)%ZoneOAAreaRate = 0.0d0
    VentilationMechanical(VentMechNum)%ZoneOAPeopleRate = 0.0d0
    VentilationMechanical(VentMechNum)%ZoneOAFlow = 0.0d0
    VentilationMechanical(VentMechNum)%ZoneOAACH = 0.0d0

    ! added for new DCV, 2/12/2009
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneADEffCooling(MechVentZoneCount))
    ! Zone air distribution effectiveness in heating mode
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneADEffHeating(MechVentZoneCount))
    ! Indices to the zone air distribution effectiveness schedules
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneADEffSchPtr(MechVentZoneCount))
    ! Zone air distribution effectiveness schedule names
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneADEffSchName(MechVentZoneCount))
    ! Zone air secondary recirculation ratio, added 3/2012
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(MechVentZoneCount))
    ALLOCATE(VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount))

    VentilationMechanical(VentMechNum)%ZoneADEffCooling = 1.0d0
    VentilationMechanical(VentMechNum)%ZoneADEffHeating = 1.0d0
    VentilationMechanical(VentMechNum)%ZoneADEffSchPtr = 0
    VentilationMechanical(VentMechNum)%ZoneADEffSchName = ' '
    VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation = 0.0d0
    VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName = ' '
    VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex = 0

    MechVentZoneCount = 0

!   Loop through zone names and list of zone names and store data
    DO groupNum = 1, NumGroups
      ZoneNum = FindItemInList(VentMechZoneName(groupNum),Zone%Name,NumOfZones)
      IF (ZoneNum > 0) THEN
        IF (ANY (VentilationMechanical(VentMechNum)%Zone == ZoneNum)) THEN
!          Disregard duplicate zone names, show warning and do not store data for this zone
           CALL ShowWarningError('Zone name = '//TRIM(VentMechZoneName(groupNum))// &
           ' for '//TRIM(CurrentModuleObject)//' object = '//TRIM(VentilationMechanical(VentMechNum)%Name))
           CALL ShowContinueError('is specified more than once. The first ventilation values specified for this zone will be used')
           CALL ShowContinueError('and the rest will be ignored. Simulation will continue..')
        ELSE
!          Store unique zone names
           MechVentZoneCount = MechVentZoneCount + 1
           VentilationMechanical(VentMechNum)%Zone(MechVentZoneCount) = ZoneNum
           ! Populating new temp array to hold design spec OA object for each zone
           IF (DesignSpecOAObjName(groupNum) /= blank) THEN
             VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(MechVentZoneCount) = &
                               DesignSpecOAObjName(groupNum)
             VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount) = &
                               DesignSpecOAObjIndex(groupNum)
             VentilationMechanical(VentMechNum)%ZoneOAAreaRate(MechVentZoneCount) = &
                                VentMechZoneOAAreaRate(groupNum)
             VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(MechVentZoneCount) = &
                                VentMechZoneOAPeopleRate(groupNum)
             VentilationMechanical(VentMechNum)%ZoneOAFlow(MechVentZoneCount) =  &
                                VentMechZoneOAFlow(groupNum)
             VentilationMechanical(VentMechNum)%ZoneOAACH = &
                                VentMechZoneOAACH(groupNum)
           ELSE
             IF (DoZoneSizing) THEN
               ObjIndex =   &
                   FindItemInList(VentMechZoneName(groupNum),ZoneSizingInput%ZoneName,NumZoneSizingInput)
               IF (ObjIndex > 0) THEN
                 VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(MechVentZoneCount) = &
                                ZoneSizingInput(ObjIndex)%DesignSpecOAObjName
                 VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount) = &
                                ZoneSizingInput(ObjIndex)%ZoneDesignSpecOAIndex
                 ObjIndex = VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount)
                 IF (ObjIndex > 0) THEN
                   VentilationMechanical(VentMechNum)%ZoneOAAreaRate(MechVentZoneCount) =  &
                      OARequirements(ObjIndex)%OAFlowPerArea
                   VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(MechVentZoneCount) = &
                      OARequirements(ObjIndex)%OAFlowPerPerson
                   VentilationMechanical(VentMechNum)%ZoneOAFlow(MechVentZoneCount) =  &
                      OARequirements(ObjIndex)%OAFlowPerZone
                   VentilationMechanical(VentMechNum)%ZoneOAACH = &
                      OARequirements(ObjIndex)%OAFlowACH
                 ELSE  ! use defaults
                   VentilationMechanical(VentMechNum)%ZoneOAAreaRate(MechVentZoneCount) = 0.0d0
                   VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(MechVentZoneCount) = 0.00944d0
                   VentilationMechanical(VentMechNum)%ZoneOAFlow(MechVentZoneCount) = 0.0d0
                   VentilationMechanical(VentMechNum)%ZoneOAACH = 0.0d0
                 ENDIF
               ELSE
                 CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
                             trim(VentilationMechanical(VentMechNum)%Name)//'", missing')
                 CALL ShowContinueError('...blank (required entry) - cannot locate in Sizing:Zone for Zone="'//  &
                    trim(VentMechZoneName(groupNum))//'".')
                 ErrorsFound = .TRUE.
               ENDIF
             ENDIF
           ENDIF
!!!! Zone Air Distribution inputs.
           IF (DesignSpecZoneADObjName(groupNum) /= blank) THEN
             ! new DCV inputs
             VentilationMechanical(VentMechNum)%ZoneADEffCooling(MechVentZoneCount) = &
               VentMechZoneADEffCooling(groupNum)
             VentilationMechanical(VentMechNum)%ZoneADEffHeating(MechVentZoneCount) = &
               VentMechZoneADEffHeating(groupNum)
             VentilationMechanical(VentMechNum)%ZoneADEffSchPtr(MechVentZoneCount) = &
               VentMechZoneADEffSchPtr(groupNum)
             VentilationMechanical(VentMechNum)%ZoneADEffSchName(MechVentZoneCount) = &
               VentMechZoneADEffSchName(groupNum)
             VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation(MechVentZoneCount) = &
               VentMechZoneSecondaryRecirculation(groupNum)
             VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(MechVentZoneCount) = &
               DesignSpecZoneADObjName(groupNum)
             VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount) = &
               DesignSpecZoneADObjIndex(groupNum)
          ELSE
            IF (DoZoneSizing) THEN
              ObjIndex =   &
                  FindItemInList(VentMechZoneName(groupNum),ZoneSizingInput%ZoneName,NumZoneSizingInput)
              IF (ObjIndex > 0) THEN
                VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(MechVentZoneCount) = &
                              ZoneSizingInput(ObjIndex)%ZoneAirDistEffObjName
                VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount) = &
                              ZoneSizingInput(ObjIndex)%ZoneAirDistributionIndex
                ObjIndex = VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount)
              ELSE
                CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
                           trim(VentilationMechanical(VentMechNum)%Name)//'", missing')
                CALL ShowContinueError('...blank (required entry) - cannot locate in Sizing:Zone for Zone="'//  &
                   trim(VentMechZoneName(groupNum))//'".')
                ErrorsFound = .TRUE.
              ENDIF
            ENDIF
          ENDIF
        ENDIF
      ELSE
!       Not a zone name, must be a zone list
        ZoneListNum = FindItemInList(VentMechZoneName(groupNum),ZoneList%Name,NumOfZoneLists)
        IF(ZoneListNum .GT. 0)THEN
          DO ScanZoneListNum = 1, ZoneList(ZoneListNum)%NumofZones
         ! check to make sure zone name is unique (not listed more than once)...
            ZoneNum = ZoneList(ZoneListNum)%Zone(ScanZoneListNum)
            IF (ANY(VentilationMechanical(VentMechNum)%Zone == ZoneNum)) THEN
!             Disregard duplicate zone names, show warning and do not store data for this zone
              CALL ShowWarningError('Zone name = '//TRIM(Zone(ZoneNum)%Name)// &
                                ' in ZoneList = '//TRIM(VentMechZoneName(groupNum))// &
                                ' for '//TRIM(CurrentModuleObject)//' object = '//TRIM(VentilationMechanical(VentMechNum)%Name))
              CALL ShowContinueError('is a duplicate. The first ventilation values specified for this zone will be used ')
              CALL ShowContinueError('and the rest will be ignored. The simulation will continue...')
            ELSE
!           Store data for each zone name from zone list (duplicate zone names accounted for in HeatBalanceManager)
              MechVentZoneCount = MechVentZoneCount + 1
              VentilationMechanical(VentMechNum)%Zone(MechVentZoneCount) = ZoneNum
              ! Populating new temp array to hold design spec OA object for each zone
              IF (DesignSpecOAObjName(groupNum) /= blank) THEN
                VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(MechVentZoneCount) = &
                               DesignSpecOAObjName(groupNum)
                VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount) = &
                               DesignSpecOAObjIndex(groupNum)
                ObjIndex = VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount)
              ELSE
                IF (DoZoneSizing) THEN
                  ObjIndex =   &
                     FindItemInList(Zone(ZoneList(ZoneListNum)%Zone(ScanZoneListNum))%Name,  &
                        ZoneSizingInput%ZoneName,NumZoneSizingInput)
                  IF (ObjIndex > 0) THEN
                    VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(MechVentZoneCount) = &
                                   ZoneSizingInput(ObjIndex)%DesignSpecOAObjName
                    VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount) = &
                                   ZoneSizingInput(ObjIndex)%ZoneDesignSpecOAIndex
                    ObjIndex = VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(MechVentZoneCount)
                    IF (ObjIndex > 0) THEN
                      VentilationMechanical(VentMechNum)%ZoneADEffCooling(MechVentZoneCount) = &
                        ZoneAirDistribution(ObjIndex)%ZoneADEffCooling
                      VentilationMechanical(VentMechNum)%ZoneADEffHeating(MechVentZoneCount) = &
                        ZoneAirDistribution(ObjIndex)%ZoneADEffHeating
                      VentilationMechanical(VentMechNum)%ZoneADEffSchPtr(MechVentZoneCount) = &
                        ZoneAirDistribution(ObjIndex)%ZoneADEffSchPtr
                      VentilationMechanical(VentMechNum)%ZoneADEffSchName(MechVentZoneCount) = &
                        ZoneAirDistribution(ObjIndex)%ZoneADEffSchName
                      VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation(MechVentZoneCount) = &
                        ZoneAirDistribution(ObjIndex)%ZoneSecondaryRecirculation
                    ENDIF
                  ELSE
                    CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
                                trim(VentilationMechanical(VentMechNum)%Name)//'", missing')
                    CALL ShowContinueError('...blank (required entry) - cannot locate in Sizing:Zone for Zone="'//  &
                       trim(Zone(ZoneList(ZoneListNum)%Zone(ScanZoneListNum))%Name)//'".')
                    ErrorsFound = .TRUE.
                  ENDIF
                ENDIF
              ENDIF
              IF (ObjIndex > 0) THEN
                VentilationMechanical(VentMechNum)%ZoneOAAreaRate(MechVentZoneCount) =   &
                  OARequirements(ObjIndex)%OAFlowPerArea
                VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(MechVentZoneCount) =   &
                 OARequirements(ObjIndex)%OAFlowPerPerson
                VentilationMechanical(VentMechNum)%ZoneOAFlow(MechVentZoneCount) =   &
                 OARequirements(ObjIndex)%OAFlowPerZone
                VentilationMechanical(VentMechNum)%ZoneOAACH(MechVentZoneCount) =   &
                 OARequirements(ObjIndex)%OAFlowACH
!            ELSE
!              CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
!                 trim(VentilationMechanical(VentMechNum)%Name)//'", invalid')
!              CALL ShowContinueError('... not found '//trim(cAlphaFields((groupNum-1)*3+6))//'="'//  &
!                      TRIM(VentilationMechanical(VentMechNum)%DesignSpecOAObjName(MechVentZoneCount))//'".')
!              ErrorsFound = .TRUE.
              ENDIF

              IF (VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(MechVentZoneCount) /= blank) THEN
                ! new DCV inputs
                VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(MechVentZoneCount) = &
                  DesignSpecZoneADObjName(groupNum)
                VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount) = &
                  DesignSpecZoneADObjIndex(groupNum)
                ObjIndex = VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount)
              ELSE
                IF (DoZoneSizing) THEN
                  ObjIndex =   &
                     FindItemInList(Zone(ZoneList(ZoneListNum)%Zone(ScanZoneListNum))%Name,  &
                                  ZoneSizingInput%ZoneName,NumZoneSizingInput)
                  IF (ObjIndex > 0) THEN
                    VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(MechVentZoneCount) = &
                                   ZoneSizingInput(ObjIndex)%ZoneAirDistEffObjName
                    VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount) = &
                                   ZoneSizingInput(ObjIndex)%ZoneAirDistributionIndex
                    ObjIndex = VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjIndex(MechVentZoneCount)
                  ELSE
                    CALL ShowSevereError(RoutineName//TRIM(CurrentModuleObject)//'="'//  &
                                trim(VentilationMechanical(VentMechNum)%Name)//'", missing')
                    CALL ShowContinueError('...blank (required entry) - cannot locate in Sizing:Zone for Zone="'//  &
                       trim(Zone(ZoneList(ZoneListNum)%Zone(ScanZoneListNum))%Name)//'".')
                    ErrorsFound = .TRUE.
                  ENDIF
                ENDIF
              ENDIF
              IF (ObjIndex > 0) THEN
                VentilationMechanical(VentMechNum)%ZoneADEffCooling(MechVentZoneCount) = &
                  ZoneAirDistribution(ObjIndex)%ZoneADEffCooling
                VentilationMechanical(VentMechNum)%ZoneADEffHeating(MechVentZoneCount) = &
                  ZoneAirDistribution(ObjIndex)%ZoneADEffHeating
                VentilationMechanical(VentMechNum)%ZoneADEffSchPtr(MechVentZoneCount) = &
                  ZoneAirDistribution(ObjIndex)%ZoneADEffSchPtr
                VentilationMechanical(VentMechNum)%ZoneADEffSchName(MechVentZoneCount) = &
                  ZoneAirDistribution(ObjIndex)%ZoneADEffSchName
                VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation(MechVentZoneCount) = &
                  ZoneAirDistribution(ObjIndex)%ZoneSecondaryRecirculation
              ENDIF
            ENDIF
          END DO
        END IF
      END IF
    END DO

!   Overwrite previous number of zones with number that does not include duplicates
    VentilationMechanical(VentMechNum)%NumofVentMechZones = MechVentZoneCount


!moved to after section in initialization where other zones are weeded out.
!    !predefined report
!    DO jZone = 1, VentilationMechanical(VentMechNum)%NumofVentMechZones
!      zoneName = zone(VentilationMechanical(VentMechNum)%Zone(jZone))%name
!      CALL PreDefTableEntry(pdchDCVventMechName,zoneName,VentilationMechanical(VentMechNum)%Name)
!      CALL PreDefTableEntry(pdchDCVperPerson,zoneName, VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(jZone),6)
!      CALL PreDefTableEntry(pdchDCVperArea,zoneName, VentilationMechanical(VentMechNum)%ZoneOAAreaRate(jZone),6)
!
!      ! added for new DCV inputs
!      CALL PreDefTableEntry(pdchDCVZoneADEffCooling,zoneName, VentilationMechanical(VentMechNum)%ZoneADEffCooling(jZone),2)
!      CALL PreDefTableEntry(pdchDCVZoneADEffHeating,zoneName, VentilationMechanical(VentMechNum)%ZoneADEffHeating(jZone),2)
!      CALL PreDefTableEntry(pdchDCVZoneADEffSchName,zoneName,   &
!         GetScheduleName(VentilationMechanical(VentMechNum)%ZoneADEffSchPtr(jZone)))
!    END DO

  DEALLOCATE(VentMechZoneName)
  DEALLOCATE(DesignSpecOAObjName)
  DEALLOCATE(DesignSpecOAObjIndex)
  DEALLOCATE(VentMechZoneOAAreaRate)
  DEALLOCATE(VentMechZoneOAPeopleRate)
  DEALLOCATE(VentMechZoneADEffCooling)
  DEALLOCATE(VentMechZoneADEffHeating)
  DEALLOCATE(VentMechZoneADEffSchPtr)
  DEALLOCATE(VentMechZoneADEffSchName)
  DEALLOCATE(VentMechZoneOAFlow)
  DEALLOCATE(VentMechZoneOAACH)

  DEALLOCATE(DesignSpecZoneADObjName)
  DEALLOCATE(DesignSpecZoneADObjIndex)
  DEALLOCATE(VentMechZoneSecondaryRecirculation)

  END DO

  DO VentMechNum=1,NumVentMechControllers
    DO jZone=1,VentilationMechanical(VentMechNum)%NumofVentMechZones
      IF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_ProportionalControl) THEN
        IF (VentilationMechanical(VentMechNum)%ZoneOAACH(jZone) .GT. 0.d0 .OR.   &
            VentilationMechanical(VentMechNum)%ZoneOAFlow(jZone) .GT. 0.d0) THEN
          CALL ShowWarningError(trim(CurrentModuleObject)//'="'//trim(VentilationMechanical(VentMechNum)%Name)//  &
             '", inappropriate outdoor air method')
          CALL ShowContinueError('Inappropriate method for Design Specification Outdoor Air Object Name="'// &
                                 TRIM(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(jZone))//'".')
          CALL ShowContinueError('For Zone="'//trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
          CALL ShowContinueError('Since System Outdoor Air Method="ProportionalControl", '//  &
                                 'AirChanges/Hour or Flow/Zone outdoor air methods are not valid. Simulation continues.... ')
        ENDIF
      ENDIF

     ! Error check to see if a single duct air terminal is assigned to a zone that has zone secondary recirculation
      IF (VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation(jZone) > 0.0d0) THEN
        ZoneNum = VentilationMechanical(VentMechNum)%Zone(jZone)
        IF (ZoneNum > 0) THEN
          EquipListIndex = ZoneEquipConfig(ZoneNum)%EquipListIndex
          IF (EquipListIndex > 0) THEN
            EquipLoop: DO EquipListNum = 1, NumofZoneEquipLists
              IF (EquipListNum == EquipListIndex) THEN
                DO EquipNum = 1, ZoneEquipList(EquipListNum)%NumOfEquipTypes
                  IF (SameString(ZoneEquipList(EquipListNum)%EquipType(EquipNum),'ZONEHVAC:AIRDISTRIBUTIONUNIT')) THEN
                    DO ADUNum = 1, NumAirDistUnits
                      IF (SameString(ZoneEquipList(EquipListNum)%EquipName(EquipNum),AirDistUnit(ADUNum)%Name)) THEN
                        IF ((AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctVAVReheat) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctConstVolReheat) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctVAVNoReheat) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctVAVReheatVSFan) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctCBVAVReheat) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctCBVAVNoReheat) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == SingleDuctConstVolCooledBeam) &
                           .OR. (AirDistUnit(ADUNum)%EquipType_Num(EquipNum) == DualDuctVAVOutdoorAir)) THEN
                          CALL ShowWarningError(trim(CurrentModuleObject)//'="'//  &
                             trim(VentilationMechanical(VentMechNum)%Name)//'", inappropriate use of Zone secondary recirculation')
                          CALL ShowContinueError('A zone secondary recirculation fraction is specified for zone served by ')
                          CALL ShowContinueError('...terminal unit "'//TRIM(AirDistUnit(ADUNum)%Name)//  &
                               '" , that indicates a single path system')
                          CALL ShowContinueError('For Zone="'//  &
                             trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
                          CALL ShowContinueError('...The zone secondary recirculation for that zone was set to 0.0')
                          VentilationMechanical(VentMechNum)%ZoneSecondaryRecirculation(jZone) = 0.0d0
                        END IF
                        Exit EquipLoop
                      END IF
                    END DO
                  END IF
                END DO
              END IF
            END DO EquipLoop
          END IF
        END IF
      END IF
      IF (VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(jZone) == blank) THEN
        CALL ShowSevereError(trim(CurrentModuleObject)//'="'//trim(VentilationMechanical(VentMechNum)%Name)//  &
           '", Design Specification Outdoor Air Object Name blank')
        CALL ShowContinueError('For Zone="'//trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
        CALL ShowContinueError('This field either needs to be filled in in this object or Sizing:Zone object.')
        CALL ShowContinueError('For this run, default values for these fields will be used.')
!        ErrorsFound=.true.
      ENDIF
!      IF (VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(jZone) == blank) THEN
!        CALL ShowSevereError(trim(CurrentModuleObject)//'="'//trim(VentilationMechanical(VentMechNum)%Name)//  &
!           '", Design Specification Zone Air Distribution Object Name blank')
!        CALL ShowContinueError('For Zone="'//trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
!        CALL ShowContinueError('This field either needs to be filled in in this object or Sizing:Zone object.')
!        ErrorsFound=.true.
!      ENDIF
      IF (VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(jZone) <= 0.0d0 .AND.   &
                                            VentilationMechanical(VentMechNum)%DCVFlag) THEN
        CALL ShowWarningError(TRIM(CurrentModuleObject)//'="'//trim(VentilationMechanical(VentMechNum)%Name)//  &
           '", Zone OA/person rate')
        CALL ShowContinueError('For Zone="'//trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
        CALL ShowContinueError('Zone outside air per person rate not set in Design '//  &
           'Specification Outdoor Air Object="'// &
           TRIM(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(jZone))//'".')
      ENDIf

      IF (VentilationMechanical(VentMechNum)%ZoneOAAreaRate(jZone) .LT. 0.0d0) THEN
        CALL ShowSevereError(trim(CurrentModuleObject)//'="'//trim(VentilationMechanical(VentMechNum)%Name)//  &
           '", invalid Outdoor Air flow per area')
        CALL ShowContinueError('For Zone="'//trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
        CALL ShowContinueError('invalid Outdoor Air flow per area specified in object="'// &
           TRIM(OARequirements(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(jZone))%Name) //  &
            '". Value must be >= 0.0.')
        ErrorsFound = .TRUE.
      END IF
      IF (VentilationMechanical(VentMechNum)%ZoneOAPeopleRate(jZone) .LT. 0.0d0) THEN
        CALL ShowSevereError(trim(CurrentModuleObject)//'="'//trim(VentilationMechanical(VentMechNum)%Name)//  &
           '", invalid Outdoor Air flow per person')
        CALL ShowContinueError('For Zone="'//trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//'".')
        CALL ShowContinueError('invalid Outdoor Air flow per person specified in object "'// &
           TRIM(OARequirements(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjIndex(jZone))%Name) //  &
           '". Value must be >= 0.0.')
        ErrorsFound = .TRUE.
      END IF
    ENDDO
  ENDDO

! Link OA controller object with mechanical ventilation object
  DO OAControllerNum=1,NumOAControllers
    OAController(OAControllerNum)%VentMechObjectNum = &
       FindItemInList(OAController(OAControllerNum)%VentilationMechanicalName,VentilationMechanical%Name,NumVentMechControllers)
    IF(OAController(OAControllerNum)%VentMechObjectNum .EQ. 0 .AND. &
      OAController(OAControllerNum)%VentilationMechanicalName .NE. Blank) THEN
      CALL ShowSevereError(trim(CurrentModuleObject)//'="'//trim(OAController(OAControllerNum)%VentilationMechanicalName)//  &
             '", non-match to Controller:OutdoorAir')
      CALL ShowContinueError('Invalid specified in Controller:OutdoorAir object = '//TRIM(OAController(OAControllerNum)%Name))
      CALL ShowContinueError(TRIM(CurrentModuleObject)//' object name must match the '//TRIM(CurrentModuleObject)// &
                             ' object name specified in Controller:OutdoorAir.')
      ErrorsFound = .TRUE.
    END IF
  END DO

! write to .eio file
  Write(OutputFileInits,700)
 700 Format('!<Controller:MechanicalVentilation>,Name,Availability Schedule Name,Demand Controlled Ventilation {Yes/No},', &
      'System Outdoor Air Method,Zone Maximum Outdoor Air Fraction,Number of Zones,Zone Name,DSOA Name,DSZAD Name')
  DO VentMechNum=1,NumVentMechControllers
    Write(OutputFileInits,'(A)',ADVANCE='NO') ' Controller:MechanicalVentilation,'//  &
       trim(VentilationMechanical(VentMechNum)%Name)//  &
       ','//trim(VentilationMechanical(VentMechNum)%SchName)//','
    IF (VentilationMechanical(VentMechNum)%DCVFlag) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'Yes,'
    ELSE
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'No,'
    ENDIF
    IF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_ZoneSum) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'ZoneSum,'
    ELSEIF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_VRP) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'VentilationRateProcedure,'
    ELSEIF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_IAQP) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'IndoorAirQualityProcedure,'
    ELSEIF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_ProportionalControl) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'ProportionalControl,'
    ELSEIF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_IAQPGC) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'IndoorAirQualityGenericContaminant,'
    ELSEIF (VentilationMechanical(VentMechNum)%SystemOAMethod == SOAM_IAQPCOM) THEN
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'IndoorAirQualityProcedureCombined,'
    ELSE
      Write(OutputFileInits,'(A)',ADVANCE='NO') 'Invalid/Unknown,'
    ENDIF
    Write(OutputFileInits,'(A)',ADVANCE='NO') trim(RoundSigDigits(VentilationMechanical(VentMechNum)%ZoneMaxOAFraction,2))//','
    Write(OutputFileInits,'(A)',ADVANCE='NO') trim(RoundSigDigits(VentilationMechanical(VentMechNum)%NumofVentMechZones))//','
    DO jZone=1,VentilationMechanical(VentMechNum)%NumofVentMechZones
      IF (jZone < VentilationMechanical(VentMechNum)%NumofVentMechZones) THEN
        Write(OutputFileInits,'(A)',ADVANCE='NO') trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//','//  &
           trim(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(jZone))//','//  &
           trim(VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(jZone))//','
      ELSE
        Write(OutputFileInits,'(A)') trim(Zone(VentilationMechanical(VentMechNum)%Zone(jZone))%Name)//','//  &
           trim(VentilationMechanical(VentMechNum)%ZoneDesignSpecOAObjName(jZone))//','//  &
           trim(VentilationMechanical(VentMechNum)%ZoneDesignSpecADObjName(jZone))
      ENDIF
    ENDDO
  ENDDO

END IF ! Number of Mechanical Ventilation Objects > 0

DEALLOCATE(AlphArray)
DEALLOCATE(NumArray)
DEALLOCATE(lNumericBlanks)
DEALLOCATE(lAlphaBlanks)
DEALLOCATE(cAlphaFields)
DEALLOCATE(cNumericFields)

IF (ErrorsFound) THEN
  CALL ShowFatalError(RoutineName//'Errors found when getting '//TRIM(CurrentModuleObject)//' inputs.')
END IF

RETURN
END SUBROUTINE GetOAControllerInputs


AbortEnergyPlus AbsoluteAirMass ActivateDemandManagers ActivateEMSControls AddBlankKeys addChargesToOperand AddCompSizeTableEntry AddEndUseSubcategory AddError addFootNoteSubTable AddInstruction AddMeter addMonthlyCharge AddMonthlyFieldSetInput AddMonthlyReport AddNeighborInformation AddObjectDefandParse addOperand AddRecordFromSection AddRecordToOutputVariableStructure AddSectionDef AddShadowRelateTableEntry AddSQLiteComponentSizingRecord AddSQLiteComponentSizingRecord AddSQLiteSystemSizingRecord AddSQLiteSystemSizingRecord AddSQLiteZoneSizingRecord AddSQLiteZoneSizingRecord AddTOCEntry AddTOCZoneLoadComponentTable AddToOutputVariableList AddVariablesForMonthlyReport AddVariableSlatBlind AddWindow AdjustAirSetpointsforOpTempCntrl AdjustCBF AdjustCBF AdjustChangeInLoadByEMSControls AdjustChangeInLoadByHowServed AdjustChangeInLoadForLastStageUpperRangeLimit AdjustCoolingSetPointforTempAndHumidityControl adjusthhat AdjustPumpFlowRequestByEMSControls AdjustReportingHourAndMinutes AdjustVBGap AdvanceRootFinder AFECFR AFECOI AFECPD AFECPF AFEDMP AFEDOP AFEDWC AFEELR AFEEXF AFEFAN AFEHEX AFEHOP AFEPLR AFESCR AFESEL AFESOP AFETMU AirflowNetworkVentingControl AirMass AIRMOV AllocateAirflowNetworkData AllocateAirHeatBalArrays AllocateAndInitData AllocateAndSetUpVentReports AllocateCFSStateHourlyData AllocateForCFSRefPointsGeometry AllocateForCFSRefPointsState AllocateHeatBalArrays AllocateLoadComponentArrays AllocateModuleArrays AllocateModuleArrays AllocateSurfaceHeatBalArrays AllocateWeatherData angle_2dvector AnisoSkyViewFactors AnyPlantLoopSidesNeedSim AnyPlantSplitterMixerLacksContinuity AreaPolygon ArgCheck array_to_vector ASHRAETauModel ASHWAT_OffNormalProperties ASHWAT_Solar ASHWAT_Thermal ASSIGNMENT (=) AssignNodeNumber AssignReportNumber AssignResourceTypeNum AssignReverseConstructionNumber AssignVariablePt AttachCustomMeters AttachMeters AuditBranches AUTOTDMA BaseThermalPropertySet_Diffusivity BeginEnvrnInitializeRuntimeLanguage BetweenDates BetweenGlassForcedFlow BetweenGlassShadeForcedFlow BetweenGlassShadeNaturalFlow BisectionMethod BlindBeamBeamTrans BlindOpticsBeam BlindOpticsDiffuse BoreholeResistance BoundValueToNodeMinMaxAvail BoundValueToWithinTwoValues BracketRoot BranchPressureDrop BrentMethod BuildGap BuildKeyVarList Calc4PipeFanCoil Calc_EN673 Calc_ISO15099 CalcActiveTranspiredCollector CalcAggregateLoad CalcAirflowNetworkAirBalance CalcAirflowNetworkCO2Balance CalcAirflowNetworkGCBalance CalcAirflowNetworkHeatBalance CalcAirflowNetworkMoisBalance CalcAirFlowSimple CalcAirLoopSplitter CalcAirMixer CalcAirToAirGenericHeatExch CalcAirToAirPlateHeatExch CalcAirZoneReturnPlenum CalcAirZoneSupplyPlenum CalcAlamdariHammondStableHorizontal CalcAlamdariHammondUnstableHorizontal CalcAlamdariHammondVerticalWall CalcAngleFactorMRT CalcApproximateViewFactors CalcASHRAEDetailedIntConvCoeff CalcASHRAESimpExtConvectCoeff CalcASHRAESimpleIntConvCoeff CalcASHRAEVerticalWall CalcATMixer CalcAwbiHattonHeatedFloor CalcAwbiHattonHeatedWall CalcBasinHeaterPower CalcBasinHeaterPowerForMultiModeDXCoil CalcBeamSolarOnWinRevealSurface CalcBeamSolDiffuseReflFactors CalcBeamSolSpecularReflFactors CalcBeausoleilMorrisonMixedAssistedWall CalcBeausoleilMorrisonMixedOpposingWall CalcBeausoleilMorrisonMixedStableCeiling CalcBeausoleilMorrisonMixedStableFloor CalcBeausoleilMorrisonMixedUnstableCeiling CalcBeausoleilMorrisonMixedUnstableFloor CalcBLASTAbsorberModel CalcBlockenWindward CalcBoilerModel CalcBoilerModel CalcBottomFluxCoefficents CalcBottomSurfTemp CalcBuriedPipeSoil CalcCBF CalcCBF CalcCBVAV CalcCeilingDiffuserInletCorr CalcCeilingDiffuserIntConvCoeff CalcChillerHeaterModel CalcChillerIPLV CalcChillerModel CalcClearRoof CalcCoilUAbyEffectNTU CalcColdestSetPoint CalcComplexWindowOverlap CalcComplexWindowThermal CalcCompSuctionTempResidual CalcCondEntSetPoint CalcConnectionsDrainTemp CalcConnectionsFlowRates CalcConnectionsHeatRecovery CalcConstCOPChillerModel CalcConvCoeffAbsPlateAndWater CalcConvCoeffBetweenPlates CalcCoolBeam CalcCoolTower CalcCoordinateTransformation CalcCoPlanarNess CalcCostEstimate CalcCTGeneratorModel CalcDayltgCoefficients CalcDayltgCoeffsMapPoints CalcDayltgCoeffsRefMapPoints CalcDayltgCoeffsRefPoints CalcDesiccantBalancedHeatExch CalcDesignSpecificationOutdoorAir CalcDesuperheaterHeatingCoil CalcDesuperheaterWaterHeater CalcDetailedHcInForDVModel CalcDetailedSystem CalcDetailedTransSystem CalcDetailFlatFinCoolingCoil CalcDetIceStorLMTDstar CalcDiffTSysAvailMgr CalcDirectAir CalcDirectEvapCooler CalcDirectResearchSpecialEvapCooler CalcDoe2DXCoil CalcDOE2Leeward CalcDOE2Windward CalcDryFinEffCoef CalcDryIndirectEvapCooler CalcDuct CalcDXCoilStandardRating CalcDXHeatingCoil CalcEarthTube CalcEcoRoof CalcEffectiveness CalcEffectiveSHR CalcEffectiveSHR CalcEffectiveSHR CalcEffectiveSHR CalcElecSteamHumidifier CalcElectricBaseboard CalcElectricChillerHeatRecovery CalcElectricChillerModel CalcElectricEIRChillerModel CalcElectricHeatingCoil CalcEmmelRoof CalcEmmelVertical CalcEngineChillerHeatRec CalcEngineDrivenChillerModel CalcEQLOpticalProperty CalcEQLWindowOpticalProperty CalcEQLWindowSHGCAndTransNormal CalcEQLWindowStandardRatings CalcEQLWindowUvalue CalcEquipmentDrainTemp CalcEquipmentFlowRates CalcExhaustAbsorberChillerModel CalcExhaustAbsorberHeaterModel CalcExteriorVentedCavity CalcFisherPedersenCeilDiffuserCeiling CalcFisherPedersenCeilDiffuserFloor CalcFisherPedersenCeilDiffuserWalls CalcFluidHeatExchanger CalcFohannoPolidoriVerticalWall CalcFollowOATempSetPoint CalcFollowSysNodeTempSetPoint CalcFourPipeIndUnit CalcFrameDividerShadow CalcFuelCellAuxHeater CalcFuelCellGeneratorModel CalcFuelCellGenHeatRecovery CalcFurnaceOutput CalcFurnaceResidual CalcGasAbsorberChillerModel CalcGasAbsorberHeaterModel CalcGasCooler CalcGasHeatingCoil CalcGenericDesiccantDehumidifier CalcGoldsteinNovoselacCeilingDiffuserFloor CalcGoldsteinNovoselacCeilingDiffuserWall CalcGoldsteinNovoselacCeilingDiffuserWindow CalcGroundTempSetPoint CalcGroundwaterWell CalcGshpModel CalcGshpModel CalcGTChillerModel CalcHeatBalanceAir CalcHeatBalanceInsideSurf CalcHeatBalanceInsideSurf CalcHeatBalanceOutsideSurf CalcHeatBalanceOutsideSurf CalcHeatBalFiniteDiff CalcHeatBalHAMT CalcHeatPumpWaterHeater CalcHeatTransCoeffAndCoverTemp CalcHfExteriorSparrow CalcHighTempRadiantSystem CalcHighTempRadiantSystemSP CalcHiTurnOffSysAvailMgr CalcHiTurnOnSysAvailMgr CalcHnASHRAETARPExterior CalcHPCoolingSimple CalcHPHeatingSimple CalcHPWHDXCoil CalcHWBaseboard CalcHXAssistedCoolingCoil CalcHXEffectTerm CalcHybridVentSysAvailMgr CalcIBesselFunc CalcICEngineGeneratorModel CalcICEngineGenHeatRecovery CalcIceStorageCapacity CalcIceStorageCharge CalcIceStorageDischarge CalcIceStorageDormant CalcICSSolarCollector CalcIdealCondEntSetPoint CalcIfSetpointMet CalcIndirectAbsorberModel CalcIndirectResearchSpecialEvapCooler CalcInteriorRadExchange CalcInteriorSolarDistribution CalcInteriorSolarOverlaps CalcInteriorWinTransDifSolInitialDistribution CalcISO15099WindowIntConvCoeff CalcKaradagChilledCeiling CalcKBesselFunc CalcKhalifaEq3WallAwayFromHeat CalcKhalifaEq4CeilingAwayFromHeat CalcKhalifaEq5WallsNearHeat CalcKhalifaEq6NonHeatedWalls CalcKhalifaEq7Ceiling CalcLoadCenterThermalLoad CalcLoTurnOffSysAvailMgr CalcLoTurnOnSysAvailMgr CalcLowTempCFloRadiantSystem CalcLowTempCFloRadSysComps CalcLowTempElecRadiantSystem CalcLowTempHydrRadiantSystem CalcLowTempHydrRadSysComps CalcMatrixInverse CalcMcAdams CalcMerkelVariableSpeedTower CalcMicroCHPNoNormalizeGeneratorModel CalcMinIntWinSolidAngs CalcMitchell CalcMixedAirSetPoint CalcMoistureBalanceEMPD CalcMoreNodeInfo CalcMoWITTLeeward CalcMoWITTWindward CalcMSHeatPump CalcMTGeneratorModel CalcMultiSpeedDXCoil CalcMultiSpeedDXCoilCooling CalcMultiSpeedDXCoilHeating CalcMultiStageElectricHeatingCoil CalcMultiStageGasHeatingCoil CalcMultiZoneAverageCoolingSetPoint CalcMultiZoneAverageHeatingSetPoint CalcMultiZoneAverageMaxHumSetPoint CalcMultiZoneAverageMinHumSetPoint CalcMultiZoneMaxHumSetPoint CalcMultiZoneMinHumSetPoint CalcMundtModel CalcNCycSysAvailMgr CalcNewZoneHeatCoolFlowRates CalcNewZoneHeatOnlyFlowRates CalcNodeMassFlows CalcNominalWindowCond CalcNonDXHeatingCoils CalcNonDXHeatingCoils CalcNonDXHeatingCoils CalcNonDXHeatingCoils CalcNusselt CalcNusseltJurges CalcNVentSysAvailMgr CalcOAController CalcOAMassFlow CalcOAMassFlow CalcOAMixer CalcOAOnlyMassFlow CalcOAPretreatSetPoint CalcOAUnitCoilComps CalcObstrMultiplier CalcOptStartSysAvailMgr CalcOtherSideDemand CalcOutdoorAirUnit CalcOutsideAirSetPoint CalcOutsideSurfTemp CalcParallelPIU CalcPassiveExteriorBaffleGap CalcPassiveSystem CalcPassiveTranspiredCollector CalcPerSolarBeam CalcPipeHeatTransCoef CalcPipesHeatTransfer CalcPipeTransBeam CalcPlantValves CalcPollution CalcPolyhedronVolume CalcPolynomCoef CalcPondGroundHeatExchanger CalcPredictedHumidityRatio CalcPredictedSystemLoad CalcPTUnit CalcPumps CalcPurchAirLoads CalcPurchAirMinOAMassFlow CalcPurchAirMixedAir CalcPVTcollectors CalcQiceChargeMaxByChiller CalcQiceChargeMaxByITS CalcQiceDischageMax CalcRABFlowSetPoint CalcRackSystem CalcRadSysHXEffectTerm CalcRadTemp CalcRainCollector CalcReformEIRChillerModel CalcResearchSpecialPartLoad CalcReturnAirPath CalcRfFlrCoordinateTransformation CalcSandiaPV CalcSatVapPressFromTemp CalcSchedOffSysAvailMgr CalcSchedOnSysAvailMgr CalcSchedSysAvailMgr CalcScheduledDualSetPoint CalcScheduledSetPoint CalcScreenTransmittance CalcScriptF CalcSeriesPIU CalcSetpointTempTarget CalcSHRUserDefinedCurves CalcSimpleController CalcSimpleHeatingCoil CalcSimplePV CalcSingleSpeedEvapFluidCooler CalcSingleSpeedTower CalcSingZoneClSetPoint CalcSingZoneHtSetPoint CalcSingZoneMaxHumSetPoint CalcSingZoneMinHumSetPoint CalcSingZoneRhSetPoint CalcSkySolDiffuseReflFactors CalcSolarCollector CalcSolarFlux CalcSolidDesiccantDehumidifier CalcSourceFlux CalcSourceTempCoefficents CalcSparrowLeeward CalcSparrowWindward CalcSpecialDayTypes CalcStandAloneERV CalcStandardRatings CalcStaticProperties CalcSteamAirCoil CalcSteamBaseboard CalcSurfaceCentroid CalcSurfaceGroundHeatExchanger CalcSystemEnergyUse CalcSZOneStageCoolingSetPt CalcSZOneStageHeatingSetPt CalcTankTemp CalcTDDTransSolAniso CalcTDDTransSolHorizon CalcTDDTransSolIso CalcTempDistModel CalcTempIntegral CalcTESCoilChargeOnlyMode CalcTESCoilCoolingAndChargeMode CalcTESCoilCoolingAndDischargeMode CalcTESCoilCoolingOnlyMode CalcTESCoilDischargeOnlyMode CalcTESCoilOffMode CalcTESIceStorageTank CalcTESWaterStorageTank CalcThermalChimney CalcThermalComfortAdaptiveASH55 CalcThermalComfortAdaptiveCEN15251 CalcThermalComfortFanger CalcThermalComfortKSU CalcThermalComfortPierce CalcThermalComfortSimpleASH55 CalcTimeNeeded CalcTopFluxCoefficents CalcTopSurfTemp CalcTotalFLux CalcTotCapSHR CalcTotCapSHR_VSWSHP CalcTransAbsorProduct CalcTransRefAbsOfCover CalcTRNSYSPV CalcTrombeWallIntConvCoeff CalcTwoSpeedDXCoilIEERResidual CalcTwoSpeedDXCoilStandardRating CalcTwoSpeedEvapFluidCooler CalcTwoSpeedTower CalcUAIce CalcUCSDCV CalcUCSDDV CalcUCSDUE CalcUCSDUI CalculateAirChillerSets CalculateBasisLength CalculateCase CalculateCoil CalculateCompressors CalculateCondensers CalculateCTFs CalculateDailySolarCoeffs CalculateDayOfWeek CalculateEpsFromNTUandZ CalculateExponentialMatrix CalculateFuncResults CalculateGammas CalculateInverseMatrix CalculateMoodyFrictionFactor CalculateNTUfromEpsAndZ CalculatePollution CalculateSecondary CalculateSubcoolers CalculateSunDirectionCosines CalculateTransCompressors CalculateWalkIn CalculateWaterUseage CalculateWaterUseage CalculateWindowBeamProperties CalculateZoneMRT CalculateZoneVolume CalcUnitaryCoolingSystem CalcUnitaryHeatingSystem CalcUnitarySuppHeatingSystem CalcUnitarySuppSystemtoSP CalcUnitarySystemLoadResidual CalcUnitarySystemToLoad CalcUnitHeater CalcUnitHeaterComponents CalcUnitVentilator CalcUnitVentilatorComponents CalcUnmetPlantDemand CalcUpdateHeatRecovery CalcUpdateHeatRecovery CalcUserDefinedInsideHcModel CalcUserDefinedOutsideHcModel CalcVariableSpeedTower CalcVarSpeedCoilCooling CalcVarSpeedCoilHeating CalcVarSpeedHeatPump CalcVarSpeedHeatPump CalcVAVVS CalcVentilatedSlab CalcVentilatedSlabComps CalcVentilatedSlabRadComps CalcVentSlabHXEffectTerm CalcVerticalGroundHeatExchanger CalcViewFactorToShelf CalcVRF CalcVRFCondenser CalcVRFCoolingCoil CalcVSTowerApproach CalcWallCoordinateTransformation CalcWaltonStableHorizontalOrTilt CalcWaltonUnstableHorizontalOrTilt CalcWarmestSetPoint CalcWarmestSetPointTempFlow CalcWaterMainsTemp CalcWaterSource CalcWaterStorageTank CalcWaterThermalTankMixed CalcWaterThermalTankStratified CalcWaterThermalTankZoneGains CalcWaterToAirHeatpump CalcWatertoAirHPCooling CalcWatertoAirHPHeating CalcWaterToAirResidual CalcWatertoWaterHPCooling CalcWatertoWaterHPHeating CalcWaterUseZoneGains CalcWetIndirectEvapCooler CalcWindowACOutput CalcWindowBlindProperties CalcWindowHeatBalance CalcWindowProfileAngles CalcWindowScreenProperties CalcWindowStaticProperties CalcWindPressure CalcWindPressureCoeffs CalcWindTurbine CalcWinFrameAndDividerTemps CalcWinTransDifSolInitialDistribution CalcWrapperModel CalcZoneAirComfortSetpoints CalcZoneAirTempSetpoints CalcZoneComponentLoadSums CalcZoneDehumidifier CalcZoneEvaporativeCoolerUnit CalcZoneLeavingConditions CalcZoneMassBalance CalcZonePipesHeatGain CalcZoneSums CartesianPipeCellInformation_ctor CellType_IsFieldCell CFSHasControlledShade CFSNGlz CFSRefPointPosFactor CFSRefPointSolidAngle CFSShadeAndBeamInitialization CFSUFactor cGetCoilAirOutletNode cGetCoilSteamInletNode cGetCoilSteamOutletNode CharPreDefTableEntry CheckActuatorNode CheckAndAddAirNodeNumber CheckAndFixCFSLayer CheckAndReadCustomSprectrumData CheckAndReadFaults CheckAndSetConstructionProperties CheckBracketRoundOff CheckBranchForOASys CheckCachedIPErrors CheckCFSStates CheckCoilWaterInletNode CheckControllerListOrder CheckControllerLists CheckConvexity CheckCostEstimateInput CheckCreatedZoneItemName CheckCurveLimitsForIPLV CheckCurveLimitsForStandardRatings CheckDayScheduleValueMinMax CheckDXCoolingCoilInOASysExists CheckFDSurfaceTempLimits CheckFFSchedule CheckFluidPropertyName CheckForActualFileName CheckForBalancedFlow CheckForControllerWaterCoil CheckForGeometricTransform CheckForGeometricTransform CheckForMisMatchedEnvironmentSpecifications CheckForOutOfRangeTempResult CheckForOutOfRangeTemps CheckForRequestedReporting CheckForRunawayPlantTemps CheckForSensorAndSetpointNode CheckGasCoefs CheckHeatingCoilSchedule CheckHXAssistedCoolingCoilSchedule CheckIFAnyEMS CheckIFAnyIdealCondEntSetPoint CheckIfAnyPlant CheckIfNodeSetpointManagedByEMS CheckIncrementRoundOff CheckInternalConsistency CheckLightsReplaceableMinMaxForZone CheckLocationValidity CheckLoopExitNode CheckLowerUpperBracket CheckMarkedNodes CheckMaxActiveController CheckMaxConstraint CheckMicroCHPThermalBalance CheckMinActiveController CheckMinConstraint checkMinimumMonthlyCharge CheckMinMaxCurveBoundaries CheckMinMaxRange CheckModelBoundOutput_HumRat CheckModelBoundOutput_Temp CheckModelBounds CheckModelBoundsHumRatEq CheckModelBoundsRH_HumRatEq CheckModelBoundsRH_TempEq CheckModelBoundsTempEq CheckNodeConnections CheckNodeSetPoint CheckNonSingularity CheckOAControllerName CheckOutAirNodeNumber CheckPlantConvergence CheckPlantMixerSplitterConsistency CheckPlantOnAbort CheckPollutionMeterReporting CheckRefrigerationInput CheckReportVariable CheckRootFinderCandidate CheckRootFinderConvergence CheckScheduledSurfaceGains CheckScheduleValue CheckScheduleValueMinMax Checksetpoints CheckSimpleController CheckSlope CheckSteamCoilSchedule CheckSubSurfaceMiscellaneous CheckSysSizing CheckSystemBranchFlow CheckTDDsAndLightShelvesInDaylitZones CheckThisAirSystemForSizing CheckThisZoneForSizing CheckThreading CheckUniqueNodes CheckUnitarySysCoilInOASysExists CheckUsedConstructions CheckValidSimulationObjects CheckWarmupConvergence CheckWaterCoilSchedule CheckWeatherFileValidity CheckWindowShadingControlFrameDivider CheckZoneEquipmentList CheckZoneSizing CHKBKS CHKGSS CHKSBS CLIP CLIPPOLY CloseDFSFile CloseMiscOpenFiles CloseMoistureBalanceEMPD CloseOutOpenFiles CloseOutputFiles CloseOutputTabularFile CloseReportIllumMaps CloseSocket CloseWeatherFile CoilAreaFracIter CoilCompletelyDry CoilCompletelyWet CoilOutletStreamCondition CoilPartWetPartDry COMMAND_ARGUMENT_COUNT CompactObjectsCheck CompareTwoVectors ComplexFenestrationLuminances ComputeDelayedComponents ComputeDifSolExcZonesWIZWindows ComputeIntSolarAbsorpFactors ComputeIntSWAbsorpFactors ComputeIntThermalAbsorpFactors ComputeLifeCycleCostAndReport ComputeLoadComponentDecayCurve ComputeNominalUwithConvCoeffs ComputePresentValue ComputeTariff ComputeTaxAndDepreciation ComputeWinShadeAbsorpFactors CondOutTempResidual ConstructBasis ControlCBVAVOutput ControlCompOutput ControlCompOutput ControlCoolBeam ControlCoolingSystem ControlCycWindACOutput ControlDesiccantDehumidifier ControlDXHeatingSystem ControlDXSystem ControlFluidHeatExchanger ControlHeatingSystem ControlHumidifier ControlMSHPOutput ControlPTUnitOutput ControlPVTcollector ControlReformEIRChillerModel ControlSuppHeatSystem ControlUnitarySystemOutput ControlUnitarySystemtoLoad ControlUnitarySystemtoSP ControlVRF ControlVSEvapUnitToMeetLoad ControlVSHPOutput ControlVSHPOutput ConvectionFactor ConvertCasetoLower ConvertCasetoUpper ConvertIP ConvertIPdelta ConvertToElementTag ConvertToEscaped CoolBeamResidual CoolingCoil CoolWaterHumRatResidual CoolWaterTempResidual CoolWatertoAirHPHumRatResidual CoolWatertoAirHPTempResidual CorrectZoneAirTemp CorrectZoneContaminants CorrectZoneHumRat CostInfoOut CPCW CPHW CreateBoundaryList CreateBoundaryListCount CreateCategoryNativeVariables CreateCellArray CreateCurrentDateTimeString CreateDefaultComputation CreateEnergyReportStructure CreateFCfactorConstructions CreateHVACStepFullString CreateHVACTimeIntervalString CreateHVACTimeString CreateNewellAreaVector CreateNewellSurfaceNormalVector CreatePartitionCenterList CreatePartitionRegionList CreatePredefinedMonthlyReports CreateRegionList CreateRegionListCount CreateShadedWindowConstruction CreateSQLiteConstructionsTable CreateSQLiteConstructionsTable CreateSQLiteDatabase CreateSQLiteDatabase CreateSQLiteDaylightMap CreateSQLiteDaylightMap CreateSQLiteDaylightMapTitle CreateSQLiteDaylightMapTitle CreateSQLiteEnvironmentPeriodRecord CreateSQLiteEnvironmentPeriodRecord CreateSQLiteErrorRecord CreateSQLiteErrorRecord CreateSQLiteInfiltrationTable CreateSQLiteInfiltrationTable CreateSQLiteMaterialsTable CreateSQLiteMaterialsTable CreateSQLiteMeterDictionaryRecord CreateSQLiteMeterDictionaryRecord CreateSQLiteMeterRecord CreateSQLiteMeterRecord CreateSQLiteNominalBaseboardHeatTable CreateSQLiteNominalBaseboardHeatTable CreateSQLiteNominalElectricEquipmentTable CreateSQLiteNominalElectricEquipmentTable CreateSQLiteNominalGasEquipmentTable CreateSQLiteNominalGasEquipmentTable CreateSQLiteNominalHotWaterEquipmentTable CreateSQLiteNominalHotWaterEquipmentTable CreateSQLiteNominalLightingTable CreateSQLiteNominalLightingTable CreateSQLiteNominalOtherEquipmentTable CreateSQLiteNominalOtherEquipmentTable CreateSQLiteNominalPeopleTable CreateSQLiteNominalPeopleTable CreateSQLiteNominalSteamEquipmentTable CreateSQLiteNominalSteamEquipmentTable CreateSQLiteReportVariableDataRecord CreateSQLiteReportVariableDataRecord CreateSQLiteReportVariableDictionaryRecord CreateSQLiteReportVariableDictionaryRecord CreateSQLiteRoomAirModelTable CreateSQLiteRoomAirModelTable CreateSQLiteSchedulesTable CreateSQLiteSimulationsRecord CreateSQLiteSimulationsRecord CreateSQLiteStringTableRecord CreateSQLiteSurfacesTable CreateSQLiteSurfacesTable CreateSQLiteTabularDataRecords CreateSQLiteTabularDataRecords CreateSQLiteTimeIndexRecord CreateSQLiteTimeIndexRecord CreateSQLiteVentilationTable CreateSQLiteVentilationTable CreateSQLiteZoneGroupTable CreateSQLiteZoneGroupTable CreateSQLiteZoneListTable CreateSQLiteZoneListTable CreateSQLiteZoneTable CreateSQLiteZoneTable CreateStormWindowConstructions CreateSysTimeIntervalString CreateTCConstructions CreateTimeIntervalString CreateTimeString CreatExtBooundCondName CreateZoneExtendedOutput CreateZoneExtendedOutput CrossProduct CrossProduct cSurfaceClass CTRANS CurveValue DateToString DateToStringWithMonth DaylghtAltAndAzimuth DayltgAveInteriorReflectance DayltgClosestObstruction DayltgCrossProduct DayltgCurrentExtHorizIllum DayltgDirectIllumComplexFenestration DayltgDirectSunDiskComplexFenestration DayltgElecLightingControl DayltgExtHorizIllum DayltgGlare DayltgGlarePositionFactor DayltgGlareWithIntWins DayltgHitBetWinObstruction DayltgHitInteriorObstruction DayltgHitObstruction DayltgInteriorIllum DayltgInteriorMapIllum DayltgInteriorTDDIllum DayltgInterReflectedIllum DayltgInterReflectedIllumComplexFenestration DayltgInterReflIllFrIntWins DayltgLuminousEfficacy DayltgPierceSurface DayltgSetupAdjZoneListsAndPointers DayltgSkyLuminance DayltgSurfaceLumFromSun dCheckScheduleValueMinMax1 dCheckScheduleValueMinMax2 DeallocateLoadComponentArrays DebugRootFinder DecodeHHMMField DecodeMonDayHrMin DeflectionTemperatures DeflectionWidths DegradF DElightDaylightCoefficients DElightDaylightCoefficients DElightElecLtgCtrl DElightElecLtgCtrl DElightFreeMemory DElightFreeMemory DElightInputGenerator DElightInputGenerator DElightOutputGenerator DElightOutputGenerator DensityCFSFillGas Depth DERIV DetailsForSurfaces DetectOscillatingZoneTemp DetermineAzimuthAndTilt DetermineBranchFlowRequest DetermineBuildingFloorArea DetermineDateTokens DetermineFrequency DetermineIndexGroupFromMeterGroup DetermineIndexGroupKeyFromMeterName DetermineMaxBackSurfaces DetermineMeterIPUnits DetermineMinuteForReporting DeterminePolygonOverlap DetermineShadowingCombinations DetermineSunUpDown DevelopMesh DiffuseAverage DiffuseAverageProfAngGnd DiffuseAverageProfAngSky DisplayMaterialRoughness DisplayNumberandString DisplaySimDaysProgress DisplayString distance DistributeBBElecRadGains DistributeBBRadGains DistributeBBSteamRadGains DistributeHTRadGains DistributePlantLoad DistributePressureOnBranch DistributeTDDAbsorbedSolar DistributeUserDefinedPlantLoad DL_RES_r2 DLAG DOE2DXCoilHumRatResidual DOE2DXCoilHumRatResidual DOE2DXCoilResidual DOE2DXCoilResidual DOE2DXCoilResidual DoEndOfIterationOperations DomainRectangle_Contains DOMakeUPPERCase DoOneTimeInitializations DOSameString DoShadeControl DoStartOfTimeStepInitializations DownInterpolate4HistoryValues DumpAirLoopStatistics DumpCurrentLineBuffer DUMPVD DUMPVR DXCoilCyclingHumRatResidual DXCoilCyclingHumRatResidual DXCoilCyclingResidual DXCoilCyclingResidual DXCoilVarSpeedHumRatResidual DXCoilVarSpeedHumRatResidual DXCoilVarSpeedResidual DXCoilVarSpeedResidual DXFOut DXFOutLines DXFOutWireFrame DXHeatingCoilResidual DXHeatingCoilResidual DXHeatingCoilResidual DynamicClothingModel DynamicExtConvSurfaceClassification DynamicIntConvSurfaceClassification EchoOutActuatorKeyChoices EchoOutInternalVariableChoices EffectiveEPSLB EffectiveEPSLF EIRChillerHeatRecovery EN673ISO10292 EncodeMonDayHrMin EndEnergyPlus EndUniqueNodeCheck EnthalpyResidual epElapsedTime epGetTimeUsed epGetTimeUsedperCall epStartTime epStopTime epSummaryTimes eptime EQLWindowInsideEffectiveEmiss EQLWindowOutsideEffectiveEmiss EQLWindowSurfaceHeatBalance EquationsSolver ERF EstimateHEXSurfaceArea EvalInsideMovableInsulation EvalOutsideMovableInsulation EvaluateAdiabaticSurfaceTemperature EvaluateBasementCellTemperature EvaluateCellNeighborDirections evaluateChargeBlock evaluateChargeSimple EvaluateExpression EvaluateExtHcModels EvaluateFarfieldBoundaryTemperature EvaluateFarfieldCharacteristics EvaluateFieldCellTemperature EvaluateGroundSurfaceTemperature EvaluateIntHcModels EvaluateLoopSetPointLoad EvaluateNeighborCharacteristics evaluateQualify evaluateRatchet EvaluateSoilRhoCp EvaluateStack EvolveParaUCSDCV ExitCalcController ExpandComplexState ExpressAsCashFlows ExtendObjectDefinition ExteriorBCEqns ExternalInterfaceExchangeVariables ExternalInterfaceInitializeErlVariable ExternalInterfaceSetErlVariable ExternalInterfaceSetSchedule ExtOrIntShadeNaturalFlow Fabric_EstimateDiffuseProps FACSKY FalsePositionMethod FEQX FI FigureACAncillaries FigureAirEnthalpy FigureAirHeatCap FigureAuxilHeatGasHeatCap FigureBeamSolDiffuseReflFactors FigureBeamSolSpecularReflFactors FigureConstGradPattern FigureDayltgCoeffsAtPointsForSunPosition FigureDayltgCoeffsAtPointsForWindowElements FigureDayltgCoeffsAtPointsSetupForWindow FigureElectricalStorageZoneGains FigureFuelCellZoneGains FigureFuelEnthalpy FigureFuelHeatCap FigureGaseousWaterEnthalpy FigureHeightPattern FigureHXleavingGasHeatCap FigureInverterZoneGains FigureLHVofFuel FigureLiquidWaterEnthalpy FigureLiquidWaterHeatCap FigureMapPointDayltgFactorsToAddIllums FigureMicroCHPZoneGains FigureNDheightInZone FigurePowerConditioningLosses FigureProductGasesEnthalpy FigureProductGasHeatCap FigureRefPointDayltgFactorsToAddIllums FigureRefrigerationZoneGains FigureSolarBeamAtTimestep FigureSunCosines FigureSurfMapPattern FigureTDDZoneGains FigureTransformerZoneGains FigureTransientConstraints FigureTwoGradInterpPattern FILJAC FillBasisElement FillDefaultsSWP FillRemainingPredefinedEntries FillWeatherPredefinedEntries film filmg filmi filmPillar FILSKY FinalizeCFS FinalizeCFSLAYER FinalRateCoils FindAirLoopBranchConnection FindAirPlantCondenserLoopFromBranchList FindAllNumbersinList FindArrayIndex FindCompSPInput FindCompSPLoad FindCondenserLoopBranchConnection FindControlledZoneIndexFromSystemNodeNumberForZone FindDeltaTempRangeInput FindDemandSideMatch FindEMSVariable FindFirstLastPtr FindFirstRecord FindGlycol FindHXDemandSideLoopFlow FindInBasis FindItem FindIteminList FindIteminSortedList FindItemInVariableList FindLoopSideInCallingOrder FindNextRecord FindNonSpace FindNumberinList FindOAMixerMatchForOASystem FindPlantLoopBranchConnection FindRangeBasedOrUncontrolledInput FindRangeVariable FindRefrigerant FindRootSimpleController FindStratifiedTankSensedTemp FindTariffIndex FindTDDPipe FindUnitNumber FinishDebugOutputFiles FixViewFactors FluidCellInformation_ctor FM_BEAM FM_DIFF FM_F FNU forcedventilation FourPipeInductionUnitHasMixer FourPipeIUCoolingResidual FourPipeIUHeatingResidual FRA FrostControl FrostControlSetPointLimit FrostControlSetPointLimit FuelCellProductGasEnthResidual FUN FuncDetermineCoolantWaterExitTemp FuncDetermineCWMdotForInternalFlowControl FuncDetermineEngineTemp FV GasElecHeatingCoilResidual GASSES90 GassesLow GatherBEPSResultsForTimestep GatherBinResultsForTimestep GatherComponentLoadsHVAC GatherComponentLoadsIntGain GatherComponentLoadsSurfAbsFact GatherComponentLoadsSurface GatherForEconomics GatherForPredefinedReport GatherHeatGainReport GatherMonthlyResultsForTimestep GatherPeakDemandForTimestep GatherSourceEnergyEndUseResultsForTimestep GaussElimination generate_ears GenerateDElightDaylightCoefficients GenerateDElightDaylightCoefficients GeneratorPowerOutput GenericCrack GenOutputVariablesAuditReport Get2DMatrix Get2DMatrixDimensions GET_COMMAND GET_COMMAND_ARGUMENT Get_Environment_Variable GetActualDXCoilIndex GetAirBranchIndex GetAirFlowFlag GetAirflowNetworkInput GetAirHeatBalanceInput GetAirLoopAvailabilityManager GetAirModelDatas GetAirNodeData GetAirPathData GetAngleFactorList GetATMixer GetATMixerOutNode GetATMixerPriNode GetATMixers GetATMixerSecNode GetAttShdSurfaceData GetAverageTempByType GetBaseboardInput GetBaseboardInput GetBasementFloorHeatFlux GetBasementWallHeatFlux GetBLASTAbsorberInput GetBoilerInput GetBoilerInput GetBranchData GetBranchFanTypeName GetBranchFlow GetBranchInput GetBranchList GetBranchListInput GetBuildingData GetCBVAV GetCellWidths GetCellWidthsCount GetChildrenData GetChillerheaterInput GetCoilAirFlowRate GetCoilAirFlowRateVariableSpeed GetCoilAirInletNode GetCoilAirOutletNode GetCoilAvailScheduleIndex GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacityByIndexType GetCoilCapacityVariableSpeed GetCoilCondenserInletNode GetCoilControlNodeNum GetCoilGroupTypeNum GetCoilIndex GetCoilIndex GetCoilIndex GetCoilIndexVariableSpeed GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNodeVariableSpeed GetCoilMaxSteamFlowRate GetCoilMaxWaterFlowRate GetCoilMaxWaterFlowRate GetCoilMaxWaterFlowRate GetCoilObjectTypeNum GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNodeVariableSpeed GetCoilSteamInletNode GetCoilSteamOutletNode GetCoilTypeNum GetCoilWaterInletNode GetCoilWaterInletNode GetCoilWaterOutletNode GetColumnUsingTabs GetComfortSetpoints GetComponentData GetCondFDInput GetConductivityGlycol GetConnectorList GetConnectorListInput GetConstCOPChillerInput GetConstructData GetControlledZoneIndex GetControllerActuatorNodeNum GetControllerInput GetCoolBeams GetCoolingCoilTypeNameAndIndex GetCooltower GetCostEstimateInput GetCrossVentData GetCTGeneratorInput GetCTGeneratorResults GetCurrentHVACTime GetCurrentMeterValue GetCurrentScheduleValue GetCurveCheck GetCurveIndex GetCurveInput GetCurveMinMaxValues GetCurveName GetCurveObjectTypeNum GetCurveType GetCustomMeterInput GetDaylightingParametersDetaild GetDaylightingParametersInput GetDayScheduleIndex GetDemandManagerInput GetDemandManagerListInput GetDensityGlycol GetDesiccantDehumidifierInput GetDesignDayData GetDesignLightingLevelForZone GetDetShdSurfaceData GetDirectAirInput GetDisplacementVentData GetDSTData GetDualDuctInput GetDualDuctOutdoorAirRecircUse GetDuctInput GetDXCoilAirFlow GetDXCoilAvailSchPtr GetDXCoilBypassedFlowFrac GetDXCoilCapFTCurveIndex GetDXCoilIndex GetDXCoilNumberOfSpeeds GetDXCoils GetDXCoolingSystemInput GetDXHeatPumpSystemInput GetEarthTube GetElecReformEIRChillerInput GetElectricBaseboardInput GetElectricChillerInput GetElectricEIRChillerInput GetEMSInput GetEngineDrivenChillerInput GetEnvironmentalImpactFactorInfo GetEvapFluidCoolerInput GetEvapInput GetExhaustAbsorberInput GetExhaustAirInletNode GetExteriorEnergyUseInput GetExtVentedCavityIndex GetExtVentedCavityIndex GetExtVentedCavityTsColl GetExtVentedCavityTsColl GetFanAvailSchPtr GetFanCoilIndex GetFanCoilInletAirNode GetFanCoilMixedAirNode GetFanCoilOutAirNode GetFanCoilReturnAirNode GetFanCoilUnits GetFanCoilZoneInletAirNode GetFanDesignVolumeFlowRate GetFanIndex GetFanIndexForTwoSpeedCoil GetFanInletNode GetFanInput GetFanOutletNode GetFanPower GetFanSpeedRatioCurveIndex GetFanType GetFanVolFlow GetFarfieldTemp GetFirstBranchInletNodeName GetFluidCoolerInput GetFluidDensityTemperatureLimits GetFluidHeatExchangerInput GetFluidPropertiesData GetFluidSpecificHeatTemperatureLimits GetFrameAndDividerData GetFuelCellGeneratorInput GetFuelCellGeneratorResults GetFuelFactorInfo GetFurnaceInput GetGasAbsorberInput GetGeneratorFuelSupplyInput GetGeometryParameters GetGlycolNameByIndex GetGroundheatExchangerInput GetGroundReflectances GetGroundTemps GetGshpInput GetGshpInput GetGTChillerInput GetHeatBalanceInput GetHeatBalHAMTInput GetHeatExchangerObjectTypeNum GetHeatingCoilIndex GetHeatingCoilInput GetHeatingCoilNumberOfStages GetHeatingCoilPLFCurveIndex GetHeatingCoilTypeNum GetHeatReclaimSourceIndex GetHeatRecoveryInput GetHighTempRadiantSystem GetHPCoolingCoilIndex GetHTSubSurfaceData GetHTSurfaceData GetHTSurfExtVentedCavityData GetHumidifierInput GetHVACSingleDuctSysIndex GetHWBaseboardInput GetHXAssistedCoolingCoilInput GetHXCoilAirFlowRate GetHXCoilType GetHXCoilTypeAndName GetHXDXCoilIndex GetHXDXCoilName GetHybridVentilationControlStatus GetHybridVentilationInputs GetICEGeneratorResults GetICEngineGeneratorInput GetIceStorageInput GetIDFRecordsStats GetIndirectAbsorberInput GetIndUnits GetInputEconomicsChargeBlock GetInputEconomicsChargeSimple GetInputEconomicsComputation GetInputEconomicsCurrencyType GetInputEconomicsQualify GetInputEconomicsRatchet GetInputEconomicsTariff GetInputEconomicsVariable GetInputForLifeCycleCost GetInputFuelAndPollutionFactors GetInputLifeCycleCostNonrecurringCost GetInputLifeCycleCostParameters GetInputLifeCycleCostRecurringCosts GetInputLifeCycleCostUseAdjustment GetInputLifeCycleCostUsePriceEscalation GetInputTabularMonthly GetInputTabularPredefined GetInputTabularStyle GetInputTabularTimeBins GetInputViewFactors GetInputViewFactorsbyName GetInputZoneEvaporativeCoolerUnit GetInstantMeterValue GetInternalBranchData GetInternalHeatGainsInput GetInternalVariableValue GetInternalVariableValue GetInternalVariableValueExternalInterface GetInternalVariableValueExternalInterface GetInterpolatedSatProp GetInterpValue GetIntMassSurfaceData GetLastBranchOutletNodeName GetLastWord GetLightWellData GetListOfObjectsInIDD GetListofSectionsinInput GetLocationInfo GetLoopMixer GetLoopSidePumpIndex GetLoopSplitter GetLowTempRadiantSystem GetMaterialData GetMatrixInput getMaxAndSum GetMeteredVariables GetMeterIndex GetMeterResourceType GetMicroCHPGeneratorInput GetMicroCHPGeneratorResults GetMinOATCompressor GetMixerInput GetMixerInput GetMoistureBalanceEMPDInput GetMonthlyCostForResource GetMovableInsulationData GetMSHeatPumpInput GetMTGeneratorExhaustNode GetMTGeneratorInput GetMTGeneratorResults GetMundtData GetNewUnitNumber GetNextEnvironment GetNodeConnectionType GetNodeList GetNodeListsInput GetNodeNums GetNTUforCrossFlowBothUnmixed GetNumberOfSchedules GetNumberOfSurfaceLists GetNumberOfSurfListVentSlab GetNumChildren GetNumMeteredVariables GetNumOAControllers GetNumOAMixers GetNumOASystems GetNumObjectsFound GetNumObjectsInIDD GetNumRangeCheckErrorsFound GetNumSectionsFound GetNumSectionsinInput GetNumSegmentsForHorizontalTrenches GetNumSplitterMixerInConntrList GetOACompListNumber GetOACompName GetOACompType GetOACompTypeNum GetOAControllerInputs GetOAMixerIndex GetOAMixerInletNodeNumber GetOAMixerInputs GetOAMixerMixedNodeNumber GetOAMixerNodeNumbers GetOAMixerReliefNodeNumber GetOAMixerReturnNodeNumber GetOARequirements GetOASysControllerListIndex GetOASysNumCoolingCoils GetOASysNumHeatingCoils GetOASysNumSimpControllers GetOASystemNumber GetObjectDefInIDD GetObjectDefMaxArgs GetObjectItem GetObjectItemfromFile GetObjectItemNum GetOnlySingleNode GetOperationSchemeInput GetOSCData GetOSCMData GetOutAirNodesInput GetOutdoorAirUnitInputs GetOutdoorAirUnitOutAirNode GetOutdoorAirUnitReturnAirNode GetOutdoorAirUnitZoneInletNode GetOutsideAirSysInputs GetOutsideEnergySourcesInput GetParentData GetPipeInput GetPipesHeatTransfer GetPipingSystemsInput GetPIUs GetPlantAvailabilityManager GetPlantInput GetPlantLoopData GetPlantOperationInput GetPlantProfileInput GetPlantSizingInput GetPlantValvesInput GetPollutionFactorInput GetPondGroundHeatExchanger GetPowerManagerInput GetPressureCurveTypeAndIndex GetPressureSystemInput GetPreviousHVACTime GetProjectControlData GetProjectData GetPTUnit GetPTUnitMixedAirNode GetPTUnitOutAirNode GetPTUnitReturnAirNode GetPTUnitZoneInletAirNode GetPumpInput GetPurchasedAir GetPurchasedAirMixedAirHumRat GetPurchasedAirMixedAirTemp GetPurchasedAirOutAirMassFlow GetPurchasedAirReturnAirNode GetPurchasedAirZoneInletAirNode GetPVGeneratorResults GetPVInput GetPVTcollectorsInput GetPVTThermalPowerProduction GetQualityRefrig GetRecordLocations GetRectDetShdSurfaceData GetRectSubSurfaces GetRectSurfaces GetRefrigeratedRackIndex GetRefrigerationInput GetReportVariableInput GetRequiredMassFlowRate GetResidCrossFlowBothUnmixed GetResourceTypeChar GetReturnAirNodeForZone GetReturnAirPathInput GetRoomAirModelParameters GetRunPeriodData GetRunPeriodDesignData GetRuntimeLanguageUserInput GetSatDensityRefrig GetSatEnthalpyRefrig GetSatPressureRefrig GetSatSpecificHeatRefrig GetSatTemperatureRefrig GetScheduledSurfaceGains GetScheduleIndex GetScheduleMaxValue GetScheduleMinValue GetScheduleName GetScheduleType GetScheduleValuesForDay GetSecondaryInletNode GetSecondaryOutletNode GetSetPointManagerInputs GetShadingSurfReflectanceData GetShadowingInput GetShelfInput GetSimpleAirModelInputs GetSimpleShdSurfaceData GetSimpleWatertoAirHPInput GetSingleDayScheduleValues GetSiteAtmosphereData GetSizingParams GetSnowGroundRefModifiers GetSolarCollectorInput GetSpecialDayPeriodData GetSpecificHeatGlycol getSpecificUnitDivider getSpecificUnitIndex getSpecificUnitMultiplier GetSplitterInput GetSplitterInput GetSplitterNodeNumbers GetSplitterOutletNumber GetStandAloneERV GetStandAloneERVNodes GetStandAloneERVOutAirNode GetStandAloneERVReturnAirNode GetStandAloneERVZoneInletAirNode GetStandardMeterResourceType GetSteamBaseboardInput GetSteamCoilAvailScheduleIndex GetSteamCoilControlNodeNum GetSteamCoilIndex GetSteamCoilInput GetSTM GetStormWindowData GetSupHeatDensityRefrig GetSupHeatEnthalpyRefrig GetSupHeatPressureRefrig GetSupplyAirFlowRate GetSupplyAirFlowRate GetSupplyAirInletNode GetSupplyInletNode GetSupplyOutletNode GetSurfaceCountForOSCM GetSurfaceData GetSurfaceGroundHeatExchanger GetSurfaceHeatTransferAlgorithmOverrides GetSurfaceIndecesForOSCM GetSurfaceListsInputs GetSurfHBDataForMundtModel GetSurfHBDataForTempDistModel GetSysAvailManagerInputs GetSysAvailManagerListInputs GetSysInput GetSystemNodeNumberForZone GetSystemSizingInput GetTDDInput GetTESCoilIndex GetTESCoilInput GetThermalChimney GetTowerInput GetTranspiredCollectorIndex GetTranspiredCollectorInput GetTypeOfCoil GetUFADZoneData GetUnitarySystemDXCoolingCoilIndex GetUnitarySystemInput GetUnitarySystemOAHeatCoolCoil GetUnitConversion GetUnitHeaterInput GetUnitsString GetUnitSubString GetUnitVentilatorInput GetUnitVentilatorMixedAirNode GetUnitVentilatorOutAirNode GetUnitVentilatorReturnAirNode GetUnitVentilatorZoneInletAirNode GetUserConvectionCoefficients GetUserDefinedComponents GetUserDefinedOpSchemeInput GetUserDefinedPatternData GetUTSCTsColl GetVariableKeyCountandType GetVariableKeyCountandType GetVariableKeys GetVariableKeys GetVariableTypeAndIndex GetVariableUnitsString GetVarSpeedCoilInput GetVentilatedSlabInput GetVertices GetViscosityGlycol GetVRFInput GetVSCoilCondenserInletNode GetVSCoilMinOATCompressor GetVSCoilNumOfSpeeds GetWaterCoilAvailScheduleIndex GetWaterCoilCapacity GetWaterCoilIndex GetWaterCoilInput GetWaterMainsTemperatures GetWaterManagerInput GetWaterSource GetWaterThermalTankInput GetWatertoAirHPInput GetWatertoWaterHPInput GetWaterUseInput GetWeatherProperties GetWeatherStation GetWindowAC GetWindowACMixedAirNode GetWindowACOutAirNode GetWindowACReturnAirNode GetWindowACZoneInletAirNode GetWindowGapAirflowControlData GetWindowGlassSpectralData GetWindowShadingControlData GetWindTurbineInput GetWrapperInput GetWTGeneratorResults GetZoneAirDistribution GetZoneAirLoopEquipment GetZoneAirSetpoints GetZoneAndZoneListNames GetZoneContaminanInputs GetZoneContaminanSetpoints GetZoneData GetZoneDehumidifierInput GetZoneDehumidifierNodeNumber GetZoneEqAvailabilityManager GetZoneEquipment GetZoneEquipmentData GetZoneEquipmentData1 GetZoneInfilAirChangeRate GetZoneLoads GetZonePlenumInput GetZoneSizingInput GLtoAMB GoAhead guess HasFractionalScheduleValue hatter HCInWindowStandardRatings HConvGap HcUCSDCV HcUCSDDV HcUCSDUF HeatingCoilVarSpeedCycResidual HeatingCoilVarSpeedResidual HeatPumpRunFrac HeatPumpRunFrac HeatPumpRunFrac HeatWatertoAirHPTempResidual Height HEMINT HIC_ASHRAE HotWaterCoilResidual HotWaterCoilResidual HotWaterCoilResidual HotWaterCoilResidual HotWaterCoilResidual HotWaterHeatingCoilResidual HRadPar HTRANS HTRANS0 HTRANS1 HWBaseboardUAResidual HXAssistDXCoilResidual HXAssistedCoolCoilHRResidual HXAssistedCoolCoilHRResidual HXAssistedCoolCoilTempResidual HXAssistedCoolCoilTempResidual HXDemandSideLoopFlowResidual HybridVentilationControl IAM iCheckScheduleValue ICSCollectorAnalyticalSoluton iGetCoilAirOutletNode iGetCoilSteamInletNode iGetCoilSteamOutletNode INCLOS incrementEconVar IncrementInstMeterCache incrementSteps incrementTableEntry InitAirflowNetwork InitAirflowNetworkData InitAirHeatBalance InitAirLoops InitAirLoopSplitter InitAirMixer InitAirTerminalUserDefined InitAirZoneReturnPlenum InitAirZoneSupplyPlenum InitATMixer InitBaseboard InitBaseboard InitBLASTAbsorberModel InitBoiler InitBoiler InitBoreholeHXSimVars InitBSDFWindows InitCBVAV InitCoilUserDefined InitComplexWindows InitComponentNodes InitConductionTransferFunctions InitConnections InitConstCOPChiller InitController InitCoolBeam InitCTGenerators InitCurveReporting InitDaylightingDevices InitDemandManagers InitDesiccantDehumidifier InitDetailedIceStorage InitDirectAir InitDualDuct InitDuct InitDXCoil InitDXCoolingSystem InitDXHeatPumpSystem InitElecReformEIRChiller InitElectricBaseboard InitElectricChiller InitElectricEIRChiller InitEMS InitEMSControlledConstructions InitEMSControlledSurfaceProperties InitEnergyReports InitEngineDrivenChiller InitEquivalentLayerWindowCalculations InitEvapCooler InitEvapFluidCooler InitExhaustAbsorber InitExteriorConvectionCoeff InitFan InitFanCoilUnits InitFluidCooler InitFluidHeatExchanger InitFuelCellGenerators InitFurnace InitGasAbsorber InitGlassOpticalCalculations InitGshp InitGshp InitGTChiller InitHeatBalance InitHeatBalFiniteDiff InitHeatBalHAMT InitHeatingCoil InitHeatRecovery InitHighTempRadiantSystem InitHumidifier InitHWBaseboard InitHXAssistedCoolingCoil InitHybridVentSysAvailMgr InitialInitHeatBalFiniteDiff InitializeCFSDaylighting InitializeCFSStateData InitializeComponentSizingTable InitializeConstructionsTables InitializeDaylightMapTables InitializeEnvironmentPeriodsTable InitializeErrorsTable InitializeGlycolTempLimits InitializeHeatTransferPipes InitializeIndexes InitializeIndexes InitializeLoops InitializeMaterialsTable InitializeMeters initializeMonetaryUnit InitializeNominalBaseboardHeatTable InitializeNominalElectricEquipmentTable InitializeNominalGasEquipmentTable InitializeNominalHotWaterEquipmentTable InitializeNominalInfiltrationTable InitializeNominalLightingTable InitializeNominalOtherEquipmentTable InitializeNominalPeopleTable InitializeNominalSteamEquipmentTable InitializeNominalVentilationTable InitializeOperatingMode InitializeOutput InitializePipes InitializePredefinedMonthlyTitles InitializePsychRoutines InitializePumps InitializeRefrigerantLimits InitializeReportMeterDataDictionaryTable InitializeReportMeterDataTables InitializeReportVariableDataDictionaryTable InitializeReportVariableDataTables InitializeRoomAirModelTable InitializeRootFinder InitializeRuntimeLanguage InitializeSchedulesTable InitializeSimulationsTable InitializeSQLiteTables InitializeSurfacesTable InitializeSystemSizingTable InitializeTabularDataTable InitializeTabularDataTable InitializeTabularDataView InitializeTabularDataView InitializeTabularMonthly InitializeTimeIndicesTable InitializeViews InitializeWeather InitializeZoneGroupTable InitializeZoneInfoTable InitializeZoneListTable InitializeZoneSizingTable InitICEngineGenerators InitIndirectAbsorpChiller InitIndUnit InitInteriorConvectionCoeffs InitInteriorRadExchange InitInternalHeatGains InitIntSolarDistribution InitLoadBasedControl InitLoadDistribution InitLowTempRadiantSystem InitMicroCHPNoNormalizeGenerators InitMoistureBalanceEMPD InitMSHeatPump InitMTGenerators InitMundtModel InitOAController InitOAMixer InitOneTimePlantSizingInfo InitOutAirNodes InitOutdoorAirUnit InitOutsideAirSys InitPipesHeatTransfer InitPipingSystems InitPIU InitPlantProfile InitPlantUserComponent InitPlantValves InitPollutionMeterReporting InitPondGroundHeatExchanger InitPressureDrop InitPTUnit InitPurchasedAir InitPVTcollectors InitRefrigeration InitRefrigerationPlantConnections InitReturnAirPath InitSecretObjects InitSetPointManagers InitSimpleIceStorage InitSimpleMixingConvectiveHeatGains InitSimpleWatertoAirHP InitSimVars InitSimVars InitSimVars InitSimVars InitSolarCalculations InitSolarCollector InitSolarHeatGains InitSolReflRecSurf InitStandAloneERV InitSteamBaseboard InitSteamCoil InitSurfaceGroundHeatExchanger InitSurfaceHeatBalance InitSys InitSysAvailManagers InitSystemOutputRequired InitTempDistModel InitTESCoil InitThermalAndFluxHistories InitThermalComfort InitTower InitTranspiredCollector InitTRNSYSPV InitUCSDCV InitUCSDDV InitUCSDUF InitUniqueNodeCheck InitUnitarySystems InitUnitHeater InitUnitVentilator InitVarSpeedCoil InitVentilatedSlab InitVRF InitWaterCoil InitWaterSource InitWaterThermalTank InitWatertoAirHP InitWatertoWaterHP InitWindowAC InitWindTurbine InitWrapper InitZoneAirLoopEquipment InitZoneAirSetpoints InitZoneAirUserDefined InitZoneContSetpoints InitZoneDehumidifier InitZoneEquipment InitZoneEvaporativeCoolerUnit InPolygon InsertCurrencySymbol int_times_vector INTCPT Integer_IsInRange IntegerIsWithinTwoValues IntegerToString InterConnectTwoPlantLoopSides InteriorBCEqns InteriorNodeEqns InternalRangeCheck InternalSetupTankDemandComponent InternalSetupTankSupplyComponent interp INTERP InterpBlind InterpDefValuesForGlycolConc Interpolate Interpolate_Lagrange InterpolateBetweenFourValues InterpolateBetweenTwoValues InterpolatePipeTransBeam InterpProfAng InterpProfSlatAng InterpretWeatherDataLine InterpSlatAng InterpSw InterpValuesForGlycolConc IntInterfaceNodeEqns IntPreDefTableEntry IntToStr Invert3By3Matrix InvertMatrix InvJulianDay IPTrimSigDigits iRoundSigDigits IS_BEAM IS_DIFF IS_DSRATIO IS_F IS_LWP IS_OPENNESS IS_SWP isCompLoadRepReq IsControlledShade IsConverged_CurrentToPrevIteration IsConverged_PipeCurrentToPrevIteration IsCurveInputTypeValid IsCurveOutputTypeValid isExternalInterfaceErlVariable IsGlazeLayerX IsGZSLayer isInQuadrilateral IsInRange isInTriangle IsLeapYear IsNodeOnSetPtManager IsParentObject IsParentObjectCompSet IsShadingLayer IssueSevereAlphaInputFieldError IssueSevereInputFieldError IssueSevereRealInputFieldError IsValidConnectionType IsVBLayer isWithinRange ITERATE IterateRootFinder iTrimSigDigits JGDate JulianDay LClimb LDSumMax LDSumMean LEEDtariffReporting LimitCoilCapacity LimitController LimitTUCapacity LinesOut linint LoadEquipList LoadInterface LogicalToInteger LogicalToInteger LogPlantConvergencePoints lookupOperator LookUpScheduleValue LookUpSeason LookupSItoIP lubksb LUBKSB ludcmp LUDCMP LUdecomposition LUsolution MakeAnchorName MakeHVACTimeIntervalString MakeMirrorSurface MakeRectangularVertices MakeRelativeRectangularVertices MakeTransition MakeUPPERCase ManageAirflowNetworkBalance ManageAirHeatBalance ManageAirLoops ManageAirModel ManageBranchInput ManageControllers ManageCoolTower ManageDemand ManageEarthTube ManageElectCenterStorageInteractions ManageElectricLoadCenters ManageElectStorInteractions ManageEMS ManageExteriorEnergyUse ManageGeneratorControlState ManageGeneratorFuelFlow ManageHeatBalance ManageHeatBalFiniteDiff ManageHeatBalHAMT ManageHVAC ManageHybridVentilation ManageInsideAdaptiveConvectionAlgo ManageInternalHeatGains ManageInverter ManageMundtModel ManageNonZoneEquipment ManageOutsideAdaptiveConvectionAlgo ManageOutsideAirSystem ManagePlantLoadDistribution ManagePlantLoops ManageRefrigeratedCaseRacks ManageSetPoints ManageSimulation ManageSingleCommonPipe ManageSizing ManageSurfaceHeatBalance ManageSystemAvailability ManageThermalChimney ManageThermalComfort ManageTransformers ManageTwoWayCommonPipe ManageUCSDCVModel ManageUCSDDVModel ManageUCSDUFModels ManageUserDefinedPatterns ManageWater ManageWaterInits ManageWeather ManageZoneAirLoopEquipment ManageZoneAirUpdates ManageZoneContaminanUpdates ManageZoneEquipment MapExtConvClassificationToHcModels MapIntConvClassificationToHcModels MarkNode MatchAndSetColorTextString MatchPlantSys MatrixIndex matrixQBalance MeshPartition_CompareByDimension MeshPartition_SelectionSort MeshPartitionArray_Contains MinePlantStructForInfo MixedAirControlTempResidual ModifyWindow Modulus MonthToMonthNumber MovingAvg MRXINV MSHPCyclingResidual MSHPHeatRecovery MSHPVarSpeedResidual MultiModeDXCoilHumRatResidual MultiModeDXCoilHumRatResidual MultiModeDXCoilResidual MultiModeDXCoilResidual MultiModeDXCoilResidual MultiSpeedDXCoolingCoilStandardRatings MultiSpeedDXHeatingCoilStandardRatings MULTOL MyPlantSizingIndex NeighborInformationArray_Value NETRAD NewEMSVariable NewExpression newPreDefColumn newPreDefReport newPreDefSubTable NEWTON NodeHasSPMCtrlVarType NormalArea NumBranchesInBranchList NumCompsInBranch nusselt NusseltNumber OpenEPlusWeatherFile OPENNESS_LW OpenOutputFiles OpenOutputTabularFile OpenWeatherFile OPERATOR (*) OPERATOR (+) OPERATOR (-) OPERATOR (.dot.) OPERATOR (.twodcross.) OPERATOR (.twoddot.) OPERATOR (/) ORDER OutBaroPressAt OutDewPointTempAt OutDryBulbTempAt OutsidePipeHeatTransCoef OutWetBulbTempAt P01 PanesDeflection ParametricObjectsCheck parseComputeLine ParseExpression ParseStack ParseTime PartLoadFactor PassiveGapNusseltNumber PassPressureAcrossInterface PassPressureAcrossMixer PassPressureAcrossSplitter PD_BEAM PD_BEAM_CASE_I PD_BEAM_CASE_II PD_BEAM_CASE_III PD_BEAM_CASE_IV PD_BEAM_CASE_V PD_BEAM_CASE_VI PD_DIFF PD_LW PD_LWP PD_SWP PerformanceCurveObject PerformanceTableObject PerformIterationLoop PerformPipeCellSimulation PerformPipeCircuitSimulation PerformSolarCalculations PerformTemperatureFieldUpdate PierceSurface PierceSurfaceVector PipeCircuitInfo_InitInOutCells PipeSegmentInfo_InitPipeCells PIUInducesPlenumAir PIUnitHasMixer PlaneEquation PlantHalfLoopSolver PlantMassFlowRatesFunc PLRResidual PLRResidual PLRResidualMixedTank PLRResidualStratifiedTank PMVResidual POLY1F POLY2F POLYF polygon_contains_point_2d popStack pos PostIPProcessing POWER PreDefTableEntry PredictSystemLoads PredictZoneContaminants PreparePipeCircuitSimulation PrepDebugFilesAndVariables PreProcessorCheck PrepVariablesISO15099 PreScanReportingVariables PresProfile PressureCurveValue ProcessDataDicFile ProcessDateString ProcessEMSInput ProcessEPWHeader ProcessForDayTypes ProcessInput ProcessInputDataFile ProcessIntervalFields ProcessMinMaxDefLine ProcessNumber ProcessScheduleInput ProcessSurfaceVertices ProcessTokens ProduceMinMaxString ProduceMinMaxStringWStartMinute ProduceRDDMDD ProfileAngle PropagateResolvedFlow PStack PsyCpAirFnWTdb PsyHfgAirFnWTdb PsyHFnTdbRhPb PsyHFnTdbW PsyHgAirFnWTdb PsyPsatFnTemp PsyPsatFnTemp_raw PsyRhFnTdbRhov PsyRhFnTdbRhovLBnd0C PsyRhFnTdbWPb PsyRhoAirFnPbTdbW PsyRhovFnTdbRh PsyRhovFnTdbRhLBnd0C PsyRhovFnTdbWPb PsyTdbFnHW PsyTdpFnTdbTwbPb PsyTdpFnWPb PsyTsatFnHPb PsyTsatFnPb PsyTwbFnTdbWPb PsyTwbFnTdbWPb_raw PsyVFnTdbWPb PsyWFnTdbH PsyWFnTdbRhPb PsyWFnTdbTwbPb PsyWFnTdpPb psz Pt2Plane PullCompInterconnectTrigger PumpDataForTable PushBranchFlowCharacteristics PushInnerTimeStepArrays pushStack PushSystemTimestepHistories PushSystemTimestepHistories PushZoneTimestepHistories PushZoneTimestepHistories QsortC QsortPartition RadialCellInfo_XY_CrossSectArea RadialCellInformation_ctor RadialSizing_Thickness Rainflow RangeCheck RB_BEAM RB_DIFF RB_F RB_LWP RB_SWP rCheckDayScheduleValueMinMax rCheckScheduleValue rCheckScheduleValueMinMax1 rCheckScheduleValueMinMax2 ReadEnergyMeters ReadEPlusWeatherForDay ReadGeneralDomainInputs ReadHorizontalTrenchInputs ReadINIFile ReadInputLine ReadPipeCircuitInputs ReadPipeSegmentInputs ReadTableData ReadUserWeatherInput ReadWeatherForDay Real_ConstrainTo Real_IsInRange real_times_vector ReAllocateAndPreserveOutputVariablesForSimulation ReallocateIntegerArray ReallocateIVar ReallocateRealArray ReallocateRVar RealPreDefTableEntry RealToStr RecKeepHeatBalance RecordOutput RectangleF_Contains ReformEIRChillerCondInletTempResidual ReformEIRChillerHeatRecovery RegisterNodeConnection RegisterPlantCompDesignFlow RegulateCondenserCompFlowReqOp ReInitPlantLoopsAtFirstHVACIteration RemoveSpaces RemoveTrailingZeros reorder ReplaceBlanksWithUnderscores ReplaceBlanksWithUnderscores ReportAirflowNetwork ReportAirHeatBalance ReportAirLoopConnections ReportAirTerminalUserDefined ReportAndTestGlycols ReportAndTestRefrigerants ReportBaseboard ReportBaseboard ReportCBVAV ReportChillerIPLV ReportCoilUserDefined ReportCompSetMeterVariables ReportController ReportCoolBeam ReportCoolTower ReportCTFs ReportCWTankInits ReportDemandManagerList ReportDesiccantDehumidifier ReportDetailedIceStorage ReportDirectAir ReportDualDuct ReportDualDuctConnections ReportDuct ReportDXCoil ReportDXCoilRating ReportDYMeters ReportEarthTube ReportEconomicVariable ReportElectricBaseboard ReportEMS ReportEvapCooler ReportEvapFluidCooler ReportExteriorEnergyUse ReportFan ReportFanCoilUnit ReportFatalGlycolErrors ReportFatalRefrigerantErrors ReportFiniteDiffInits ReportFluidCooler ReportFluidHeatExchanger ReportForTabularReports ReportFurnace ReportGlass ReportHeatBalance ReportHeatingCoil ReportHeatRecovery ReportHighTempRadiantSystem ReportHRMeters ReportHumidifier ReportHWBaseboard ReportIllumMap ReportingFreqName ReportingThisVariable ReportInternalHeatGains ReportLoopConnections ReportLowTempRadiantSystem ReportMaxVentilationLoads ReportMeterDetails ReportMissing_RangeData ReportMixer ReportMNMeters ReportMoistureBalanceEMPD ReportMSHeatPump ReportNodeConnections ReportOAController ReportOAMixer ReportOrphanFluids ReportOrphanRecordObjects ReportOrphanSchedules ReportOutdoorAirUnit ReportOutputFileHeaders ReportParentChildren ReportPipesHeatTransfer ReportPIU ReportPlantProfile ReportPlantUserComponent ReportPlantValves ReportPondGroundHeatExchanger ReportPTUnit ReportPumps ReportPurchasedAir ReportPV ReportRackSystem ReportRefrigerationComponents ReportReturnAirPath ReportRuntimeLanguage ReportScheduleDetails ReportScheduleValues ReportSizingOutput ReportSMMeters ReportSolarCollector ReportSplitter ReportStandAloneERV ReportStandAloneWaterUse ReportSteamBaseboard ReportSteamCoil ReportSurfaceErrors ReportSurfaceGroundHeatExchngr ReportSurfaceHeatBalance ReportSurfaces ReportSurfaceShading ReportSys ReportSysSizing ReportSystemEnergyUse ReportThermalChimney ReportTowers ReportTSMeters ReportUnitarySystem ReportUnitHeater ReportUnitVentilator ReportVentilatedSlab ReportVRFCondenser ReportVRFTerminalUnit ReportWarmupConvergence ReportWaterCoil ReportWaterManager ReportWaterThermalTank ReportWaterUse ReportWeatherAndTimeInformation ReportWindowAC ReportWindTurbine ReportZoneAirLoopEquipment ReportZoneAirUserDefined ReportZoneDehumidifier ReportZoneEquipment ReportZoneEvaporativeCoolerUnit ReportZoneMeanAirTemp ReportZoneReturnPlenum ReportZoneSizing ReportZoneSupplyPlenum ResetAllPlantInterConnectFlags ResetController ResetEnvironmentCounter ResetHVACControl ResetNodeData ResetPerformanceCurveOutput ResetRootFinder ResetTerminalUnitFlowLimits ResetWeekDaysByMonth Resimulate resist ReSolveAirLoopControllers ResolveAirLoopFlowLimits ResolveLocationInformation ResolveLockoutFlags ResolveLoopFlowVsPressure ResolveParallelFlows ResolveSysFlow ReverseAndRecalculate RevertZoneTimestepHistories RevertZoneTimestepHistories RevisePlantCallingOrder RezeroZoneSizingArrays RhoH2O RHtoVP RKG RoundSigDigits rRoundSigDigits rTrimSigDigits SafeCopyPlantNode SafeDiv SafeDivide SameString SandiaCellTemperature SandiaEffectiveIrradiance SandiaF1 SandiaF2 SandiaImp SandiaIsc SandiaIx SandiaIxx SandiaModuleTemperature SandiaTcellFromTmodule SandiaVmp SandiaVoc SaveSimpleController ScanForReports ScanPlantLoopsForNodeNum ScanPlantLoopsForObject sCheckDayScheduleValueMinMax ScheduleAverageHoursPerWeek SEARCH SearchAscTable SearchWindow5DataFile SecantFormula SecantMethod selectTariff SetActuatedBranchFlowRate SetAdditionalNeighborData SetAllFlowLocks SetAllPlantSimFlagsToValue SetATMixerPriFlow SetATMixerPriFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetCoilDesFlow SetCoilSystemCoolingData SetCoilSystemHeatingDXFlag SetCompFlowRate SetComponentFlowRate SetCurrentWeather SetCurveOutputMinMaxValues SetDSTDateRanges SetDXCoilTypeData SetDXCoolingCoilData SetEquivalentLayerWindowProperties SetErlValueNumber SetExtConvectionCoeff SetFanData SetHeatExchangerData SetHeatToReturnAirFlag SetInitialMeterReportingAndOutputNames SetIntConvectionCoeff SetInternalVariableValue SetMinMax setNativeVariables SetNodeResult SetOAControllerData SetOnOffMassFlowRate SetOnOffMassFlowRate SetOnOffMassFlowRate SetOnOffMassFlowRateVSCoil SetOnOffMassFlowRateVSCoil SetOutAirNodes SetOutBulbTempAt SetPredefinedTables SetSimpleWSHPData SETSKY SetSpecialDayDates SetSpeedVariables SetStormWindowControl SetSurfHBDataForMundtModel SetSurfHBDataForTempDistModel SetSurfTmeanAir SETUP4x4_A SetupAdaptiveConvectionRadiantSurfaceData SetupAdaptiveConvectionStaticMetaData SetupAirLoopControllersTracer SetupAllOutputVariables SetUpAndSort SetupBranchControlTypes SetupCellNeighbors SetupCommonPipes SetupComplexFenestrationMaterialInput SetupComplexFenestrationStateInput SetupComplexWindowStateGeometry SetUpCompSets SetupDElightOutput4EPlus SetupDElightOutput4EPlus SetUpDesignDay SetupEMSActuator SetupEMSIntegerActuator SetupEMSIntegerInternalVariable SetupEMSInternalVariable SetupEMSLogicalActuator SetupEMSRealActuator SetupEMSRealInternalVariable SetupEnvironmentTypes SetupFuelConstituentData SetupGeneratorControlStateManager SetupIndividualControllerTracer SetupInitialPlantCallingOrder SetupIntegerOutputVariable SetupInterpolationValues SetupLoopFlowRequest SetupMeteredVarsForSetPt SetupMundtModel SetupNodeSetpointsAsActuators SetupNodeVarsForReporting SetupOutputVariable SetupPipeCircuitInOutCells SetupPlantEMSActuators SetupPollutionCalculations SetupPollutionMeterReporting SetupPossibleOperators SetupPrimaryAirSystemAvailMgrAsActuators SetupPumpMinMaxFlows SetupRealOutputVariable SetupRealOutputVariable_IntKey SetupReportInput SetupReports SetupRootFinder SetUpSchemeColors SetupShadeSurfacesForSolarCalcs SetupSimpleWindowGlazingSystem SetupSimulation SetupStratifiedNodes SetupSurfaceConstructionActuators SetupSurfaceConvectionActuators SetupSurfaceOutdoorBoundaryConditionActuators SetUpSysSizingArrays SetupTankDemandComponent SetupTankSupplyComponent SetupThermostatActuators SetupTimePointers SetupUnitConversions SetupWeekDaysByMonth SetupWindowShadingControlActuators SetupZoneEquipmentForConvectionFlowRegime SetupZoneGeometry SetupZoneInfoAsInternalDataAvail SetupZoneInternalGain SetupZoneInternalGain SetupZoneSizing SetUpZoneSizingArrays SetUTSCQdotSource SetVarSpeedCoilData SetVentedModuleQdotSource SetVSHPAirFlow SetVSHPAirFlow SetWindSpeedAt SetZoneEquipSimOrder shading shadingedge shadingin SHADOW SharedDVCVUFDataInit SHDBKS SHDGSS SHDRVL SHDSBS shift ShiftPipeTemperaturesForNewIteration ShiftPlantLoopSideCallingOrder ShiftTemperaturesForNewIteration ShiftTemperaturesForNewTimeStep ShowAuditErrorMessage ShowBranchesOnLoop ShowContinueError ShowContinueError ShowContinueErrorTimeStamp ShowContinueErrorTimeStamp ShowErrorMessage ShowErrorMessage ShowFatalError ShowFatalError ShowMessage ShowMessage ShowPsychrometricSummary ShowRecurringContinueErrorAtEnd ShowRecurringContinueErrorAtEnd ShowRecurringErrors ShowRecurringSevereErrorAtEnd ShowRecurringSevereErrorAtEnd ShowRecurringWarningErrorAtEnd ShowRecurringWarningErrorAtEnd ShowSevereError ShowSevereError ShowSevereMessage ShowSevereMessage ShowWarningError ShowWarningError ShowWarningMessage ShowWarningMessage showWarningsBasedOnTotal Sim4PipeFanCoil SimAirChillerSet SimAirLoop SimAirLoopComponent SimAirLoopComponents SimAirLoops SimAirLoopSplitter SimAirMixer SimAirTerminalUserDefined SimAirZonePlenum SimATMixer SimBaseboard SimBLASTAbsorber SimBoiler SimCBVAV SimCBVAV SimCentralGroundSourceHeatPump SimChiller SimCoilUserDefined SimComponentModelFan SimConstVol SimCoolBeam SimCostEstimate SimCTGenerator SimCTPlantHeatRecovery SimCyclingWindowAC SimDesiccantDehumidifier SimDetailedIceStorage SimDirectAir SimDistrictEnergy SimDualDuctConstVol SimDualDuctVarVol SimDualDuctVAVOutdoorAir SimDuct SimDXCoil SimDXCoilMultiMode SimDXCoilMultiSpeed SimDXCoolingSystem SimDXHeatPumpSystem SimElecBaseBoard SimElectricBaseBoard SimElectricConvective SimElectricEIRChiller SimEvapCooler SimEvapFluidCoolers SimExhaustAbsorber SimFanCoilUnit SimFluidCoolers SimFluidHeatExchanger SimFourPipeIndUnit SimFuelCellGenerator SimFuelCellPlantHeatRecovery SimFurnace SimGasAbsorber SimGroundHeatExchangers SimHeatPumpWaterHeater SimHeatRecovery SimHighTempRadiantSystem SimHPWatertoWaterCOOLING SimHPWatertoWaterHEATING SimHPWatertoWaterSimple SimHumidifier SimHVAC SimHWBaseboard SimHWConvective SimHXAssistedCoolingCoil SimICEngineGenerator SimICEPlantHeatRecovery SimIceStorage SimIndirectAbsorber SimIndUnit SimLowTempRadiantSystem SimMicroCHPGenerator SimMicroCHPPlantHeatRecovery SimMSHeatPump SimMSHP SimMTGenerator SimMTPlantHeatRecovery SimMultiSpeedCoils SimOAComponent SimOAController SimOAMixer SimOnOffFan SimOutdoorAirEquipComps SimOutdoorAirUnit SimOutsideAirSys SimOutsideEnergy SimPackagedTerminalUnit SimPipes SimPipesHeatTransfer SimPipingSystemCircuit SimPIU SimPlantEquip SimPlantValves SimpleCoolingCoilUAResidual SimpleEvapFluidCoolerUAResidual SimpleFluidCoolerUAResidual SimpleHeatingCoilUAResidual SimpleTowerApproachResidual SimpleTowerTrResidual SimpleTowerUAResidual SimPondGroundHeatExchanger SimPressureDropSystem SimPTUnit SimPumps SimPurchasedAir SimPVGenerator SimPVTcollectors SimReformulatedEIRChiller SimRefrigCondenser SimReturnAirPath SimSelectedEquipment SimSetPointManagers SimSimpleEvapFluidCooler SimSimpleFan SimSimpleFluidCooler SimSimpleTower SimSolarCollector SimStandAloneERV SimSteamBaseboard SimSteamBoiler SimSteamCoils SimSurfaceGroundHeatExchanger SimSysAvailManager SimTESCoil SimTowers SimTranspiredCollector SimulateAllInteriorRadialSoilSlices SimulateAllLoopSideBranches SimulateAllLoopSidePumps SimulateDemandManagerList SimulateDetailedRefrigerationSystems SimulateDetailedTransRefrigSystems SimulateDualDuct SimulateFanComponents SimulateFluidCell SimulateHeatingCoilComponents SimulateInnerMostRadialSoilSlice SimulateLoopSideBranchGroup SimulateOuterMostRadialSoilSlice SimulatePlantProfile SimulateRadialInsulationCell SimulateRadialPipeCell SimulateRadialToCartesianInterface SimulateSingleDuct SimulateSteamCoilComponents SimulateVRF SimulateWaterCoilComponents SimulateWaterHeaterStandAlone SimulateWaterUse SimulateWaterUseConnection SimUnitaryBypassVAV SimUnitarySystem SimUnitHeater SimUnitVentilator SimUnitVentOAMixer SimUserDefinedPlantComponent SimVariableSpeedCoils SimVariableSpeedHP SimVariableSpeedHP SimVariableTower SimVariableVolumeFan SimVAV SimVAVVS SimVentilatedSlab SimVentSlabOAMixer SimVRF SimVRFCondenserPlant SimWaterCoils SimWaterSource SimWaterThermalTank SimWatertoAirHP SimWatertoAirHPSimple SimWindowAC SimWindTurbine SimZoneAirLoopEquipment SimZoneAirUserDefined SimZoneDehumidifier SimZoneEquipment SimZoneEvaporativeCoolerUnit SimZoneExhaustFan SimZoneOutAirUnitComps SingelSpeedDXCoolingCoilStandardRatings SingleSpeedDXHeatingCoilStandardRatings SingleSpeedFluidCooler SizeAbsorpChiller SizeAirLoopBranches SizeAirLoops SizeBaseboard SizeBoiler SizeBoiler SizeCBVAV SizeConstCOPChiller SizeController SizeCoolBeam SizeDemandSidePlantConnections SizeDirectAir SizeDualDuct SizeDXCoil SizeElecReformEIRChiller SizeElectricBaseboard SizeElectricBaseboard SizeElectricChiller SizeElectricEIRChiller SizeEngineDrivenChiller SizeEvapCooler SizeEvapFluidCooler SizeExhaustAbsorber SizeFan SizeFanCoilUnit SizeFluidCooler SizeFluidHeatExchanger SizeFurnace SizeGasAbsorber SizeGTChiller SizeHeatingCoil SizeHeatRecovery SizeHighTempRadiantSystem SizeHumidifier SizeHVACWaterToAir SizeHWBaseboard SizeIndirectAbsorpChiller SizeIndUnit SizeLowTempRadiantSystem SizeMSHeatPump SizeOAController SizeOutdoorAirUnit SizePIU SizePlantLoop SizePTUnit SizePump SizePurchasedAir SizePVT SizeStandAloneERV SizeStandAloneWaterHeater SizeSteamBaseboard SizeSteamCoil SizeSupplySidePlantConnections SizeSys SizeTankForDemandSide SizeTankForSupplySide SizeTESCoil SizeTower SizeUCSDUF SizeUnitarySystem SizeUnitHeater SizeUnitVentilator SizeVarSpeedCoil SizeVentilatedSlab SizeVRF SizeVRFCondenser SizeVSMerkelTower SizeWaterCoil SizeWaterManager SizeWaterSource SizeWindowAC SizeWrapper SizeZoneDehumidifier SizeZoneEquipment SizeZoneEvaporativeCoolerUnit SkipEPlusWFHeader SkyDifSolarShading SkyGndWeight SkyWeight SLtoAMB SLtoGL SLVSKY solar_EN673 solarISO15099 SolarSprectrumAverage SOLMATS SolveAirLoopControllers SolveForWindowTemperatures SolveRegression SolveRegulaFalsi SolverMoistureBalanceEMPD SOLVZP SortHistory Specular_Adjust Specular_EstimateDiffuseProps Specular_F Specular_OffNormal Specular_RATDiff Specular_SWP SQLiteBegin SQLiteBegin SQLiteBindDouble SQLiteBindInteger SQLiteBindLogicalMacro SQLiteBindNULL SQLiteBindText SQLiteBindTextMacro SQLiteClearBindings SQLiteCloseDatabase SQLiteColumnInt SQLiteColumnIntMacro SQLiteCommit SQLiteCommit SQLiteExecuteCommand SQLiteExecuteCommandMacro SQLiteFinalizeCommand SQLiteOpenDatabase SQLiteOpenDatabaseMacro SQLitePrepareStatement SQLitePrepareStatementMacro SQLiteResetCommand SQLiteStepCommand SQLiteWriteMessage SQLiteWriteMessageMacro SQLiteWriteMessageMacro StandardIndexTypeKey StandardVariableTypeKey StartingWindowTemps StartingWinTempsForNominalCond SteamHeatingCoilResidual StorageType StoreAPumpOnCurrentTempLoop storeIterationResults StoreRecurringErrorMessage StringValue StrToReal SumAllInternalCO2Gains SumAllInternalConvectionGains SumAllInternalGenericContamGains SumAllInternalLatentGains SumAllInternalRadiationGains SumAllReturnAirConvectionGains SumAllReturnAirLatentGains SumHATsurf SumHATsurf SumHATsurf SumHATsurf SumHATsurf SumHATsurf SumInternalCO2GainsByTypes SumInternalConvectionGainsByTypes SumInternalLatentGainsByTypes SumInternalRadiationGainsByTypes SummarizeErrors SumReturnAirConvectionGainsByTypes SumZoneImpacts SUN3 SUN4 SupSATResidual SurfaceScheduledSolarInc SurveyDemandManagers SystemPropertiesAtLambdaAndPhi SystemSpectralPropertiesAtPhi TableLookupObject TARCOG90 TBND TdbFnHRhPb TDMA TDMA_R TellMeHowManyObjectItemArgs TemperaturesFromEnergy TempIPtoSI TempSItoIP terpld TESCoilHumRatResidual TESCoilResidual TestAirPathIntegrity TestBranchIntegrity TestCompSet TestCompSetInletOutletNodes TestInletOutletNodes TestReturnAirPathIntegrity TestSupplyAirPathIntegrity therm1d TightenNodeMinMaxAvails TimestepInitComplexFenestration TimestepTypeName TraceAirLoopController TraceAirLoopControllers TraceIndividualController TraceIterationStamp TrackAirLoopController TrackAirLoopControllers TRadC TransAndReflAtPhi TransformVertsByAspect TransTDD Triangulate TrimSigDigits TurnOffLoopEquipment TurnOffLoopSideEquipment TurnOffReportRangeCheckErrors TurnOnPlantLoopPipes TurnOnReportRangeCheckErrors TwoSpeedFluidCooler UnitarySystemHeatRecovery UpdateAbsorberChillerComponentGeneratorSide UpdateAirflowNetwork UpdateAirMixer UpdateAirSysCompPtrArray UpdateAirSysSubCompPtrArray UpdateAirSysSubSubCompPtrArray UpdateAirZoneReturnPlenum UpdateAirZoneSupplyPlenum UpdateAnyLoopDemandAlterations UpdateATMixer UpdateBaseboard UpdateBaseboardPlantConnection UpdateBasementSurfaceTemperatures UpdateBBElecRadSourceValAvg UpdateBBRadSourceValAvg UpdateBBSteamRadSourceValAvg UpdateBLASTAbsorberRecords UpdateBoilerRecords UpdateBoilerRecords UpdateBracket UpdateBranchConnections UpdateChillerComponentCondenserSide UpdateChillerheaterRecords UpdateChillerRecords UpdateColdWeatherProtection UpdateCommonPipe UpdateComplexWindows UpdateComponentHeatRecoverySide UpdateConstCOPChillerRecords UpdateController UpdateCoolBeam UpdateCoolTower UpdateCTGeneratorRecords UpdateDataandReport UpdateDemandManagers UpdateDesiccantDehumidifier UpdateDetailedIceStorage UpdateDualDuct UpdateDuct UpdateDXCoil UpdateElectricBaseboard UpdateElectricChillerRecords UpdateElectricEIRChillerRecords UpdateEMSTrendVariables UpdateEngineDrivenChiller UpdateEvapCooler UpdateEvapFluidCooler UpdateEvaporativeCondenserBasinHeater UpdateEvaporativeCondenserWaterUse UpdateExhaustAbsorberCoolRecords UpdateExhaustAbsorberHeatRecords UpdateExhaustAirFlows UpdateFan UpdateFinalSurfaceHeatBalance UpdateFluidCooler UpdateFluidHeatExchanger UpdateFuelCellGeneratorRecords UpdateGasAbsorberCoolRecords UpdateGasAbsorberHeatRecords UpdateGSHPRecords UpdateGSHPRecords UpdateGSHPRecords UpdateGTChillerRecords UpdateHalfLoopInletTemp UpdateHeatBalHAMT UpdateHeatingCoil UpdateHeatRecovery UpdateHighTempRadiantSystem UpdateHistories UpdateHistory UpdateHTRadSourceValAvg UpdateHumidifier UpdateHVACInterface UpdateHWBaseboard UpdateHWBaseboardPlantConnection UpdateIceFractions UpdateICEngineGeneratorRecords UpdateIndirectAbsorberRecords UpdateInternalGainValues UpdateIrrigation UpdateLoadCenterRecords UpdateLoopSideReportVars UpdateLowTempRadiantSystem UpdateMeterReporting UpdateMeters UpdateMeterValues UpdateMicroCHPGeneratorRecords UpdateMinMax UpdateMixedAirSetPoints UpdateMoistureBalanceEMPD UpdateMoistureBalanceFD UpdateMSHeatPump UpdateMTGeneratorRecords UpdateNode UpdateNodeThermalHistory UpdateOAController UpdateOAMixer UpdateOAPretreatSetPoints UpdatePipesHeatTransfer UpdatePipingSystems UpdatePlantLoopInterface UpdatePlantMixer UpdatePlantProfile UpdatePlantSplitter UpdatePlantValves UpdatePondGroundHeatExchanger UpdatePrecipitation UpdatePressureDrop UpdatePurchasedAir UpdatePVTcollectors UpdateRadSysSourceValAvg UpdateRecords UpdateReformEIRChillerRecords UpdateRefrigCondenser UpdateReportWaterSystem UpdateRootFinder UpdateScheduleValues UpdateSetPointManagers UpdateSimpleWatertoAirHP UpdateSoilProps UpdateSolarCollector UpdateSplitter UpdateSQLiteErrorRecord UpdateSQLiteErrorRecord UpdateSQLiteSimulationRecord UpdateSQLiteSimulationRecord UpdateSteamBaseboard UpdateSteamBaseboardPlantConnection UpdateSteamCoil UpdateSurfaceGroundHeatExchngr UpdateSys UpdateSysSizing UpdateSystemOutputRequired UpdateTabularReports UpdateTEStorage UpdateThermalHistories UpdateTowers UpdateTranspiredCollector UpdateUnitarySystemControl UpdateUtilityBills UpdateVarSpeedCoil UpdateVentilatedSlab UpdateVerticalGroundHeatExchanger UpdateVRFCondenser UpdateWaterCoil UpdateWaterConnections UpdateWaterManager UpdateWaterSource UpdateWaterThermalTank UpdateWaterToAirCoilPlantConnection UpdateWatertoAirHP UpdateWeatherData UpdateWholeBuildingRecords UpdateZoneAirLoopEquipment UpdateZoneCompPtrArray UpdateZoneDehumidifier UpdateZoneEquipment UpdateZoneInletConvergenceLog UpdateZoneListAndGroupLoads UpdateZoneSizing UpdateZoneSubCompPtrArray UpdateZoneSubSubCompPtrArray ValidateAndSetSysAvailabilityManagerType ValidateComponent ValidateDistributionSystem ValidateEMSProgramName ValidateEMSVariableName ValidateExhaustFanInput ValidateFlowControlPaths ValidateFuelType ValidateIndexType ValidateMaterialRoughness ValidateMonthDay ValidateNStandardizeMeterTitles ValidateObjectandParse ValidatePipeConstruction ValidatePLFCurve ValidateSection ValidateSectionsInput ValidateVariableType value_to_vector ValueToString VAVVSCoolingResidual VAVVSHCFanOnResidual VAVVSHWFanOnResidual VAVVSHWNoFanResidual VB_CriticalSlatAngle VB_DIFF VB_LWP VB_ShadeControl VB_SLAT_RADIUS_RATIO VB_SOL4 VB_SOL46_CURVE VB_SOL6 VB_SWP vec2d_cross_product vec2d_dot_product vec_cross_product vec_dot_product VecLength VecNegate VecNormalize VecRound VecSquaredLength vector_add vector_div_int vector_div_real vector_subtract vector_times_int vector_times_real vector_to_array VerifyControlledZoneForThermostat VerifyCustomMetersElecPowerMgr VerifyHeatExchangerParent VerifyName VerifySetPointManagers VerifyThermostatInZone VerifyUniqueBaseboardName VerifyUniqueBoilerName VerifyUniqueChillerName VerifyUniqueCoilName ViewFac VisibleSprectrumAverage Volume VRMLOut VSCoilCyclingHumResidual VSCoilCyclingResidual VSCoilCyclingResidual VSCoilSpeedHumResidual VSCoilSpeedResidual VSCoilSpeedResidual VSEvapUnitLoadResidual VSHPCyclingResidual VSHPCyclingResidual VSHPSpeedResidual VSHPSpeedResidual VSMerkelResidual W5InitGlassParameters W5LsqFit W5LsqFit2 W6CoordsFromWorldVect warnIfNativeVarname WetCoilOutletCondition WhichCompSet WhichParentCompSet WhichParentSet Width WindowGapAirflowControl WindowGasConductance WindowGasPropertiesAtTemp WindowHeatBalanceEquations WindowScheduledSolarAbs WindowShadingManager WindowTempsForNominalCond WindSpeedAt Windward WorldVectFromW6 WriteAdaptiveComfortTable WriteAirLoopStatistics WriteBEPSTable WriteCompCostTable WriteComponentSizing WriteCumulativeReportMeterData WriteDaylightMapTitle WriteDemandEndUseSummary WriteInputArguments WriteIntegerData WriteIntegerVariableOutput WriteMeterDictionaryItem WriteModifiedArguments WriteMonthlyTables WriteOutputArguments WriteOutputEN673 WritePoint WritePredefinedTables WriteRealData WriteRealVariableOutput WriteReportHeaders WriteReportIntegerData WriteReportMeterData WriteReportRealData WriteReportVariableDictionaryItem WriteRootFinderStatus WriteRootFinderTrace WriteRootFinderTraceHeader WriteSourceEnergyEndUseSummary writeSubtitle WriteSurfaceShadowing WriteTable WriteTableOfContents WriteTabularLifeCycleCostReport WriteTabularReports WriteTabularTariffReports WriteTARCOGInputFile writeTextLine WriteTimeBinTables WriteTimeStampFormatData WriteTrace WriteVeriSumTable WriteZoneLoadComponentTable WVDC XNormalArea XYRectangle XZRectangle YNormalArea YZRectangle ZeroHVACValues ZNormalArea