EconomicTariff Module

module~~economictariff~~UsesGraph module~economictariff EconomicTariff module~inputprocessor InputProcessor module~inputprocessor->module~economictariff module~dataglobals DataGlobals module~dataglobals->module~economictariff module~dataglobals->module~inputprocessor module~schedulemanager ScheduleManager module~dataglobals->module~schedulemanager module~dataipshortcuts DataIPShortCuts module~dataglobals->module~dataipshortcuts module~datasizing DataSizing module~dataglobals->module~datasizing module~dataenvironment DataEnvironment module~dataglobals->module~dataenvironment module~schedulemanager->module~economictariff module~datainterfaces DataInterfaces module~datainterfaces->module~economictariff module~datainterfaces->module~inputprocessor module~datainterfaces->module~schedulemanager module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~economictariff module~dataprecisionglobals->module~inputprocessor module~dataprecisionglobals->module~dataglobals module~dataprecisionglobals->module~schedulemanager module~dataprecisionglobals->module~datainterfaces module~dataprecisionglobals->module~dataipshortcuts module~datasystemvariables DataSystemVariables module~dataprecisionglobals->module~datasystemvariables module~dataprecisionglobals->module~datasizing module~dataprecisionglobals->module~dataenvironment module~datastringglobals DataStringGlobals module~datastringglobals->module~inputprocessor module~datastringglobals->module~datasystemvariables module~dataipshortcuts->module~inputprocessor module~datasystemvariables->module~inputprocessor module~datasizing->module~inputprocessor module~dataenvironment->module~schedulemanager
Help

Used By

module~~economictariff~~UsedByGraph module~economictariff EconomicTariff proc~managesimulation ManageSimulation module~economictariff->proc~managesimulation proc~reportheatbalance ReportHeatBalance module~economictariff->proc~reportheatbalance proc~expressascashflows ExpressAsCashFlows module~economictariff->proc~expressascashflows
Help

kindUnknown kindTariff kindQualify kindChargeSimple kindChargeBlock kindRatchet kindVariable kindComputation kindCategory kindNative kindAssignCompute conversionUSERDEF conversionKWH conversionTHERM conversionMMBTU conversionMJ conversionKBTU conversionMCF conversionCCF convEneStrings convDemStrings demandWindowQuarter demandWindowHalf demandWindowHour demandWindowDay demandWindowWeek demWindowStrings buyFromUtility sellToUtility netMetering seasonWinter seasonSpring seasonSummer seasonFall seasonAnnual seasonMonthly varIsArgument varIsAssigned opSUM opMULTIPLY opSUBTRACT opDIVIDE opABSOLUTE opINTEGER opSIGN opROUND opMAXIMUM opMINIMUM opEXCEEDS opANNUALMINIMUM opANNUALMAXIMUM opANNUALSUM opANNUALAVERAGE opANNUALOR opANNUALAND opANNUALMAXIMUMZERO opANNUALMINIMUMZERO opIF opGREATERTHAN opGREATEREQUAL opLESSTHAN opLESSEQUAL opEQUAL opNOTEQUAL opAND opOR opNOT opADD opNOOP varUserDefined varNotYetDefined catEnergyCharges catDemandCharges catServiceCharges catBasis catAdjustment catSurcharge catSubtotal catTaxes catTotal catNotIncluded nativeTotalEnergy nativeTotalDemand nativePeakEnergy nativePeakDemand nativeShoulderEnergy nativeShoulderDemand nativeOffPeakEnergy nativeOffPeakDemand nativeMidPeakEnergy nativeMidPeakDemand nativePeakExceedsOffPeak nativeOffPeakExceedsPeak nativePeakExceedsMidPeak nativeMidPeakExceedsPeak nativePeakExceedsShoulder nativeShoulderExceedsPeak nativeIsWinter nativeIsNotWinter nativeIsSpring nativeIsNotSpring nativeIsSummer nativeIsNotSummer nativeIsAutumn nativeIsNotAutumn nativePeakAndShoulderEnergy nativePeakAndShoulderDemand nativePeakAndMidPeakEnergy nativePeakAndMidPeakDemand nativeShoulderAndOffPeakEnergy nativeShoulderAndOffPeakDemand nativePeakAndOffPeakEnergy nativePeakAndOffPeakDemand nativeRealTimePriceCosts nativeAboveCustomerBaseCosts nativeBelowCustomerBaseCosts nativeAboveCustomerBaseEnergy nativeBelowCustomerBaseEnergy countPeriod MaxNumMonths maxNumBlk periodPeak periodShoulder periodOffPeak periodMidPeak kindMeterNotElectric kindMeterElecSimple kindMeterElecProduced kindMeterElecPurchased kindMeterElecSurplusSold kindMeterElecNet varUnitTypeEnergy varUnitTypeDemand varUnitTypeDimensionless varUnitTypeCurrency econVar econVarCopy numEconVar sizeEconVar operand operandCopy numOperand sizeOperand tariff numTariff qualify numQualify chargeSimple numChargeSimple chargeBlock numChargeBlock ratchet numRatchet computation numComputation steps stepsCopy numSteps sizeSteps stack stackCopy topOfStack sizeStack

