Urban-Meteorology-Reading / WRF-SUEWS

WRF-SUEWS coupling project
https://wrf-suews.readthedocs.org
MIT License
5 stars 2 forks source link

List of Methods that are/aren't used in WRF-SUEWS #38

Closed hamidrezaomidvar closed 5 years ago

hamidrezaomidvar commented 5 years ago

I will list the methods that are available in WRF-SUEWS here. Later on we can transfer it to the Wiki page for later purposes.

hamidrezaomidvar commented 5 years ago

Here is the list of Methods I gathered from the code, namelist.suews. I also listed some of fixed internal parameters inside the code.

WRF-SUEWS coupling system

WRF-SUEWS available methods

Method Option values Current value is used? Explanation
SnowUse (0,1) 0 Y Used but not active
RoughLenHeatMethod (1,2,3,4) 2 Y Kawai et al. (2009)
RoughLenMomMethod (1,2,3) 2 Y (Grimmond and Oke 1999
EmissionMethod (0,1,2,3) 2 Y Järvi et al. (2011)
NetRadiationMethod (0,1,2,3,100,200,300) 1 Y Q* modelled with L↓ observations supplied
StorageHeatMethod (1,2,3,4) 1 Y Objective Hysteresis Model (OHM)
AerodynamicResistanceMethod (1,2,3) 2 Y Non-neutral stability (Documentation is missing in SUEWS site)
LaiType - (0,0,0) Y LAI calculation choice
veg_type - 1 Y Internal fix parameter
gsModel (1,2) 2 Y Formulation choice for conductance calculation-Internal fixed
StabilityMethod (0,1,2,3,4) 3 Y Defines which atmospheric stability functions are used-Internal fixed
SMDMethod (0,1,2) 0 Y Determines method for calculating soil moisture deficit (SMD)
EvapMethod - 2 Y Internal fix parameter
LAICalcYes - 1 Y Internal fix parameter
WaterUseMethod (0,1) 0 Y Defines how external water use is calculated

Fixed parameters related to irrigation (Internal Fixed)

Method Option values Current value is used? Explanation
wu_m3 - 0 Y External water use
Faut - 0 Y Fraction of irrigated area using automatic irrigation
InternalWaterUse_h 0 Y Internal water use [mm h-1]
IrrFracConif - 0 Y Fraction of evergreen trees which are irrigated
IrrFracDecid - 0 Y Fraction of deciduous trees which are irrigated
IrrFracGrass - 0 Y Fraction of grass which is irrigated
DayWat - 0 Y Days of watering allowed
DayWatPer - 0 Y % of houses following daily water

Fixed parameters related to snow (Internal Fixed)

Method Option values Current value is used? Explanation
CRWmax - 0.2 Y Free water holding capacity of shallow SnowPack
CRWmin - 0.05 Y Free water holding capacity of deep SnowPack
PrecipLimit - 2.2 Y Temperature limit when precipitation occurs as snow
PrecipLimitAlb - 2 Y Precipitation limit for albedo change (in mm)
RadMeltFact - 0.001 Y Radiation melt factor
SnowAlbMax - 0.8 Y Mximum snow albedo
SnowAlbMin - 0.18 Y Minimum snow albedo
SnowDensMax - 450 Y Minimum density of snow
SnowDensMin - 100 Y Maximum density of snow
SnowLimBldg - 100 Y Snow removal limits for roofs in mm)
SnowLimPaved - 100 Y Snow removal limits for paved surfaces in mm)
tau_a - 0.01 Y Time constans related to albedo change
tau_f - 0.1 Y Time constans related to albedo change
tau_r - 0.02 Y Time constans related to albedo change
TempMeltFact - 0.12 Y Temperature melt factor
SnowPackLimit - 0 Y -
snowProf_24hr - 0 Y Timing of snow removal (0 or 1) Hourly, WD/WE
sunt05 commented 5 years ago

Good job! I'll comment on each parameter below:

