NumLab 2013: 1 February
Jouni Räisänen (UH)
Laura Rontu (FMI)
-a
Musca domestica
(Wikimedia Commons)
Agenda 1 February
• Results from Exercise 2
• Again a bit more about the model
– summary: methods of giving initial conditions and forcing
– namelist_arome_musc, namelist_surfex_musc
• Ideas for course projects
• Introduction of Exercise 3
Division to groups
• op01: Tiina Nygård, Ella-Maria Kyrö, Roberta Pirazzini
• op02: Carl Fortelius, Evgeny Kadantsev, Irene Suomi
• op03: Laura Rojas, Roberto Cremonini, Pirkka Ollinaho
• op04: Olle Räty, Peter Ukkonen, Kaisa Ylinen, Viivi Kallio
• op05: Ditte Mogensen, Rosa Gierens, Siegfried Schobesberger
• op06: Ilari Lehtonen, Elina Riskilä, Virve Karsisto, Jussi Tiira
• Ukraine: Julia Palamarchuk, Olga Krukova, Anna Pavlova
• Ireland: Emily Gleeson, Noelle Gillespie, Sinead Duffy, Klara
Finkele?
• Estonia 1: Velle Toll, Oleg Batrashev, Piia Post
• Estonia 2: Marko Zirk, Hardi Teder, Hannes Keernik
Exercise 2
• Any unexplained technical difficulties?
• Other experiences / questions?
Exercise 2
• Any unexplained technical difficulties?
• Other experiences / questions?
Comment by CF:
When we start fo modify the code, it is sometimes a good
idea to look at output from every time step instead of
averages, as this can reveal unexpected oscillations
pointing to numerical problems
Exercise 2: radheat.F90
Solar radiation at TOA,
right towards the Sun
No solar radiation when the
Sun is below the horizon
Solar radiation at TOA,
a more exact and a
simpler equation
00
0),sin(
h ,
h hSQS
Exercise 2: radheat.F90
Solar radiation at TOA,
right towards the Sun
No solar radiation when the
Sun is below the horizon
Solar radiation at TOA,
a more exact and a
simpler equation
In this case, no solar
radiation wherever the Sun is
Exercise 2: what is JPRB?
JPRB = real number with a relative accuracy of 10-13
and possible range of up to 10 ± 300
/data/harmonie/harmonie_MUSC/src/xrd/module/
parkind1.F90
Exercise 2: recompilation of MUSC
mur xxxtest (linkref)
mur xxxtest recompile
Exercise 2: recompilation of MUSC
mur xxxtest (linkref)
mur xxxtest recompile
Original code
in $refmusc
Own code
in $MU_WD
Code in
$ownlib
1
2
1
2
Exercise 2: acatest2 vs acatest
0
1
2
Exercise 2: acatest2 vs acatest (2)
Less solar radiation colder surface stronger inversion
weaker turbulent mixing warming above the surface layer
Exercise 2: acatest2 vs acatest (3)
More solar radiation higher boundary layer
temperature response extends higher (but is smaller at surface)
Exercise 2: test_arome_gl
Har2musc_arome.sh
3-D model output (atmosphere + surface)
LL=${1-0006}
harfa=${2-ICMSHHARM+${LL}}
harlfi=${3-AROMOUT_.${LL}.lfi}
muscfa=${4-MUSCIN+${LL}.fa}
musclfi=${5-MUSCIN+${LL}}
naminterp_fa
naminterp_lfi
LAT, LON
1-D input files for MUSC (atmosphere + surface)
Exercise 2: ’gl’ in test_arome_gl
gl -l -n naminterp_fa ${harfa} -o ${muscfa} > gl-fa+${LL}.log
gl -l -n naminterp_lfi ${harlfi} -o ${musclfi} > gl-lfi+${LL}.log
namelist input file output file log file
(Har2musc_arome.sh)
There are over 200 (program and other) files related to
the ’gl’ package under $refmusc/util/gl
(in numlab.fmi.fi, $refmusc = /data/harmonie/harmonie_MUSC)
Exercise 2: ’gl’ in test_arome_gl
gl -l -n naminterp_fa ${harfa} -o ${muscfa} > gl-fa+${LL}.log
gl -l -n naminterp_lfi ${harlfi} -o ${musclfi} > gl-lfi+${LL}.log
namelist input file output file log file
(Har2musc_arome.sh)
There are over 200 (program and other) files related to
the ’gl’ package under $refmusc/util/gl
(in numlab.fmi.fi, $refmusc = /data/harmonie/harmonie_MUSC)
gl reads fa and lfi files (e.g. HARMONIE output)
but not lfa files (e.g. MUSC output)
’lfa tools’ are available for these (more later…)
Exercise 2: ’gl’ in test_arome_gl (2)
gl [-f] file, list the content of a file, -f for FA/lfi files
-c : Convert a FA/lfi file to grib ( -f implicit )
-p : Convert a FA file to grib output without extension zone
(-c and -f implicit )
-musc : Convert a MUSC FA file ASCII ( -c implicit )
-a : Convert a HIRLAM file to ALADIN input
climate_aladin assumed available
-d : Together with -a it gives a (bogus) NH boundary file
-e : Convert a ECMWF file to ALADIN input
climate_aladin assumed available
-s : Work as silent as possible
-g : Prints ksec/cadre/lfi info
-m : Prints min,mean,max of the fields
-i : Prints the namelist options (useless)
-t : Prints the FA/lfi/GRIB table (useful)
-q : Cross check the FA/lfi/GRIB table (try)
-pl X : Give polster_projlat in degrees
gl file -n namelist_file : interpolates file according to
namelist_file
gl -n namelist_file : creates an empty domain according to
specifications in namelist_file
-igd : Set lignore_duplicates=F
gl –f –m ICMSHHARM…
is useful for investigating
3-D HARMONIE output
gl –f –t ICMSHHARM…
may also be
gl -f -m ICMSHHARM+0006
Open:ICMSHHARM+0006
S001WIND.U.PHYS > 001:033-00001-109@20080930_18:00+0006 001
U-comp. 7.282E+000 11.734E+000 15.053E+000 1.835E+000
Beginning and length of forecast
Min, Mean, Max and standard deviation of U at highest model level
(within the 50 x 50 grid box area)
Vertical levels
1 0.0000000000000000 0.0000000000000000
2 2000.0513542600002 0.0000000000000000
3 4033.4090789099996 0.0000000000000000
4 6074.4032812400001 2.3670000000000001E-004
much further down … A and B coefficients for the vertical levels
Nlon,Nlat,Nlev : 50 50 60
South,West : 58.019643396288352 9.4264038888691886
North,East : 60.708027558366126 21.828043658280375
still further down … (but contradicts with next slide)
Beginning
gl -f -t ICMSHHARM+0006
Total of 866 lines in this case Some GRIB codes
(useful for some purposes)
Exercise 2: test_arome_gl (3)
1) For which location was this experiment made?
2) Where can one find the number of levels?
Nlon,Nlat,Nlev : 50 50 60
LAT=57.375
LON=13.55 (Har2musc_arome)
(Beginning of
gl-fa+0006.log)*
*To find out the levels, say ”gl –f -m ICMSHHARM+0006”
Exercise 2: test_arome_gl (4)
3) Which variables were read from the input file?
READKEY(1:14)%name = 'SPECSURFGEOPOTEN', 'SURFPRESSION',
'SNNNWIND.U.PHYS', 'SNNNWIND.V.PHYS',
'SNNNTEMPERATURE', 'SNNNHUMI.SPECIFI',
'SNNNPRESS.DEPART', 'SNNNVERTIC.DIVER'
'SNNNLIQUID_WATER', 'SNNNSOLID_WATER',
'SNNNSNOW', 'SNNNRAIN',
'SNNNGRAUPEL', 'SNNNTKE'
(Har2musc_arome,
nam_interp_fa)
READKEY(15:24)%name =
'SURFAEROS.SEA ',
'SURFAEROS.LAND ',
'SURFAEROS.SOOT ',
'SURFAEROS.DESERT',
'SURFA.OF.OZONE ',
'SURFB.OF.OZONE ',
'SURFC.OF.OZONE ',
'SURFTEMPERATURE',
'SURFRESERV.NEIGE',
'SURFIND.TERREMER ',
PPPKEY%name =
'#','SNNNFORC001','SNNNFORC002','SNNNFORC003'
PPPKEY%ttt = 109,109,109,109,
PPPKEY%lll = -1,-1,-1,-1,
PPPKEY%ppp = 32,-1,-1,-1,
PPPKEY%nnn = 0,0,0,0,
PPPKEY%lwrite = F,T,T,T,
IFORCE = 011,051,032,
Initial conditions in
the atmosphere
Mis
cellan
eo
us
Forcing for
temperature (11)
specific humidity (51)
and wind speed? (32)
WMO guide
to GRIB
Summary: definition of MUSC initial
conditions and atmospheric forcing
A) From 3-dim model simulations
B) In namelists
’gabls3’ and ’acatest’
’test_arome_gl’ (and most other test packages)
Initial conditions and forcing from 3D-
simulations: test_arome_gl
Har2musc_
arome.sh
ICMSHHARM_0006
AROMOUT_.0006.lfi MUSCIN+0006.lfi
MUSCIN+0006.fa
Conversions with the gl program, e.g.
Namelists naminterp_fa and naminterp_lfi within Har2musc_arome.sh
to guide the gl program
gl -l -n naminterp_fa ${harfa} -o ${muscfa} > gl-fa+${LL}.log
Initial conditions and forcing from sounding
+ namelists: musc_acatest
atmospheric sounding
’first-guess’ namelists
(defatm_in, defsfx_in)
Sou2MUSC.sh
Aca2MUSC.sh
updated namelists
(defatm_out, defsfx_out)
MUSC initial conditions and forcing
(MUSCIN_xxx.fa, MUSCIN_xxx.lfi)
Namelist
’param’
Initial conditions and forcing from sounding
+ namelists: musc_acatest
atmospheric sounding
’first-guess’ namelists
(defatm_in, defsfx_in)
Sou2MUSC.sh
Aca2MUSC.sh
updated namelists
(defatm_out, defsfx_out)
MUSC initial conditions and forcing
(MUSCIN_xxx.fa, MUSCIN_xxx.lfi)
Namelist
’param’
Interpretation of the forcing
in MUSC also needs parts of
namelist_arome_musc
in both methods (A) and (B)
Any more comments / questions
on Exercise 2?
What about the namelists?
http://workplacecoachblog.com/files/Webpage%20Photos/jungle-wallpaper1.jpg
Runmusc_XXX
Input / output of Runmusc_xxx
MUSCIN_xxx.fa
(=iniatm)
MUSCIN_xxx.fa: atmospheric initial conditions and forcing
MUSCIN_xxx.lfi: surface initial conditions
namelist_arome_musc: namelists regulating atmospheric physics
namelist_surfex_musc: namelists regulating surface physics
MASTER
namelist_arome_musc
(=namatm)
Output files
(Out.hhh.xxxx.lfa)
MUSCIN_xxx.lfi
(=inisfx)
namelist_surfex_musc
(=namsfx) Script input parameters
Logfile (lola)
namelist_arome_musc (small part of it…)
- A collection of 150+ individual namelists to control MUSC options
- Many namelists empty default values used
- Some limited documentation:
:::::::::::::::::::::::::::::::::::::::::::::::::: &NAEPHY
/
&NAERAD
LRRTM=.TRUE.,
NAER=1, ; NAER defaut ARPEGE/AROME=1
NOZOCL=2, ; NOZOCL=1 ARPEGE et 2 pour AROME
NRADFR=1,
NSW=6,
LSRTM=.FALSE.,
NOVLP=6 ; 6 pour AROME et 1 pour ARPEGE
/
&NAIMPO
/
::::::::::::::::::::::::::::::::::::::::::::::::::
http://www.cnrm.meteo.fr/gmgec/arpege-climat/ARPCLI-
V5.2/docm/arp52cm/node3.html
A copy-paste from the ARPEGE
document (link on previous slide)
2. Namelist settings
2.1 General principle There is one namelists file for the atmospheric setup and one namelists file
for the surface configuration. The file of namelists for the atmosphere
makes it possible to carry out simulations with ARPEGE in various
configurations and various resolutions without having to recompile
anything. Each namelist breaks up into a parameter list. One often says
``the namelist'' for ``the file of namelists'' . There are 137 namelists read by
the model in configuration 1 (direct model run), with 323 switches
prescribed (amongst more than 2000). Indeed all switches have a default
value defined in the code before reading the file. Thus if switches are
missing in the file, the model runs nevertheless. It is necessary however
that the 137 namelists are present, even possibly empty.
Copy-paste continued
2.2 Important atmophere namelists You will find hereafter comments on some switches present in the standard file. For the others, it is necessary to browse the code documentation.
2.2.1 NAERAD LRRTM
.T. if RRTM is used for radiation transfer NRADLP
Index for diagnosis of liquid cloud effective radius NSW
Number of shortwave spectral intervals. RCCO2
Concentration in CO2. RCFC11
Concentration in CFC11. RCFC12
Concentration in CFC12. RCH4
Concentration in CH4. RN2O
Concentration in N2O.
Caveat:
ARPEGE ≠ Harmonie_MUSC
Definition of ’arome’ namelists in the source code
Most are at $refmusc/src/arp/namelist ! -----------------------------------------------------------------
NAMELIST/NAERAD/&
& LERAD1H, LEPO3RA, LONEWSW &
&, LCCNL , LCCNO , LECSRAD, LRAYL , LRRTM , LSRTM &
&, LHVOLCA, LNEWAER, LDIFFC , LEMODAL, LNOTROAER &
&, LETRACGMS,LRADONDEM &
&, LPERPET &
&, NICEOPT, NLIQOPT, NMCICA , NRADIP , NRADLP &
&, NAER , NMODE , NOZOCL , NINHOM , NLAYINH &
&, NOVLP , NSW , NRADFR , NLNGR1H &
&, NRADPFR, NRADPLA, NRPROMA, NCSRADF &
&, NRADINT, NRADRES, NGHGRAD &
&, CRTABLEDIR, CRTABLEFIL &
&, RCCNSEA, RCCNLND, NPERTAER, NPERTOZ &
&, RPERTOZ, RLWINHF, RSWINHF, RRe2De , RMINICE &
&, RCCO2 , RCCH4 , RCN2O , RCCFC11, RCCFC12 &
&, NHINCSOL,LECO2VAR,LHGHG , NSCEN &
&, LEDBUG , LESO4HIS &
&, LUVPROC, LUVTDEP, LUVDBG , NUV &
&, NUVTIM , NRADUV , RUVLAM , RMUZUV
! -----------------------------------------------------------------
naerad.h
Others elsewhere (search for nam*.h, or nem*.h)
namelist_surfex_musc (beginning)
- A collection of namelists to control SURFEX options
- Some documentation in the SURFEX* user guide:
(section 2.2 )
:::::::::::::::::::::::::::::::::::::::::::::::::: &NAM_DIAG_ISBAn
LPGD=.TRUE.,
LSURF_MISC_BUDGET=.TRUE.,
/
&NAM_DIAG_SURFn
LSURF_BUDGET=.TRUE.,
N2M=1,
/
::::::::::::::::::::::::::::::::::::::::::::::::::
http://www.cnrm.meteo.fr/surfex/IMG/pdf/surf-v7-2.pdf
*SURFEX is the surface model used in MUSC.
More of this later.
More interesting
examples in the
SURFEX User Guide
Ideas for the course project
• op01:
– GABLS4, Halley, Antarctica, 17-19 May 2003
– Sensitivity of the simulation to atmospheric forcing
• op02:
– GABLS4 --------------------- || ------------------------------
– Parameterization of turbulence in stable stratification
Ideas for the course project
• op03:
– Main goal is to investigate convection schema coded in MUSC
model and to evaluate their sensitivity to different atmospheric
instability conditions (deep and shallow convection, different
moisture conditions).
– The idea is then to run the MUSC model with different
congurations and different atmospheric profiles and external
forcing and compare the results of the different congurations.
Ideas for the course project
• op04:
– A case study on how different parameters (surface roughness,
turbulent mixing etc.) affect the near ground wind speeds,
possibly taking a high wind case
– Study on how different parameters affect highest daily
temperatures (ground/soil properties, cloudiness, turbulent
mixing etc.)
– Studying diurnal cycle and onset of convection either in a real-
world situation or in an academic test case. How much is this
affected by things such as soil moisture and large scale
forcings?
Ideas for the course project
• op05:
– How much do you need to change the surface conditions in
order to see a significant influence on the stratospheric
meteorology?
– Extreme weather conditions: can we predict a thunderstorm?
– Changes in the solar constant, or other changes in the way the Sun emits radiation
• op06:
– Changing surface parameters in one place, for example
vegetation, and see what happens, studying the effect in
different seasons (winter vs summer) and weather conditions
– Impact on surface parameters on calculated forest fire risk?
– Adding sauna or hot spring to the surface?
Ideas for the course project
• Ireland – Using MUSC to produce better very short range forecasts at
some Irish Airports.
– Similar to the above but focus on some roadside stations used
for road-ice forecasting – focus on physiography for example.
– Some radiation experiments/comparisons using Irish data from
Valentia Observatory or other data that’s available elsewhere.
A 40-day simulation for Jokioinen (no large-scale forcing)
Exercise 3
• How to add variables to model output?
• What are the different output variables?
• What are (some of) the model subroutines doing?
• Further planning of the course project
• More precise instructions on paper
(and on the course website)
• Next meeting: 8 February 14.15-16 Finnish time
• See the exercise paper to see what you should be prepared
to report (literally before, and orally in the meeting)
Also available on course www page:
http://www.helsinki.fi/~jaraisan/
numlab2013/exercise3.pdf