Variables

TypeVisibility AttributesNameInitial
integer, private, parameter:: kindUnknown =0
integer, private, parameter:: kindTariff =1
integer, private, parameter:: kindQualify =2
integer, private, parameter:: kindChargeSimple =3
integer, private, parameter:: kindChargeBlock =4
integer, private, parameter:: kindRatchet =5
integer, private, parameter:: kindVariable =6
integer, private, parameter:: kindComputation =7
integer, private, parameter:: kindCategory =8
integer, private, parameter:: kindNative =9
integer, private, parameter:: kindAssignCompute =10
integer, private, parameter:: conversionUSERDEF =0
integer, private, parameter:: conversionKWH =1
integer, private, parameter:: conversionTHERM =2
integer, private, parameter:: conversionMMBTU =3
integer, private, parameter:: conversionMJ =4
integer, private, parameter:: conversionKBTU =5
integer, private, parameter:: conversionMCF =6
integer, private, parameter:: conversionCCF =7
character(len=*), private, parameter, DIMENSION(0:7):: convEneStrings =(/'     ', 'kWh  ', 'Therm', 'MMBtu', 'MJ   ', 'kBtu ', 'MCF  ', 'CCF  '/)
character(len=*), private, parameter, DIMENSION(0:7):: convDemStrings =(/'     ', 'kW   ', 'Therm', 'MMBtu', 'MJ   ', 'kBtu ', 'MCF  ', 'CCF  '/)
integer, private, parameter:: demandWindowQuarter =1
integer, private, parameter:: demandWindowHalf =2
integer, private, parameter:: demandWindowHour =3
integer, private, parameter:: demandWindowDay =4
integer, private, parameter:: demandWindowWeek =5
character(len=*), private, parameter, DIMENSION(0:5):: demWindowStrings =(/'    ', '/Hr ', '/Hr ', '/Hr ', '/Day', '/Wk '/)
integer, private, parameter:: buyFromUtility =1
integer, private, parameter:: sellToUtility =2
integer, private, parameter:: netMetering =3
integer, private, parameter:: seasonWinter =1
integer, private, parameter:: seasonSpring =2
integer, private, parameter:: seasonSummer =3
integer, private, parameter:: seasonFall =4
integer, private, parameter:: seasonAnnual =5
integer, private, parameter:: seasonMonthly =6
integer, private, parameter:: varIsArgument =1
integer, private, parameter:: varIsAssigned =2
integer, private, parameter:: opSUM =-1
integer, private, parameter:: opMULTIPLY =-2
integer, private, parameter:: opSUBTRACT =-3
integer, private, parameter:: opDIVIDE =-4
integer, private, parameter:: opABSOLUTE =-5
integer, private, parameter:: opINTEGER =-6
integer, private, parameter:: opSIGN =-7
integer, private, parameter:: opROUND =-8
integer, private, parameter:: opMAXIMUM =-9
integer, private, parameter:: opMINIMUM =-10
integer, private, parameter:: opEXCEEDS =-11
integer, private, parameter:: opANNUALMINIMUM =-12
integer, private, parameter:: opANNUALMAXIMUM =-13
integer, private, parameter:: opANNUALSUM =-14
integer, private, parameter:: opANNUALAVERAGE =-15
integer, private, parameter:: opANNUALOR =-16
integer, private, parameter:: opANNUALAND =-17
integer, private, parameter:: opANNUALMAXIMUMZERO =-18
integer, private, parameter:: opANNUALMINIMUMZERO =-19
integer, private, parameter:: opIF =-20
integer, private, parameter:: opGREATERTHAN =-21
integer, private, parameter:: opGREATEREQUAL =-22
integer, private, parameter:: opLESSTHAN =-23
integer, private, parameter:: opLESSEQUAL =-24
integer, private, parameter:: opEQUAL =-25
integer, private, parameter:: opNOTEQUAL =-26
integer, private, parameter:: opAND =-27
integer, private, parameter:: opOR =-28
integer, private, parameter:: opNOT =-29
integer, private, parameter:: opADD =-30
integer, private, parameter:: opNOOP =-31
integer, private, parameter:: varUserDefined =1
integer, private, parameter:: varNotYetDefined =2
integer, private, parameter:: catEnergyCharges =11
integer, private, parameter:: catDemandCharges =12
integer, private, parameter:: catServiceCharges =13
integer, private, parameter:: catBasis =14
integer, private, parameter:: catAdjustment =15
integer, private, parameter:: catSurcharge =16
integer, private, parameter:: catSubtotal =17
integer, private, parameter:: catTaxes =18
integer, private, parameter:: catTotal =19
integer, private, parameter:: catNotIncluded =20
integer, private, parameter:: nativeTotalEnergy =101
integer, private, parameter:: nativeTotalDemand =102
integer, private, parameter:: nativePeakEnergy =103
integer, private, parameter:: nativePeakDemand =104
integer, private, parameter:: nativeShoulderEnergy =105
integer, private, parameter:: nativeShoulderDemand =106
integer, private, parameter:: nativeOffPeakEnergy =107
integer, private, parameter:: nativeOffPeakDemand =108
integer, private, parameter:: nativeMidPeakEnergy =109
integer, private, parameter:: nativeMidPeakDemand =110
integer, private, parameter:: nativePeakExceedsOffPeak =111
integer, private, parameter:: nativeOffPeakExceedsPeak =112
integer, private, parameter:: nativePeakExceedsMidPeak =113
integer, private, parameter:: nativeMidPeakExceedsPeak =114
integer, private, parameter:: nativePeakExceedsShoulder =115
integer, private, parameter:: nativeShoulderExceedsPeak =116
integer, private, parameter:: nativeIsWinter =117
integer, private, parameter:: nativeIsNotWinter =118
integer, private, parameter:: nativeIsSpring =119
integer, private, parameter:: nativeIsNotSpring =120
integer, private, parameter:: nativeIsSummer =121
integer, private, parameter:: nativeIsNotSummer =122
integer, private, parameter:: nativeIsAutumn =123
integer, private, parameter:: nativeIsNotAutumn =124
integer, private, parameter:: nativePeakAndShoulderEnergy =125
integer, private, parameter:: nativePeakAndShoulderDemand =126
integer, private, parameter:: nativePeakAndMidPeakEnergy =127
integer, private, parameter:: nativePeakAndMidPeakDemand =128
integer, private, parameter:: nativeShoulderAndOffPeakEnergy =129
integer, private, parameter:: nativeShoulderAndOffPeakDemand =130
integer, private, parameter:: nativePeakAndOffPeakEnergy =131
integer, private, parameter:: nativePeakAndOffPeakDemand =132
integer, private, parameter:: nativeRealTimePriceCosts =133
integer, private, parameter:: nativeAboveCustomerBaseCosts =134
integer, private, parameter:: nativeBelowCustomerBaseCosts =135
integer, private, parameter:: nativeAboveCustomerBaseEnergy =136
integer, private, parameter:: nativeBelowCustomerBaseEnergy =137
integer, private, parameter:: countPeriod =4
integer, private, parameter:: MaxNumMonths =12
integer, private, parameter:: maxNumBlk =15
integer, private, parameter:: periodPeak =1
integer, private, parameter:: periodShoulder =2
integer, private, parameter:: periodOffPeak =3
integer, private, parameter:: periodMidPeak =4
integer, private, parameter:: kindMeterNotElectric =0
integer, private, parameter:: kindMeterElecSimple =1
integer, private, parameter:: kindMeterElecProduced =2
integer, private, parameter:: kindMeterElecPurchased =3
integer, private, parameter:: kindMeterElecSurplusSold =4
integer, private, parameter:: kindMeterElecNet =5
integer, private, parameter:: varUnitTypeEnergy =1
integer, private, parameter:: varUnitTypeDemand =2
integer, private, parameter:: varUnitTypeDimensionless =3
integer, private, parameter:: varUnitTypeCurrency =4
type(EconVarType), private, ALLOCATABLE, DIMENSION(:):: econVar
type(EconVarType), private, ALLOCATABLE, DIMENSION(:):: econVarCopy
integer, private :: numEconVar =0
integer, private :: sizeEconVar =0
integer, private, ALLOCATABLE, DIMENSION(:):: operand
integer, private, ALLOCATABLE, DIMENSION(:):: operandCopy
integer, private :: numOperand =0
integer, private :: sizeOperand =0
type(TariffType), private, ALLOCATABLE, DIMENSION(:):: tariff
integer, private :: numTariff =0
type(QualifyType), private, ALLOCATABLE, DIMENSION(:):: qualify
integer, private :: numQualify =0
type(ChargeSimpleType), private, ALLOCATABLE, DIMENSION(:):: chargeSimple
integer, private :: numChargeSimple =0
type(ChargeBlockType), private, ALLOCATABLE, DIMENSION(:):: chargeBlock
integer, private :: numChargeBlock =0
type(RatchetType), private, ALLOCATABLE, DIMENSION(:):: ratchet
integer, private :: numRatchet =0
type(ComputationType), private, ALLOCATABLE, DIMENSION(:):: computation
integer, private :: numComputation =0
integer, private, ALLOCATABLE, DIMENSION(:):: steps
integer, private, ALLOCATABLE, DIMENSION(:):: stepsCopy
integer, private :: numSteps =0
integer, private :: sizeSteps =0
type(StackType), private, ALLOCATABLE, DIMENSION(:):: stack
type(StackType), private, ALLOCATABLE, DIMENSION(:):: stackCopy
integer, private :: topOfStack =0
integer, private :: sizeStack =0