(as the OP is too long, I split them into separate posts.)

WRF-SUEWS available methods

Method Option values Current value is used? Explanation

SnowUse (0,1) 0 Y Used but not active

OK.

RoughLenHeatMethod (1,2,3,4) 2 Y Kawai et al. (2009)

OK

RoughLenMomMethod (1,2,3) 2 Y (Grimmond and Oke 1999

OK

EmissionMethod (0,1,2,3) 2 Y Järvi et al. (2011)

0 should be disabled as no input QF could be provided via forcing data.

NetRadiationMethod (0,1,2,3,100,200,300) 1 Y Q* modelled with L↓ observations supplied

StorageHeatMethod (1,2,3,4) 1 Y Objective Hysteresis Model (OHM)

only allow 1, i.e., OHM, to be used in this coupled version; others should be disabled due to incompatibility in inputs.

AerodynamicResistanceMethod (1,2,3) 2 Y Non-neutral stability (Documentation is missing in SUEWS site)

this option is not exposed to users and fixed as 2 in offline SUEWS so the documentation is missing from user's perspective; but it is documented in the SUEWS code. so we may consider using it as an internal option in the coupled version as well to be consistent with the offline version.

LaiType - (0,0,0) Y LAI calculation choice

OK

veg_type - 1 Y Internal fix parameter

OK: fixed to be consistent with the offline version.

gsModel (1,2) 2 Y Formulation choice for conductance calculation-Internal fixed

OK: this option demands more parameters than normal users may understand and have; also the recent runs using the offline version all follow gsModel=2 as in Ward et al. (2016). so we can keep this internally fixed.

StabilityMethod (0,1,2,3,4) 3 Y Defines which atmospheric stability functions are used-Internal fixed

OK. we keep this fixed as other options have some known issues (documented in the SUEWS code).

SMDMethod (0,1,2) 0 Y Determines method for calculating soil moisture deficit (SMD) we can fix this as nowhere else can provide this info: it can only be modelled by SUEWS.

EvapMethod - 2 Y Internal fix parameter

OK: consistent with the offline version.

LAICalcYes - 1 Y Internal fix parameter

OK: consistent with the offline version.

WaterUseMethod (0,1) 0 Y Defines how external water use is calculated

OK: keep this fixed as 0 so SUEWS will model water use as nowhere can wu_m3 be set (i.e., currently infeasible to set this as a forcing).

sunt05 commented 5 years ago

Fixed parameters related to irrigation (Internal Fixed)

Method Option values Current value is used? Explanation

wu_m3 - 0 Y External water use

OK: consistent with WaterUseMethod.

Faut - 0 Y Fraction of irrigated area using automatic irrigation

To change: release this at grid level to allow more controllable irrigation features.

InternalWaterUse_h 0 Y Internal water use [mm h-1]

@suegrimmond what is this? It seems to be pipe loss? this is insufficiently documented. can you provide an example please?

IrrFracConif - 0 Y Fraction of evergreen trees which are irrigated

To change: release this at grid level to allow more controllable irrigation features.

IrrFracDecid - 0 Y Fraction of deciduous trees which are irrigated

To change: release this at grid level to allow more controllable irrigation features.

IrrFracGrass - 0 Y Fraction of grass which is irrigated

To change: release this at grid level to allow more controllable irrigation features.

DayWat - 0 Y Days of watering allowed

To change: release this at grid level to allow more controllable irrigation features.

DayWatPer - 0 Y % of houses following daily water

To change: release this at grid level to allow more controllable irrigation features.

sunt05 commented 5 years ago

Fixed parameters related to snow (Internal Fixed)

Method Option values Current value is used? Explanation

CRWmax - 0.2 Y Free water holding capacity of shallow SnowPack

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

CRWmin - 0.05 Y Free water holding capacity of deep SnowPack

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

PrecipLimit - 2.2 Y Temperature limit when precipitation occurs as snow

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

PrecipLimitAlb - 2 Y Precipitation limit for albedo change (in mm)

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

RadMeltFact - 0.001 Y Radiation melt factor

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowAlbMax - 0.8 Y Mximum snow albedo

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowAlbMin - 0.18 Y Minimum snow albedo

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowDensMax - 450 Y Minimum density of snow

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowDensMin - 100 Y Maximum density of snow

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowLimBldg - 100 Y Snow removal limits for roofs in mm)

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowLimPaved - 100 Y Snow removal limits for paved surfaces in mm)

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

