Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
SUBROUTINE AllocateHeatBalArrays ! Heat Balance Array Allocation
! SUBROUTINE INFORMATION:
! AUTHOR Richard Liesen
! DATE WRITTEN February 1998
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This subroutine allocates the arrays to meet simulation requirements
! METHODOLOGY EMPLOYED:
! Uses the status flags to trigger variable allocation.
! REFERENCES:
! na
! USE STATEMENTS:
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
! na
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
! na
! FLOW:
! Use the total number of zones or surfaces to allocate variables to avoid a limit
! Allocate real Variables
! Following used for Calculations
! Allocate variables in DataHeatBalSys
ALLOCATE(SumConvHTRadSys(NumOfZones))
SumConvHTRadSys=0.0D0
ALLOCATE(SumLatentHTRadSys(NumOfZones))
SumLatentHTRadSys=0.0D0
ALLOCATE(QHTRadSysToPerson(NumOfZones))
QHTRadSysToPerson=0.0D0
ALLOCATE(QHWBaseboardToPerson(NumOfZones))
QHWBaseboardToPerson=0.0D0
ALLOCATE(QSteamBaseboardToPerson(NumOfZones))
QSteamBaseboardToPerson=0.0D0
ALLOCATE(QElecBaseboardToPerson(NumOfZones))
QElecBaseboardToPerson=0.0D0
ALLOCATE(XMAT(NumOfZones))
XMAT = 23.0d0
ALLOCATE(XM2T(NumOfZones))
XM2T = 23.0d0
ALLOCATE(XM3T(NumOfZones))
XM3T = 23.0d0
ALLOCATE(XM4T(NumOfZones))
XM4T = 23.0d0
ALLOCATE(DSXMAT(NumOfZones))
DSXMAT = 23.0D0
ALLOCATE(DSXM2T(NumOfZones))
DSXM2T = 23.0D0
ALLOCATE(DSXM3T(NumOfZones))
DSXM3T = 23.0D0
ALLOCATE(DSXM4T(NumOfZones))
DSXM4T = 23.0D0
ALLOCATE(XMPT(NumOfZones))
XMPT = 23.0d0
ALLOCATE(MCPI(NumOfZones))
MCPI=0.0d0
ALLOCATE(MCPTI(NumOfZones))
MCPTI=0.0d0
ALLOCATE(MCPV(NumOfZones))
MCPV=0.0d0
ALLOCATE(MCPTV(NumOfZones))
MCPTV=0.0d0
ALLOCATE(MCPM(NumOfZones))
MCPM=0.0d0
ALLOCATE(MCPTM(NumOfZones))
MCPTM=0.0d0
ALLOCATE(MixingMassFlowZone(NumOfZones))
MixingMassFlowZone=0.0d0
ALLOCATE(MixingMassFlowXHumRat(NumOfZones))
MixingMassFlowXHumRat=0.0d0
ALLOCATE(ZoneLatentGain(NumOfZones))
ZoneLatentGain=0.0d0
ALLOCATE(OAMFL(NumOfZones))
OAMFL=0.0d0
ALLOCATE(VAMFL(NumOfZones))
VAMFL=0.0d0
ALLOCATE(ZTAV(NumOfZones))
ZTAV = 23.0d0
ALLOCATE(ZTAVComf(NumOfZones))
ZTAVComf = 23.0d0
ALLOCATE(ZT(NumOfZones))
ZT = 23.0d0
ALLOCATE(TempTstatAir(NumOfZones))
TempTstatAir = 23.0d0
ALLOCATE(MAT(NumOfZones))
MAT = 23.0d0
ALLOCATE(ZoneTMX(NumOfZones))
ZoneTMX = 23.0d0
ALLOCATE(ZoneTM2(NumOfZones))
ZoneTM2 = 23.0d0
! Allocate this zone air humidity ratio
ALLOCATE(ZoneAirHumRatAvg(NumOfZones))
ZoneAirHumRatAvg=0.01d0
ALLOCATE(ZoneAirHumRatAvgComf(NumOfZones))
ZoneAirHumRatAvgComf=0.01d0
ALLOCATE(ZoneAirHumRat(NumOfZones))
ZoneAirHumRat=0.01d0
ALLOCATE(ZoneAirHumRatOld(NumOfZones))
ZoneAirHumRatOld=0.01d0
ALLOCATE(SumHmAW(NumOfZones))
SumHmAW=0.0d0
ALLOCATE(SumHmARa(NumOfZones))
SumHmARa=0.0d0
ALLOCATE(SumHmARaW(NumOfZones))
SumHmARaW=0.0d0
ALLOCATE(MCPTE(NumOfZones))
MCPTE=0.0d0
ALLOCATE(MCPE(NumOfZones))
MCPE=0.0d0
ALLOCATE(EAMFL(NumOfZones))
EAMFL=0.0d0
ALLOCATE(MCPTC(NumOfZones))
MCPTC=0.0d0
ALLOCATE(MCPC(NumOfZones))
MCPC=0.0d0
ALLOCATE(CTMFL(NumOfZones))
CTMFL=0.0d0
ALLOCATE(MDotCPOA(NumOfZones))
MDotCPOA=0.0d0
ALLOCATE(MDotOA(NumOfZones))
MDotOA=0.0d0
IF (Contaminant%CO2Simulation) Then
OutdoorCO2 = GetCurrentScheduleValue(Contaminant%CO2OutdoorSchedPtr)
ALLOCATE(ZoneAirCO2(NumOfZones))
ZoneAirCO2=OutdoorCO2
ALLOCATE(ZoneAirCO2Temp(NumOfZones))
ZoneAirCO2Temp=OutdoorCO2
ALLOCATE(ZoneAirCO2Avg(NumOfZones))
ZoneAirCO2Avg=OutdoorCO2
END IF
IF (Contaminant%GenericContamSimulation) Then
OutdoorGC = GetCurrentScheduleValue(Contaminant%GenericContamOutdoorSchedPtr)
ALLOCATE(ZoneAirGC(NumOfZones))
ZoneAirGC=OutdoorGC
ALLOCATE(ZoneAirGCTemp(NumOfZones))
ZoneAirGCTemp=OutdoorGC
ALLOCATE(ZoneAirGCAvg(NumOfZones))
ZoneAirGCAvg=OutdoorGC
END IF
ALLOCATE(MaxTempPrevDay(NumofZones))
MaxTempPrevDay = 0.0d0
ALLOCATE(MinTempPrevDay(NumofZones))
MinTempPrevDay = 0.0d0
ALLOCATE(MaxHeatLoadPrevDay(NumofZones))
MaxHeatLoadPrevDay = 0.0d0
ALLOCATE(MaxCoolLoadPrevDay(NumofZones))
MaxCoolLoadPrevDay = 0.0d0
ALLOCATE(MaxHeatLoadZone(NumofZones))
MaxHeatLoadZone = -9999.d0
ALLOCATE(MaxCoolLoadZone(NumofZones))
MaxCoolLoadZone = -9999.d0
ALLOCATE(MaxTempZone(NumofZones))
MaxTempZone = -9999.d0
ALLOCATE(MinTempZone(NumofZones))
MinTempZone = 1000.d0
ALLOCATE(TempZonePrevDay(NumofZones))
TempZonePrevDay = 0.0d0
ALLOCATE(LoadZonePrevDay(NumofZones))
LoadZonePrevDay = 0.0d0
ALLOCATE(TempZoneSecPrevDay(NumofZones))
TempZoneSecPrevDay = 0.0d0
ALLOCATE(LoadZoneSecPrevDay(NumofZones))
LoadZoneSecPrevDay = 0.0d0
ALLOCATE(WarmupTempDiff(NumofZones))
WarmupTempDiff = 0.0d0
ALLOCATE(WarmupLoadDiff(NumofZones))
WarmupLoadDiff = 0.0d0
ALLOCATE(TempZone(NumofZones))
TempZone = 0.0d0
ALLOCATE(LoadZone(NumofZones))
LoadZone = 0.0d0
ALLOCATE(TempZoneRpt(NumOfTimeStepInHour*24,NumofZones))
TempZoneRpt=0.0d0
ALLOCATE(LoadZoneRpt(NumOfTimeStepInHour*24,NumofZones))
LoadZoneRpt=0.0d0
ALLOCATE(MaxLoadZoneRpt(NumOfTimeStepInHour*24,NumofZones))
MaxLoadZoneRpt=0.0d0
ALLOCATE(WarmupConvergenceValues(NumOfZones))
ALLOCATE(TempZoneRptStdDev(NumOfTimeStepInHour*24))
ALLOCATE(LoadZoneRptStdDev(NumOfTimeStepInHour*24))
CountWarmupDayPoints=0
RETURN
END SUBROUTINE AllocateHeatBalArrays