Derived Types

type, private :: EconVarType

Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: name =''
integer, public :: tariffIndx =0
integer, public :: kindOfObj =0
integer, public :: index =0
real(kind=r64), public, DIMENSION(MaxNumMonths):: values =0.0d0
logical, public :: isArgument =.FALSE.
logical, public :: isAssigned =.FALSE.
integer, public :: specific =0
integer, public :: cntMeDependOn =0
integer, public :: operator =0
integer, public :: firstOperand =0
integer, public :: lastOperand =0
logical, public :: activeNow =.FALSE.
logical, public :: isEvaluated =.FALSE.
logical, public :: isReported =.FALSE.
integer, public :: varUnitType =0

type, private :: TariffType

Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: tariffName =''
character(len=MaxNameLength), public :: reportMeter =''
integer, public :: reportMeterIndx =0
integer, public :: kindElectricMtr =0
integer, public :: resourceNum =0
integer, public :: convChoice =0
real(kind=r64), public :: energyConv =0.0d0
real(kind=r64), public :: demandConv =0.0d0
character(len=MaxNameLength), public :: periodSchedule =''
integer, public :: periodSchIndex =0
character(len=MaxNameLength), public :: seasonSchedule =''
integer, public :: seasonSchIndex =0
character(len=MaxNameLength), public :: monthSchedule =''
integer, public :: monthSchIndex =0
integer, public :: demandWindow =0
real(kind=r64), public :: demWinTime =0.0d0
real(kind=r64), public :: monthChgVal =0.0d0
integer, public :: monthChgPt =0
real(kind=r64), public :: minMonthChgVal =0.0d0
integer, public :: minMonthChgPt =0
character(len=MaxNameLength), public :: chargeSchedule =''
integer, public :: chargeSchIndex =0
character(len=MaxNameLength), public :: baseUseSchedule =''
integer, public :: baseUseSchIndex =0
character(len=MaxNameLength), public :: groupName =''
character(len=MaxNameLength), public :: monetaryUnit =''
integer, public :: buyOrSell =0
integer, public :: firstCategory =0
integer, public :: lastCategory =0
integer, public :: ptEnergyCharges =0
integer, public :: ptDemandCharges =0
integer, public :: ptServiceCharges =0
integer, public :: ptBasis =0
integer, public :: ptAdjustment =0
integer, public :: ptSurcharge =0
integer, public :: ptSubtotal =0
integer, public :: ptTaxes =0
integer, public :: ptTotal =0
integer, public :: ptNotIncluded =0
integer, public :: firstNative =0
integer, public :: lastNative =0
integer, public :: nativeTotalEnergy =0
integer, public :: nativeTotalDemand =0
integer, public :: nativePeakEnergy =0
integer, public :: nativePeakDemand =0
integer, public :: nativeShoulderEnergy =0
integer, public :: nativeShoulderDemand =0
integer, public :: nativeOffPeakEnergy =0
integer, public :: nativeOffPeakDemand =0
integer, public :: nativeMidPeakEnergy =0
integer, public :: nativeMidPeakDemand =0
integer, public :: nativePeakExceedsOffPeak =0
integer, public :: nativeOffPeakExceedsPeak =0
integer, public :: nativePeakExceedsMidPeak =0
integer, public :: nativeMidPeakExceedsPeak =0
integer, public :: nativePeakExceedsShoulder =0
integer, public :: nativeShoulderExceedsPeak =0
integer, public :: nativeIsWinter =0
integer, public :: nativeIsNotWinter =0
integer, public :: nativeIsSpring =0
integer, public :: nativeIsNotSpring =0
integer, public :: nativeIsSummer =0
integer, public :: nativeIsNotSummer =0
integer, public :: nativeIsAutumn =0
integer, public :: nativeIsNotAutumn =0
integer, public :: nativePeakAndShoulderEnergy =0
integer, public :: nativePeakAndShoulderDemand =0
integer, public :: nativePeakAndMidPeakEnergy =0
integer, public :: nativePeakAndMidPeakDemand =0
integer, public :: nativeShoulderAndOffPeakEnergy =0
integer, public :: nativeShoulderAndOffPeakDemand =0
integer, public :: nativePeakAndOffPeakEnergy =0
integer, public :: nativePeakAndOffPeakDemand =0
integer, public :: nativeRealTimePriceCosts =0
integer, public :: nativeAboveCustomerBaseCosts =0
integer, public :: nativeBelowCustomerBaseCosts =0
integer, public :: nativeAboveCustomerBaseEnergy =0
integer, public :: nativeBelowCustomerBaseEnergy =0
real(kind=r64), public, DIMENSION(countPeriod,MaxNumMonths):: gatherEnergy =0.0d0
real(kind=r64), public, DIMENSION(countPeriod,MaxNumMonths):: gatherDemand =0.0d0
real(kind=r64), public :: collectTime =0.0d0
real(kind=r64), public :: collectEnergy =0.0d0
real(kind=r64), public, DIMENSION(MaxNumMonths):: RTPcost =0.0d0
real(kind=r64), public, DIMENSION(MaxNumMonths):: RTPaboveBaseCost =0.0d0
real(kind=r64), public, DIMENSION(MaxNumMonths):: RTPbelowBaseCost =0.0d0
real(kind=r64), public, DIMENSION(MaxNumMonths):: RTPaboveBaseEnergy =0.0d0
real(kind=r64), public, DIMENSION(MaxNumMonths):: RTPbelowBaseEnergy =0.0d0
integer, public, DIMENSION(MaxNumMonths):: seasonForMonth =0
logical, public :: isQualified =.FALSE.
integer, public :: ptDisqualifier =0
logical, public :: isSelected =.FALSE.
real(kind=r64), public :: totalAnnualCost =0.0d0
real(kind=r64), public :: totalAnnualEnergy =0.0d0