tau_a - 0.01 Y Time constans related to albedo change

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

tau_f - 0.1 Y Time constans related to albedo change

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

tau_r - 0.02 Y Time constans related to albedo change

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

TempMeltFact - 0.12 Y Temperature melt factor

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

SnowPackLimit - 0 Y TS note based on snow source code: threshold to determine snow coverage using depletion curves in Valeo and Ho (2004)

To change: release this at simulation/run level (i.e., changes via namelist.suews) to consistent snow-related physics.

snowProf_24hr - 0 Y Timing of snow removal (0 or 1) Hourly, WD/WE

To change: release this at grid level (i.e., changes via wrfinput) to allow more controllable snow removal feature.

hamidrezaomidvar commented 5 years ago

Ok I will work on these. I think these are + the ones are released before all the methods right?

sunt05 commented 5 years ago

I think these are + the ones are released before all the methods right?

I didn't get you for this. let's have a chat you are in.

hamidrezaomidvar commented 5 years ago

@sunt05 snowProf_24hr wouldn't this make sense to be released innamelist.suews similar to other 24 hours profiles?

sunt05 commented 5 years ago

@sunt05 snowProf_24hr wouldn't this make sense to be released innamelist.suews similar to other 24 hours profiles?

Yes, release it as other profile parameters.

Sorry, I might have confused myself when posting it.

hamidrezaomidvar commented 5 years ago

All the above are fixed (in test-dev branch). I will merge it to master when the test is finished. The only one that I will fix after the test is NetRadiationMethod = 200 and cloud fraction

hamidrezaomidvar commented 5 years ago

@sunt05 I have a technical question. I am trying to put a checker on methods in module_sf_suews.F. For example for EmissionsMethod, something like this:

opt = EmissionsMethod
    IF ( .NOT.opt.EQ.1 .AND. .NOT.opt.EQ.2 .AND. .NOT.opt.EQ.3 .AND. .NOT.opt.EQ.4 ) THEN
            CALL wrf_error_fatal( "Invalid EmissionsMethod option. It should be 1,2,3, or 4" )
    ENDIF

It seems that no matter what the value of EmissionMethod is in namelist.suews, it enters this IF statement. I am a little bit confused. Do you have any idea? Maybe I am missing something her

suegrimmond commented 5 years ago

Why not If(opt.le.0.or.opt.gt 4) then

Best wishes Sue

