= Evaluation of LMDZOR6 with aerosols defined with 3 params SW + 1 LW = == Model installation == 1. Start to import modIPSL: `svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl` 2. Change LMDZ revision to `trunk 2541` in `mod.def` 3. Install the model: `cd modipsl/util ; ./model LMDZOR_v6` 3b. To enable debug version: edit `modipsl/config/LMDZOR/Makefile` and add ''debug'' option: {{{#!bash lmdz: ../../modeles/LMDZ (cd ../../modeles/LMDZ ; ./makelmdz_fcm -debug -d $(RESOL_LMDZ) [...] (cd ../../modeles/LMDZ ; ./makelmdz_fcm -debug -d $(RESOL_LMDZ) [...] }}} 4. Activate RRTM mode in `modipsl/modeles/LMDZ/makelmdz_fcm`: `rrtm=true` 5. Compile with L=79: `cd modipsl/config/LMDZOR ; gmake LMD144142-L79` == Activate and configure (RRTM, read aerosol for 3 parameters reading...) == 1. '''RRTM''': see process below (don't forget to compile with ''rrtm'' flag). Active `flag_rrtm=1` in corresponding `PARAM/physiq.def` file. 2. '''Read aerosol''': Edit corresponding `PARAM/physiq.def` file and add `flag_aerosol_strat=2`. Then add aerosols files to read in `COMP/lmdz.card` as below: {{{ [BoundaryFiles] List= (/path/to/input/dir/tauswstrat.2D.${year}.nc, tauswstrat.2D.nc), \ (/path/to/input/dir/taulwstrat.2D.${year}.nc, taulwstrat.2D.nc), \ (/path/to/input/dir/${CREATE}_${year}_limit.nc, limit.nc),\ ... }}} = Evaluation of LMDZOR6 with aerosols defined with 1 param = == Model installation == 1. Start to import modIPSL: `svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl` 2. Change LMDZ revision to `testing 2471` and ORCHIDEE to `trunk 3013` in `mod.def` 3. Install the model: `cd modipsl/util ; ./model LMDZOR_v6` 3b. To enable debug version: edit `modipsl/config/LMDZOR/Makefile` and add ''debug'' option: {{{#!bash lmdz: ../../modeles/LMDZ (cd ../../modeles/LMDZ ; ./makelmdz_fcm -debug -d $(RESOL_LMDZ) [...] (cd ../../modeles/LMDZ ; ./makelmdz_fcm -debug -d $(RESOL_LMDZ) [...] }}} 4. Activate RRTM mode in `modipsl/modeles/LMDZ/makelmdz_fcm`: `rrtm=true` 5. Compile with L=79: `cd modipsl/config/LMDZOR ; gmake LMD144142-L79` [[br]] == To use RRTM == 1. Edit `COMP/lmdz.card` and a choose ''New Physic'' (NP) version: {{{ [UserChoices] # Physics package to use : # LMDZ_Physics=AP for standard/old physics(defalut), can be used with LMDZ4_AR5 or LMDZ5/trunk sources # LMDZ_Physics=NPv5.17h for new physics, to be used with LMDZ5/trunk revision 1554 or later LMDZ_Physics=NPv5.17h }}} 2. Activate RRTM flag with correct number of short wave bands into the corresponding ''physiq.def'' file, `physiq.def_L39_NPv3.2` in my case: {{{ # Rayonnement #********************* # activation du nouveau code de rayonnement RRTM # 0 : Ancien code et 1 : RRTM (D=0) iflag_rrtm=1 ## NSW need to be 6 when iflag_rrtm=1 NSW=6 }}} [[br]] == To use aerosol strato == 1. Edit corresponding `PARAM/*.def` file and add `flag_aerosol_strat=1` 2. Edit `COMP/lmdz.card` and configure the access to the AOD file containing a ''TAUSTRAT'' variable. For example: {{{ [BoundaryFiles] List= (${STORE_DIR}/INPUT/SATO/taustrat.${year}.nc, taustrat.nc) }}} 3. Check that output variable `OD_10um_STRAT` is defined and `OD550_STRAT` is activated in LMDZ (file `modipsl/modeles/LMDZ/DefLists/field_def_lmdz.xml`):[[br]] {{{#!xml }}} [[br]] 4. Add the variable output in `PARAM/file_def_histmth_lmdz.xml`, `PARAM/file_def_histday_lmdz.xml`... (i.e for each ouput frequency):[[br]] {{{#!xml }}} [[br]] == CREATE LIMIT : create boundaries based on HadISST 1870-2007 (ELIHAD07-144x142x79) == - Physics: NPv5.17h with RRTM (`iflag_rrtm=1` and `NSW=6`). - Config: `EXPERIMENT/amip/config.card` - ''COMP/lmdz.card'': `LMDZ_Physics=NPv5.17h` and `flag_aerosol=6` {{{#!bash [BoundaryFiles] List= (/ccc/store/cont003/dsm/p25khod/dmf_import/INPUT/amipbc_sst_360x180_${year}.nc, amipbc_sst_1x1.nc), \ (/ccc/store/cont003/dsm/p25khod/dmf_import/INPUT/amipbc_sic_360x180_${year}.nc, amipbc_sic_1x1.nc), \ }}} - ''config.card'': {{{#!bash CalendarType=360d StartDate=1870-01-01 EndDate=2007-12-30 PeriodLength=1Y }}} - >100 years Results: '''Ok''' == TESTS == === TestLMDZ6.2.Alt79: Get approx altitudes and other 1D var === - Description: basic AP model, run 1 month to get in out_execution file values for 1D variables. ||||||= '''Approximative altitudes for LMDZ 79 levels (km)''' =|| || 9.708387756551662E-003 || 3.026245875396839E-002 || 5.320081579616215E-002 || || 7.880002262851256E-002 || 0.107368685702181 || 0.139251144498449 || || 0.174831576338591 || 0.214538557640051 || 0.258850125866365 || || 0.308299387925398 || 0.363480720998617 || 0.425056610022694 || || 0.493765161292869 || 0.570428322521379 || 0.655960824243358 || || 0.751379833099905 || 0.857815270726739 || 0.976520698085068 || || 1.10888458806315 || 1.25644170146096 || 1.42088413384875 || || 1.60407140276653 || 1.80803868547958 || 2.03500198800707 || || 2.28735862321903 || 2.56768090894522 || 2.87870049897707 || || 3.22328030114937 || 3.60437064318057 || 4.02494641489847 || || 4.48792261361465 || 4.99604735903996 || 5.55177429340737 || || 6.15712040783053 || 6.81352038627096 || 7.52169357317691 || || 8.28154307046172 || 9.09210640914883 || 9.95157237575936 || || 10.8573689798135 || 11.8063152374884 || 12.7948179211588 || || 13.8190872717952 || 14.8753449118930 || 15.9600024217229 || || 17.0697978438232 || 18.2018866882225 || 19.3538914213739 || || 20.5239178519398 || 21.7105483991677 || 22.9128217494633 || || 24.1302068279462 || 25.3625771096306 || 26.6101895586618 || || 27.8736711490497 || 29.1540150524875 || 30.4525881577928 || || 31.7711515664562 || 33.1118960565653 || 34.4774952253517 || || 35.8711801635929 || 37.2968412100269 || 38.7591648111633 || || 40.2638171601237 || 41.8176917521982 || 43.4292463511653 || || 45.1089679375536 || 46.8700251851113 || 48.7292025491853 || || 50.7082685304574 || 52.8360326615667 || 55.1515291149914 || || 57.7091043957736 || 60.5868311770970 || 63.9009052496261 || || 67.8309656842607 || 72.6647792382087 || 78.8718891720869 || || 89.0538255456517 |||||| === testLMDZ6.2.NP5.17h: new physic with "official" forcings (no RRTM) === - Description: Test this version model "basically" to check that everything is ok and nb CPU. - Model compile with RRTM and strato forcing. - Options: no RRTM and strato forcing - Restart: use limits from ''ELIHAD07-144x142x79'' - Boundary: use `limit.nc`from ''ELIHAD07-144x142x79'' - ''COMP/lmdz.card'': `LMDZ_Physics=NP5.17h` and `flag_aerosol=6` - ''config.card'': {{{#!bash CalendarType=360d StartDate=1991-01-01 EndDate=1994-12-30 PeriodLength=1M RebuildFrequency=NONE PackFrequency=4Y }}} Results: ''' OK ''' === testLMDZ6rrtm.2.NP5.17h: new physic+RRTM with "official" forcings === - Description: Test RRTM with default config. Evaluate time to process 4Y. - Model compile with RRTM and strato forcing. - Options: activate RRTM and no strato forcing - Restart: use limits from ''ELIHAD07-144x142x79'' - Boundary: use `limit.nc`from ''ELIHAD07-144x142x79'' - ''COMP/lmdz.card'': `LMDZ_Physics=NP5.17h` and `flag_aerosol=6` - ''config.card'': {{{#!bash CalendarType=360d StartDate=1991-01-01 EndDate=1994-12-30 PeriodLength=1M RebuildFrequency=NONE PackFrequency=4Y }}} Results: ''' OK ''' === TestLMDZ6sato.2.NP5.17h.NoVolc: new physic+RRTM with TSI and copy only Sato forcings === - Description: Test RRTM + TSI + define and copy Sato. Evaluate time to process 4Y. - Model compile with RRTM and strato forcing. - Options: activate RRTM and no strato forcing - Restart: use limits from ''ELIHAD07-144x142x79'' - Boundary: use `limit.nc`from ''ELIHAD07-144x142x79'' - ''COMP/lmdz.card'': `LMDZ_Physics=NP5.17h` and `flag_aerosol=6` - ''config.card'': {{{#!bash CalendarType=360d StartDate=1991-01-01 EndDate=1994-12-30 PeriodLength=1M RebuildFrequency=NONE PackFrequency=4Y }}} Results: ''' OK ''' === TestLMDZ6rrtm.2.SATO: new physic, RRTM and Sato AOD === - Description: Test RRTM + SATO AOD. - Model compile with RRTM and strato forcing. - Options: activate RRTM and strato forcing (AOD) - Restart: use limits from ''ELIHAD07-144x142x79'' - Boundary: use `limit.nc`from ''ELIHAD07-144x142x79'' - ''COMP/lmdz.card'': `LMDZ_Physics=NP5.17h` and `flag_aerosol=6` - ''config.card'': {{{#!bash CalendarType=360d StartDate=1991-01-01 EndDate=1994-12-30 ATM= (gcm.e, lmdz.x, 47MPI, 1OMP) PeriodLength=1M RebuildFrequency=NONE PackFrequency=4Y }}} Results: '''OK (2Y)''' '' No OpenMP: very, very long (~2/3D per year) === TESTS === In dir: `` ||Name ||#MPI||OMP ||flag_aer||PerLen||PackFq||Physic ||RRTM||Out ||Forcings||Results ||Comment || ||TestLMDZ6.2.NP5.17h ||47 ||8CPU||False || 1M|| 4Y||AP ||No ||DEVT||Offical ||OK 4Y || || ||TestLMDZ6rrtm.2.NP5.17h||47 ||8CPU||False || 1M|| 4Y||NP5.17h||Yes ||DEVT||Offical ||OK 4Y || || ||TestLMDZ6sato.2..NoVolc||47 ||8CPU||False || 1M|| 4Y||NP5.17h||Yes ||DEVT||Offical ||OK 4Y || || ||TestLMDZ6rrtm.2.SATO ||47 ||1CPU||True || 1M|| 4Y||NP5.17h||Yes ||DEVT||SATO ||OK 2Y ||Error with OMP>1 (long!)|| ||'''TestLMDZ6.OMP''' ||47 ||8CPU||True || 1M|| 1Y||NP5.17h||No ||DEVT||SATO ||OK 4Y ||Working simu for OMP. TODO: check outputs|| ||TestLMDZ6.OMP.2 ||47 ||2CPU||True || 1M|| 1Y||NP5.17h||No ||TEST||SATO ||OK 1Y ||OMP 2 CPUs. TODO: check outputs|| ||'''TestLMDZ6.OMP.NOVOLC'''||47 ||8CPU||True || 1Y|| 1Y||NP5.17h||No ||DEVT||SATO ||||To make pair anom|| ||TestLMDZ6.OMP.RRTM ||47 ||8CPU||True || 1M|| 1Y||NP5.17h||Yes ||DEVT||SATO || ERROR|Plantage au mois 8, restart depuis 0... || ||'''TestLMDZ6.OMP.RRTM.2'''||47 ||8CPU||True || 1M|| 1Y||NP5.17h||Yes ||DEVT||SATO ||Ok 4Y ||Rm OMP private tau_aer_strat|| ||TestLMDZ6.OMP.RRTM.PRIV||47 ||8CPU||True || 1Y|| 1Y||NP5.17h||Yes ||DEVT||SATO ||||with OMP private tau_aer_strat|| ||'''TestLMDZ6.OMP.RRTM.NOVOLC'''||47 ||8CPU||No || 1Y|| 1Y||NP5.17h||Yes ||DEVT||SATO ||Ok 4Y ||To make pair anom|| == Outputs == === TestLMDZ6.OMP.RRTM.2 (1991-1994) === '''Pair Anomaly''' [[Image(https://pagesperso.locean-ipsl.upmc.fr/nillod/img/LMDZ6/LMDZ6_omp_rrtm_priv_Tops0_zonAveAnomPair.gif)]] [[Image(https://pagesperso.locean-ipsl.upmc.fr/nillod/img/LMDZ6/LMDZ6_omp_rrtm_priv_Tops0_Topl0_nettop_glbAveAnomPair.gif)]] [[Image(https://pagesperso.locean-ipsl.upmc.fr/nillod/img/LMDZ6/LMDZ6_omp_rrtm_priv_T2m_glbAveAnomPair.gif)]] === TestLMDZ6.OMP (1991-1994, no RRTM) === '''Pair Anomaly''' [[Image(https://pagesperso.locean-ipsl.upmc.fr/nillod/img/LMDZ6/LMDZ6_omp_Tops0_zonAveAnomPair.gif)]] [[Image(https://pagesperso.locean-ipsl.upmc.fr/nillod/img/LMDZ6/LMDZ6_omp_Tops0_Topl0_nettop_glbAveAnomPair.gif)]] [[Image(https://pagesperso.locean-ipsl.upmc.fr/nillod/img/LMDZ6/LMDZ6_omp_T2m_glbAveAnomPair.gif)]]