type, private :: QualifyType

Components

TypeVisibility AttributesNameInitial
integer, public :: namePt =0
integer, public :: tariffIndx =0
integer, public :: sourcePt =0
logical, public :: isMaximum =.FALSE.
real(kind=r64), public :: thresholdVal =0.0d0
integer, public :: thresholdPt =0
integer, public :: season =0
logical, public :: isConsecutive =.FALSE.
integer, public :: numberOfMonths =0

type, private :: ChargeSimpleType

Components

TypeVisibility AttributesNameInitial
integer, public :: namePt =0
integer, public :: tariffIndx =0
integer, public :: sourcePt =0
integer, public :: season =0
integer, public :: categoryPt =0
real(kind=r64), public :: costPerVal =0.0d0
integer, public :: costPerPt =0

type, private :: ChargeBlockType

Components

TypeVisibility AttributesNameInitial
integer, public :: namePt =0
integer, public :: tariffIndx =0
integer, public :: sourcePt =0
integer, public :: season =0
integer, public :: categoryPt =0
integer, public :: remainingPt =0
real(kind=r64), public :: blkSzMultVal =0.0d0
integer, public :: blkSzMultPt =0
integer, public :: numBlk =0
real(kind=r64), public, DIMENSION(maxNumBlk):: blkSzVal =0.0d0
integer, public, DIMENSION(maxNumBlk):: blkSzPt =0
real(kind=r64), public, DIMENSION(maxNumBlk):: blkCostVal =0.0d0
integer, public, DIMENSION(maxNumBlk):: blkCostPt =0