Prof Sue Grimmond Dept. of Meteorology, University of Reading, Reading, RG6 6BB T: 44 118 378 6248 – messages get emailed to me O:Met Building (#58 on map) rm:1U14 E: c.s.grimmond@reading.ac.ukmailto:c.s.grimmond@reading.ac.uk W: http://micromet.reading.ac.uk/

From: Hamidreza Omidvar notifications@github.com Sent: 15 May 2019 12:12 To: Urban-Meteorology-Reading/WRF-SUEWS WRF-SUEWS@noreply.github.com Cc: Sue Grimmond c.s.grimmond@reading.ac.uk; Mention mention@noreply.github.com Subject: Re: [Urban-Meteorology-Reading/WRF-SUEWS] List of Methods that are/aren't used in WRF-SUEWS (#38)

@sunt05https://github.com/sunt05 I have a technical question. I am trying to put a checker on methods in module_sf_suews.F. For example for EmissionsMethod, something like this:

opt = EmissionsMethod

IF ( .NOT.opt.EQ.1 .AND. .NOT.opt.EQ.2 .AND. .NOT.opt.EQ.3 .AND. .NOT.opt.EQ.4 ) THEN

        CALL wrf_error_fatal( "Invalid EmissionsMethod option. It should be 1,2,3, or 4" )

ENDIF

It seems that no matter what the value of EmissionMethod is in namelist.suews, it enters this IF statement. I am a little bit confused. Do you have any idea? Maybe I am missing something her

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/Urban-Meteorology-Reading/WRF-SUEWS/issues/38?email_source=notifications&email_token=AE2KZXRP4SXTA4NG3EP7W6TPVPVWFA5CNFSM4HMPJ3YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVOKL6I#issuecomment-492611065, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AE2KZXRDXZ2S5D2ITDZNYG3PVPVWFANCNFSM4HMPJ3YA.

suegrimmond commented 5 years ago

For yours you need Opt.ne.1

Best wishes Sue

Prof Sue Grimmond Dept. of Meteorology, University of Reading, Reading, RG6 6BB T: 44 118 378 6248 – messages get emailed to me O:Met Building (#58 on map) rm:1U14 E: c.s.grimmond@reading.ac.ukmailto:c.s.grimmond@reading.ac.uk W: http://micromet.reading.ac.uk/

From: Hamidreza Omidvar notifications@github.com Sent: 15 May 2019 12:12 To: Urban-Meteorology-Reading/WRF-SUEWS WRF-SUEWS@noreply.github.com Cc: Sue Grimmond c.s.grimmond@reading.ac.uk; Mention mention@noreply.github.com Subject: Re: [Urban-Meteorology-Reading/WRF-SUEWS] List of Methods that are/aren't used in WRF-SUEWS (#38)

@sunt05https://github.com/sunt05 I have a technical question. I am trying to put a checker on methods in module_sf_suews.F. For example for EmissionsMethod, something like this:

opt = EmissionsMethod

IF ( .NOT.opt.EQ.1 .AND. .NOT.opt.EQ.2 .AND. .NOT.opt.EQ.3 .AND. .NOT.opt.EQ.4 ) THEN

        CALL wrf_error_fatal( "Invalid EmissionsMethod option. It should be 1,2,3, or 4" )

ENDIF

It seems that no matter what the value of EmissionMethod is in namelist.suews, it enters this IF statement. I am a little bit confused. Do you have any idea? Maybe I am missing something her

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/Urban-Meteorology-Reading/WRF-SUEWS/issues/38?email_source=notifications&email_token=AE2KZXRP4SXTA4NG3EP7W6TPVPVWFA5CNFSM4HMPJ3YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVOKL6I#issuecomment-492611065, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AE2KZXRDXZ2S5D2ITDZNYG3PVPVWFANCNFSM4HMPJ3YA.

hamidrezaomidvar commented 5 years ago

@suegrimmond It is a good option for this method, but for example for NetRadiationMethod which has values of 1,2,3,100,200,300 wouldn't be the most efficient I guess?

hamidrezaomidvar commented 5 years ago

mm, so .note. might apply to opt first? that is confusing. when I test this separately, it works!

sunt05 commented 5 years ago

It just occurred to me that DLS issue is not resolved yet. In module_sf_suews.F:

INTEGER,PARAMETER::startDLS=85   !DOY when daylight saving starts
INTEGER,PARAMETER::endDLS=302   !DOY when daylight saving ends

they are still fixed. Given the fact DLS policies are conducted at the regional/state level (http://www.webexhibits.org/daylightsaving/g.html), we may consider releasing these two via namelist.suews.

How do you think?

hamidrezaomidvar commented 5 years ago

Yes, this is in my TODO list. I will release these ones.

hamidrezaomidvar commented 5 years ago

By adding the cloud fraction from WRF to SUEWS, I think all the aspects of this post is resolved. Therefore, I close it.