ctrl

11
CTRL MY WDM6 SBUYLIN Lake Effe ct Peri od Tota

Upload: yetta

Post on 22-Feb-2016

34 views

Category:

Documents


0 download

DESCRIPTION

CTRL. MY. WDM6. SBUYLIN. Lake Effect Period Total Precip. Why is Graupel so different? The calculation? Answer within variables in the scheme. The relationship chosen? A nswer may be in the literature or code. No aha moment yet…. Is the species affecting distribution and - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CTRL

CTRL MY

WDM6 SBUYLIN

Lake Effect Period Total

Precip

Page 2: CTRL

Why is Graupel so different?

The calculation?Answer within variables in the scheme.

The relationship chosen?Answer may be in the literature or code.No aha moment yet…

Is the species affecting distribution and amount of precip?

Fall velocities are variables within the scheme.

Page 3: CTRL

My Goal

• Visualize Microphysics source/sink terms

qsten(k) = qsten(k) + (prs_iau(k) + prs_sde(k) & + prs_sci(k) + prs_scw(k) + prs_rcs(k) & + prs_ide(k) - prs_ihm(k) - prr_sml(k)) & * orho

Page 4: CTRL

Where are Microphysics?WRFV3/…drwxr-xr-x 2 u0758091 steenbur 8192 Feb 1 10:34 dyn_emdrwxr-xr-x 2 u0758091 steenbur 20480 Feb 1 10:32 physdrwxr-xr-x 2 u0758091 steenbur 4096 Feb 1 10:23 Registry….

In module_mp_thompson.F:qsten(k) = qsten(k) + (prs_iau(k) + prs_sde(k) & + prs_sci(k) + prs_scw(k) + prs_rcs(k) & + prs_ide(k) - prs_ihm(k) - prr_sml(k)) & * orho

Page 5: CTRL

Heirarchy

solve_em.F {grid/domain operations}solve_em calls microphysics_driver

module_microphysics_driver.Fmicrophysics_driver calls mp_gt_driver

module_mp_thompson.F mp_gt_driver calls mp_thompson {prs_iau locally defined}

Page 6: CTRL

Registry• In the Registry folder is a file called Registry.EM_COMMON

– Variables are declared there (memory and grid)

<Table><Type><Sym><Dims><Use><NumTLev><Stagger><IO><DNAME><DESCRIP><UNITS>

My Variable <Table><Type><Sym><Dims><Use><NumTLev><Stagger><IO><DNAME><DESCRIP><UNITS>state real iausn ikj dyn_em - - h "Ice Auto Snow" "Ice autoconverted to snow" "kg kg-1"

Page 7: CTRL

Exploit existing code

Calls declarations and assignments all the way through the hierarchy

After the subroutine prs_iau is created in is called!do k = kts, kte {EXISTING CODE}

iausn(i,k,j) = prs_iau(k)… {EXISTING CODE}enddo {EXISTING CODE}

Page 8: CTRL

Simple right?

Scheme variable is local and 1 D?DOUBLE PRECISION, DIMENSION(kts:kte):: prs_iau

• Registry variables are all REAL, and I want 3D non-local (dummy) variable ala:

REAL,DIMENSION(ims:ime,kms:kme,jms:jme),INTENT(INOUT):: iausn

Page 9: CTRL

After Editing

• ./clean -a– mv configure.wrf.backup configure.wrf

• ./configure• ./compile >& compile.txt

Page 10: CTRL

Victory

Page 11: CTRL

Important

• Variable characteristics• Every subroutine connection to grid• Where edits are made in the code• Indices• Easy to blindly correct compiler errors to get a

clean compile– Keep and eye on the big picture