type, private :: RatchetType

Components

TypeVisibility AttributesNameInitial
integer, public :: namePt =0
integer, public :: tariffIndx =0
integer, public :: baselinePt =0
integer, public :: adjustmentPt =0
integer, public :: seasonFrom =0
integer, public :: seasonTo =0
real(kind=r64), public :: multiplierVal =0.0d0
integer, public :: multiplierPt =0
real(kind=r64), public :: offsetVal =0.0d0
integer, public :: offsetPt =0

type, private :: ComputationType

Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: computeName =''
integer, public :: firstStep =0
integer, public :: lastStep =0
logical, public :: isUserDef =.FALSE.

type, private :: StackType

Components

TypeVisibility AttributesNameInitial
integer, public :: varPt =0
real(kind=r64), public, DIMENSION(MaxNumMonths):: values =0.0d0

Functions

private function LookUpSeason(nameOfSeason, nameOfReferingObj)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: nameOfSeason
character(len=*), intent(in) :: nameOfReferingObj

Return Value integer

private function FindTariffIndex(nameOfTariff, nameOfReferingObj, ErrorsFound, nameOfCurObj)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: nameOfTariff
character(len=*), intent(in) :: nameOfReferingObj
logical, intent(inout) :: ErrorsFound
character(len=*), intent(in) :: nameOfCurObj

