Nodes of different colours represent the following:
Solid arrows point from a parent (sub)module to the submodule which is descended from it. Dashed arrows point from a module being used to the module or program unit using it. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
!! Basic ResourceType for Meters
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(out) | :: | OutResourceType | |||
character(len=*), | intent(in) | :: | UserInputResourceType | |||
logical, | intent(out) | :: | ErrorsFound |
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 GetStandardMeterResourceType(OutResourceType,UserInputResourceType,ErrorsFound)
! SUBROUTINE INFORMATION:
! AUTHOR Linda Lawrie
! DATE WRITTEN April 2006
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This routine compares the user input resource type with valid ones and returns
! the standard resource type.
! METHODOLOGY EMPLOYED:
! na
! REFERENCES:
! na
! USE STATEMENTS:
USE InputProcessor, ONLY: MakeUPPERCase
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
CHARACTER(len=*), INTENT(OUT) :: OutResourceType
CHARACTER(len=*), INTENT(IN) :: UserInputResourceType
LOGICAL, INTENT(OUT) :: ErrorsFound
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
! na
ErrorsFound=.false.
!!!! Basic ResourceType for Meters
SELECT CASE (MakeUPPERCase(UserInputResourceType))
CASE ('ELECTRICITY','ELECTRIC','ELEC')
OutResourceType='Electricity'
CASE ('GAS','NATURALGAS','NATURAL GAS')
OutResourceType='Gas'
CASE ('GASOLINE')
OutResourceType='Gasoline'
CASE ('DIESEL')
OutResourceType='Diesel'
CASE ('COAL')
OutResourceType='Coal'
CASE ('FUEL OIL #1','FUELOIL#1','FUEL OIL','DISTILLATE OIL')
OutResourceType='FuelOil#1'
CASE ('FUEL OIL #2','FUELOIL#2','RESIDUAL OIL')
OutResourceType='FuelOil#2'
CASE ('PROPANE','LPG','PROPANEGAS','PROPANE GAS')
OutResourceType='Propane'
CASE ('WATER','H2O')
OutResourceType='Water' ! this is water "use"
CASE ('ONSITEWATER', 'WATERPRODUCED', 'ONSITE WATER')
OutResourceType='OnSiteWater' ! these are for supply record keeping
CASE ('MAINSWATER', 'WATERSUPPLY')
OutResourceType='MainsWater' ! record keeping
CASE ('RAINWATER', 'PRECIPITATION')
OutResourceType='RainWater' ! record keeping
CASE ('WELLWATER', 'GROUNDWATER')
OutResourceType='WellWater' ! record keeping
CASE ('CONDENSATE')
OutResourceType='Condensate' ! record keeping
CASE ('ENERGYTRANSFER','ENERGYXFER','XFER')
OutResourceType='EnergyTransfer'
CASE ('STEAM')
OutResourceType='Steam'
CASE ('DISTRICTCOOLING')
OutResourceType='DistrictCooling'
CASE ('DISTRICTHEATING')
OutResourceType='DistrictHeating'
CASE ('ELECTRICITYPRODUCED')
OutResourceType='ElectricityProduced'
CASE ('ELECTRICITYPURCHASED')
OutResourceType='ElectricityPurchased'
CASE ('ELECTRICITYSURPLUSSOLD')
OutResourceType='ElectricitySurplusSold'
CASE ('ELECTRICITYNET')
OutResourceType='ElectricityNet'
CASE ('SOLARWATER')
OutResourceType='SolarWater'
CASE ('SOLARAIR')
OutResourceType='SolarAir'
CASE ('SO2')
OutResourceType='SO2'
CASE ('NOX')
OutResourceType='NOx'
CASE ('N2O')
OutResourceType='N2O'
CASE ('PM')
OutResourceType='PM'
CASE ('PM2.5')
OutResourceType='PM2.5'
CASE ('PM10')
OutResourceType='PM10'
CASE ('CO')
OutResourceType='CO'
CASE ('CO2')
OutResourceType='CO2'
CASE ('CH4')
OutResourceType='CH4'
CASE ('NH3')
OutResourceType='NH3'
CASE ('NMVOC')
OutResourceType='NMVOC'
CASE ('HG')
OutResourceType='Hg'
CASE ('PB')
OutResourceType='Pb'
CASE ('NUCLEAR HIGH')
OutResourceType='Nuclear High'
CASE ('NUCLEAR LOW')
OutResourceType='Nuclear Low'
CASE ('WATERENVIRONMENTALFACTORS')
OutResourceType='WaterEnvironmentalFactors'
CASE ('CARBON EQUIVALENT')
OutResourceType='Carbon Equivalent'
CASE ('SOURCE')
OutResourceType='Source'
CASE ('PLANTLOOPHEATINGDEMAND')
OutResourceType='PlantLoopHeatingDemand'
CASE ('PLANTLOOPCOOLINGDEMAND')
OutResourceType='PlantLoopCoolingDemand'
CASE ('GENERIC') ! only used by custom meters
OutResourceType='Generic'
CASE ('OTHERFUEL1') ! other fuel type (defined by user)
OutResourceType='OtherFuel1'
CASE ('OTHERFUEL2') ! other fuel type (defined by user)
OutResourceType='OtherFuel2'
CASE DEFAULT
CALL ShowSevereError('GetStandardMeterResourceType: Illegal OutResourceType (for Meters) Entered='// &
TRIM(UserInputResourceType))
ErrorsFound=.true.
END SELECT
RETURN
END SUBROUTINE GetStandardMeterResourceType