<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:Calibri;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:Calibri;
        color:windowtext;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:Calibri;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body bgcolor="white" lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Christos,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The layout of the WRF modeling system hasn’t been changed in a long time. You might find this page of help (search for “ids” on it) :<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> <a href="http://www2.mmm.ucar.edu/wrf/users/docs/wrf-phy.html">
http://www2.mmm.ucar.edu/wrf/users/docs/wrf-phy.html</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">or perhaps this:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> <a href="http://www.dtcenter.org/events/wrf-nmm_tutorial06_summer/Presentations/WRF.Software.Arch.Dave1.pdf">
http://www.dtcenter.org/events/wrf-nmm_tutorial06_summer/Presentations/WRF.Software.Arch.Dave1.pdf</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">More on the WRF infrastructure can be found in this talk by Dave Gill:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> <a href="http://www2.mmm.ucar.edu/wrf/users/workshops/WS2014/ppts/best_prac_software.pdf">
http://www2.mmm.ucar.edu/wrf/users/workshops/WS2014/ppts/best_prac_software.pdf</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Hope this helps.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> Brian<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="color:black">From: </span></b><span style="color:black"><wrf-users-bounces@ucar.edu> on behalf of Christos Gatidis <Christos.Gatidis@weatherquest.co.uk><br>
<b>Date: </b>Monday, November 7, 2016 at 9:44 AM<br>
<b>To: </b>"'wrf-users@ucar.edu'" <wrf-users@ucar.edu><br>
<b>Subject: </b>[Wrf-users] PR92 modification</span><span style="font-size:12.0pt;color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Times New Roman""><o:p> </o:p></span></p>
</div>
<p class="MsoNormal">Dear WRF users and developers,<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I would like to help me if it is possible. I want to do some modifications to the Price and Rind lightning scheme (PR92) by adding some new variables. But I am not sure how to add the new variables to the existing code (in this case I try
to add W_UP_MAX=maximum updraft). I think the problem is at the statements of the new variable which I used (line 68 of the following code) or/and at the line 89. Could you explain to me what are the differences between the ids, ims, ips and the j and k equivalents
(lines 57, 58, 59) and which of them I should use in my case (line 68 and line 89)?<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Thank you in advance! I wait your advice.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">-----------------------------------------------------------------------------------------------------------------<o:p></o:p></p>
<p class="MsoNormal">! WRF:MODEL_LAYER:PHYSICS<o:p></o:p></p>
<p class="MsoNormal">!<o:p></o:p></p>
<p class="MsoNormal">! Lightning flash rate prediction based on cloud-top height. Implemented<o:p></o:p></p>
<p class="MsoNormal">! for models using convective parameterization. Assume use of sub-grid LNB.<o:p></o:p></p>
<p class="MsoNormal">!<o:p></o:p></p>
<p class="MsoNormal">! Price, C., and D. Rind (1992), A Simple Lightning Parameterization for Calculating<o:p></o:p></p>
<p class="MsoNormal">! Global Lightning Distributions, J. Geophys. Res., 97(D9), 9919–9933, doi:10.1029/92JD00719.<o:p></o:p></p>
<p class="MsoNormal">!<o:p></o:p></p>
<p class="MsoNormal">! Wong, J., M. Barth, and D. Noone (2012), Evaluating a Lightning Parameterization<o:p></o:p></p>
<p class="MsoNormal">! at Resolutions with Partially-Resolved Convection, GMDD, in preparation.<o:p></o:p></p>
<p class="MsoNormal">!<o:p></o:p></p>
<p class="MsoNormal">! Contact: J. Wong <johnwong@ucar.edu><o:p></o:p></p>
<p class="MsoNormal">!<o:p></o:p></p>
<p class="MsoNormal">!**********************************************************************<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">MODULE module_ltng_cpmpr92z<o:p></o:p></p>
<p class="MsoNormal">CONTAINS<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">SUBROUTINE ltng_cpmpr92z ( &<o:p></o:p></p>
<p class="MsoNormal"> ! Frequently used prognostics<o:p></o:p></p>
<p class="MsoNormal"> dx, dy, xland, ht, z, t, &<o:p></o:p></p>
<p class="MsoNormal"> ! Scheme specific prognostics<o:p></o:p></p>
<p class="MsoNormal"> kLNB, &<o:p></o:p></p>
<p class="MsoNormal"> ! Scheme specific namelist inputs<o:p></o:p></p>
<p class="MsoNormal"> cldtop_adjustment, &<o:p></o:p></p>
<p class="MsoNormal"> ! Order dependent args for domain, mem, and tile dims<o:p></o:p></p>
<p class="MsoNormal"> ids, ide, jds, jde, kds, kde, &<o:p></o:p></p>
<p class="MsoNormal"> ims, ime, jms, jme, kms, kme, &<o:p></o:p></p>
<p class="MsoNormal"> ips, ipe, jps, jpe, kps, kpe, &<o:p></o:p></p>
<p class="MsoNormal"> ! Mandatory output for all quantitative schemes<o:p></o:p></p>
<p class="MsoNormal"> total_flashrate &<o:p></o:p></p>
<p class="MsoNormal"> )<o:p></o:p></p>
<p class="MsoNormal">!-----------------------------------------------------------------<o:p></o:p></p>
<p class="MsoNormal">! Framework<o:p></o:p></p>
<p class="MsoNormal">USE module_state_description<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Model layer<o:p></o:p></p>
<p class="MsoNormal">USE module_model_constants<o:p></o:p></p>
<p class="MsoNormal">USE module_wrf_error<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">IMPLICIT NONE<o:p></o:p></p>
<p class="MsoNormal">!-----------------------------------------------------------------<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Frequently used prognostics<o:p></o:p></p>
<p class="MsoNormal">REAL, INTENT(IN ) :: dx, dy<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">REAL, DIMENSION( ims:ime, jms:jme ), INTENT(IN ) :: xland, ht<o:p></o:p></p>
<p class="MsoNormal">REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), INTENT(IN ) :: z, t<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Scheme specific prognostics<o:p></o:p></p>
<p class="MsoNormal">INTEGER, DIMENSION( ims:ime, jms:jme ), INTENT(IN ) :: kLNB ! model LNB from cu_physics<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Scheme specific namelist inputs<o:p></o:p></p>
<p class="MsoNormal">REAL, INTENT(IN ) :: cldtop_adjustment<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Order dependent args for domain, mem, and tile dims<o:p></o:p></p>
<p class="MsoNormal"><b> </b><o:p></o:p></p>
<p class="MsoNormal"><b><span style="font-size:12.0pt">INTEGER, INTENT(IN ) :: ids,ide, jds,jde, kds,kde !!!</span></b><o:p></o:p></p>
<p class="MsoNormal"><b><span style="font-size:12.0pt">INTEGER, INTENT(IN ) :: ims,ime, jms,jme, kms,kme !!!</span></b><o:p></o:p></p>
<p class="MsoNormal"><b><span style="font-size:12.0pt">INTEGER, INTENT(IN ) :: ips,ipe, jps,jpe, kps,kpe !!!</span></b><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Mandatory outputs for all quantitative schemes<o:p></o:p></p>
<p class="MsoNormal">REAL, DIMENSION( ims:ime, jms:jme ), INTENT( OUT) :: total_flashrate<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Local variables<o:p></o:p></p>
<p class="MsoNormal">REAL :: dA ! grid area dx*dy in km2<o:p></o:p></p>
<p class="MsoNormal">REAL :: zkm ! AGL z in km<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><b><span style="font-size:12.0pt">REAL, DIMENSION( ims:ime,jms:jme ) :: W_UP_MAX !!! W_UP_MAX variable statement
</span></b><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">REAL, PARAMETER:: baseArea=1296. ! base-case area, dx = 36 km<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">INTEGER :: i,k,j<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">CHARACTER (LEN=250) :: message<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">!-----------------------------------------------------------------<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">dA = dx*dy/1E6<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">total_flashrate( ips:ipe,jps:jpe ) = 0.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Compute AGL heights in km<o:p></o:p></p>
<p class="MsoNormal">jloop: DO j=jps,jpe<o:p></o:p></p>
<p class="MsoNormal"> iloop: DO i=ips,ipe<o:p></o:p></p>
<p class="MsoNormal"> IF ( t(i,kLNB(i,j),j) .lt. 273.15 .and. &<o:p></o:p></p>
<p class="MsoNormal"> kLNB(i,j) .ge. kps .and. kLNB(i,j) .le. kpe ) THEN ! Cloud top must freeze<o:p></o:p></p>
<p class="MsoNormal"> zkm = ( z(i,kLNB(i,j),j) - ht(i,j) )/1E3 + cldtop_adjustment ! Compute AGL height in km<o:p></o:p></p>
<p class="MsoNormal"> IF ( zkm .gt. 0. ) THEN ! Must be above ground<o:p></o:p></p>
<p class="MsoNormal"><b><span style="font-size:14.0pt"> </span></b><b><span style="font-size:12.0pt">IF ( W_UP_MAX(i,j) .gt. 0.25 ) THEN !!! Maximum updraft mask</span></b><o:p></o:p></p>
<p class="MsoNormal"> IF ( xland(i,j) .lt. 1.5 ) THEN<o:p></o:p></p>
<p class="MsoNormal"> total_flashrate(i,j) = 3.44E-5 * (zkm**4.9) /60. ! Continental equation<o:p></o:p></p>
<p class="MsoNormal"> ELSE<o:p></o:p></p>
<p class="MsoNormal"> total_flashrate(i,j) = 6.57E-6 * (zkm**4.9) /60. ! Marine equation (Michalon 99)<o:p></o:p></p>
<p class="MsoNormal"> ENDIF<o:p></o:p></p>
<p class="MsoNormal"> ENDIF<o:p></o:p></p>
<p class="MsoNormal"> ENDIF<o:p></o:p></p>
<p class="MsoNormal"> ENDIF<o:p></o:p></p>
<p class="MsoNormal"> ENDDO iloop<o:p></o:p></p>
<p class="MsoNormal">ENDDO jloop<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">! Scale by areal ratio<o:p></o:p></p>
<p class="MsoNormal">total_flashrate(ips:ipe,jps:jpe) = total_flashrate(ips:ipe,jps:jpe) * dA/baseArea<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">END SUBROUTINE ltng_cpmpr92z<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">END MODULE module_ltng_cpmpr92z<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</body>
</html>