Return Value integer

private function AssignVariablePt(stringIn, flagIfNotNumeric, useOfVar, varSpecific, econObjKind, objIndex, tariffPt)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: stringIn
logical, intent(in) :: flagIfNotNumeric
integer, intent(in) :: useOfVar
integer, intent(in) :: varSpecific
integer, intent(in) :: econObjKind
integer, intent(in) :: objIndex
integer, intent(in) :: tariffPt

Return Value integer

private function RemoveSpaces(StringIn) result(StringOut)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: StringIn

Return Value character(len=200)

private function lookupOperator(opString)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: opString

Return Value integer

private function isWithinRange(testVal, minThreshold, maxThreshold)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: testVal
integer, intent(in) :: minThreshold
integer, intent(in) :: maxThreshold

Return Value logical


Subroutines

public subroutine UpdateUtilityBills()

Arguments

None

private subroutine GetInputEconomicsTariff(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsQualify(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsChargeSimple(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsChargeBlock(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsRatchet(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsVariable(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsComputation(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetInputEconomicsCurrencyType(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine parseComputeLine(lineOfCompute, fromTariff)

Arguments

Type IntentOptional AttributesName
character(len=MaxNameLength), intent(in) :: lineOfCompute
integer, intent(in) :: fromTariff

private subroutine GetLastWord(lineOfText, endOfScan, aWord)

Arguments

Type IntentOptional AttributesName
character(len=MaxNameLength), intent(in) :: lineOfText
integer, intent(inout) :: endOfScan
character(len=MaxNameLength), intent(out) :: aWord

private subroutine initializeMonetaryUnit()

Arguments

None

private subroutine warnIfNativeVarname(objName, curTariffIndex, ErrorsFound, curobjName)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: objName
integer, intent(in) :: curTariffIndex
logical, intent(inout) :: ErrorsFound
character(len=*), intent(in) :: curobjName

private subroutine incrementEconVar()

Arguments

None

private subroutine incrementSteps()

Arguments

None

private subroutine CreateCategoryNativeVariables()

Arguments

None

private subroutine CreateDefaultComputation()

Arguments

None

private subroutine addOperand(varMe, varOperand)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: varMe
integer, intent(in) :: varOperand

private subroutine addChargesToOperand(curTariff, curPointer)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: curTariff
integer, intent(in) :: curPointer

private subroutine GatherForEconomics()

Arguments

None

public subroutine ComputeTariff()

Arguments

None

private subroutine pushStack(monthlyArray, variablePointer)

Arguments

Type IntentOptional AttributesName
real(kind=r64), intent(in), DIMENSION(MaxNumMonths):: monthlyArray
integer, intent(in) :: variablePointer

private subroutine popStack(monthlyArray, variablePointer)

Arguments

Type IntentOptional AttributesName
real(kind=r64), intent(out), DIMENSION(MaxNumMonths):: monthlyArray
integer, intent(inout) :: variablePointer

private subroutine evaluateChargeSimple(usingVariable)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: usingVariable

private subroutine evaluateChargeBlock(usingVariable)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: usingVariable

private subroutine evaluateRatchet(usingVariable)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: usingVariable

private subroutine evaluateQualify(usingVariable)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: usingVariable

private subroutine addMonthlyCharge(usingVariable)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: usingVariable

private subroutine checkMinimumMonthlyCharge(curTariff)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: curTariff

private subroutine setNativeVariables()

Arguments

None

private subroutine LEEDtariffReporting()

Arguments

None

public subroutine WriteTabularTariffReports()

Arguments

None

private subroutine showWarningsBasedOnTotal()

Arguments

None

private subroutine getMaxAndSum(varPointer, sumResult, maxResult)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: varPointer
real(kind=r64), intent(out) :: sumResult
real(kind=r64), intent(out) :: maxResult

private subroutine ReportEconomicVariable(titleString, includeCategory, showCurrencySymbol, forString)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: titleString
logical, intent(in) :: includeCategory
logical, intent(in) :: showCurrencySymbol
character(len=*), intent(in) :: forString

private subroutine selectTariff()

Arguments

None

public subroutine GetMonthlyCostForResource(inResourceNumber, outMonthlyCosts)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: inResourceNumber
real(kind=r64), intent(out), DIMENSION(12):: outMonthlyCosts


AirflowNetworkBalanceManager AirflowNetworkSolver BaseboardElectric BaseboardRadiator Boilers BoilerSteam BranchInputManager BranchNodeConnections ChillerAbsorption ChillerElectricEIR ChillerExhaustAbsorption ChillerGasAbsorption ChillerIndirectAbsorption ChillerReformulatedEIR CondenserLoopTowers ConductionTransferFunctionCalc ConvectionCoefficients CoolTower CostEstimateManager CrossVentMgr CTElectricGenerator CurveManager DataAirflowNetwork DataAirLoop DataAirSystems DataBranchAirLoopPlant DataBranchNodeConnections DataBSDFWindow DataComplexFenestration DataContaminantBalance DataConvergParams DataConversions DataCostEstimate DataDaylighting DataDaylightingDevices DataDefineEquip DataDElight DataEnvironment DataErrorTracking DataGenerators DataGlobalConstants DataGlobals DataHeatBalance DataHeatBalFanSys DataHeatBalSurface DataHVACControllers DataHVACGlobals DataInterfaces DataIPShortCuts DataLoopNode DataMoistureBalance DataMoistureBalanceEMPD DataOutputs DataPhotovoltaics DataPlant DataPlantPipingSystems DataPrecisionGlobals DataReportingFlags DataRoomAirModel DataRootFinder DataRuntimeLanguage DataShadowingCombinations DataSizing DataStringGlobals DataSurfaceColors DataSurfaceLists DataSurfaces DataSystemVariables DataTimings DataUCSDSharedData DataVectorTypes DataViewFactorInformation DataWater DataWindowEquivalentLayer DataZoneControls DataZoneEnergyDemands DataZoneEquipment DaylightingDevices DaylightingManager DELIGHTMANAGERF DELIGHTMANAGERF DemandManager DesiccantDehumidifiers DirectAirManager DisplacementVentMgr DualDuct DXCoils DXFEarClipping EarthTube EconomicLifeCycleCost EconomicTariff EcoRoofManager ElectricBaseboardRadiator EMSManager EvaporativeCoolers EvaporativeFluidCoolers ExteriorEnergyUse ExternalInterface FanCoilUnits Fans FaultsManager FluidCoolers FluidProperties FuelCellElectricGenerator Furnaces General GeneratorDynamicsManager GeneratorFuelSupply GlobalNames GroundHeatExchangers HeatBalanceAirManager HeatBalanceHAMTManager HeatBalanceIntRadExchange HeatBalanceManager HeatBalanceMovableInsulation HeatBalanceSurfaceManager HeatBalFiniteDiffManager HeatingCoils HeatPumpWaterToWaterCOOLING HeatPumpWaterToWaterHEATING HeatPumpWaterToWaterSimple HeatRecovery HighTempRadiantSystem Humidifiers HVACControllers HVACCooledBeam HVACDuct HVACDXHeatPumpSystem HVACDXSystem HVACHXAssistedCoolingCoil HVACInterfaceManager HVACManager HVACMultiSpeedHeatPump HVACSingleDuctInduc HVACStandAloneERV HVACUnitaryBypassVAV HVACUnitarySystem HVACVariableRefrigerantFlow HWBaseboardRadiator ICEngineElectricGenerator IceThermalStorage InputProcessor InternalHeatGains ISO_C_FUNCTION_BINDING ISO_C_FUNCTION_BINDING LowTempRadiantSystem ManageElectricPower MatrixDataManager MicroCHPElectricGenerator MicroturbineElectricGenerator MixedAir MixerComponent MoistureBalanceEMPDManager MundtSimMgr NodeInputManager NonZoneEquipmentManager OutAirNodeManager OutdoorAirUnit OutputProcessor OutputReportPredefined OutputReportTabular OutsideEnergySources PackagedTerminalHeatPump PackagedThermalStorageCoil Photovoltaics PhotovoltaicThermalCollectors PipeHeatTransfer Pipes PlantCentralGSHP PlantChillers PlantComponentTemperatureSources PlantCondLoopOperation PlantHeatExchangerFluidToFluid PlantLoadProfile PlantLoopEquip PlantLoopSolver PlantManager PlantPipingSystemsManager PlantPressureSystem PlantUtilities PlantValves PollutionModule PondGroundHeatExchanger PoweredInductionUnits Psychrometrics Pumps PurchasedAirManager RefrigeratedCase ReportSizingManager ReturnAirPathManager RoomAirModelManager RoomAirModelUserTempPattern RootFinder RuntimeLanguageProcessor ScheduleManager SetPointManager SimAirServingZones SimulationManager SingleDuct SizingManager SolarCollectors SolarReflectionManager SolarShading SortAndStringUtilities SplitterComponent SQLiteProcedures SQLiteProcedures StandardRatings SteamBaseboardRadiator SteamCoils SurfaceGeometry SurfaceGroundHeatExchanger SystemAvailabilityManager SystemReports TARCOGArgs TARCOGCommon TARCOGDeflection TARCOGGasses90 TARCOGGassesParams TARCOGMain TARCOGOutput TARCOGParams TarcogShading ThermalChimney ThermalComfort ThermalEN673Calc ThermalISO15099Calc TranspiredCollector UFADManager UnitHeater UnitVentilator UserDefinedComponents VariableSpeedCoils vectors VentilatedSlab WaterCoils WaterManager WaterThermalTanks WatertoAirHeatPump WatertoAirHeatPumpSimple WaterUse WeatherManager WindowAC WindowComplexManager WindowEquivalentLayer WindowManager WindTurbine ZoneAirLoopEquipmentManager ZoneContaminantPredictorCorrector ZoneDehumidifier ZoneEquipmentManager ZonePlenum ZoneTempPredictorCorrector