1 / 28

Meso-NH-Chem: Modelling of atmospheric chemistry

Meso-NH-Chem: Modelling of atmospheric chemistry from local (dx=1 km) to synoptic scale (dx=50 km). http://www.aero.obs-mip.fr/mesonh. large-scale: MOCAGE, ECMWF,. 3km. 9km. 9 UTC. 85ppb. <30ppb. 15 UTC. >90ppb. >90ppb. Parc Naturel Verdon. Marseille. Marseille.

opal
Télécharger la présentation

Meso-NH-Chem: Modelling of atmospheric chemistry

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Meso-NH-Chem: Modelling of atmospheric chemistry from local (dx=1 km) to synoptic scale (dx=50 km) http://www.aero.obs-mip.fr/mesonh large-scale: MOCAGE, ECMWF, ...

  2. 3km 9km 9 UTC 85ppb <30ppb 15 UTC >90ppb >90ppb Parc Naturel Verdon Marseille Marseille Parc Naturel Verdon OZONE le 25 Juin 2001 Cousin et Tulet, 2004

  3. Meso-NH-Chem / Local scale Urban pollution: the ESCOMPTE campaign Rich-O3 plumes / transboundary pollution 9 km Ozone (ppbv) à 1,5 km d’altitude 3 km 24 Juin à 1200 UTC 24 Juin à 0000 UTC Diagnostics: Point-by-point observation vs. model Diagnostic / budget at local scale Cousin et al, 2004

  4. Meso-NH-Chem / Modularity of the code Sensitivity test: impact of biogenic emissions Solmon et al, 2004

  5. Meso-NH-Chem / Synoptic scale Intercontinental transport of pollution: NASA/TRACE-P 7000 km Mari et al, 2004

  6. Meso-NH-Chem / Coupling of dyn/μφ/chem processes NOx production by lightning Barth et al, 2005

  7. Meso-NH-Chem: ORILAM :Aerosol-chemistry coupling Urban pollution: Aerosols during the ESCOMPTE campaign Tulet et al, 2006 Marseille Plan d’Aups (rural)

  8. Meso-NH: ORILAM-Dust Tulet et al, 2008 AOD - MODIS AOD - MesoNH Dust - µg/m3 Diff Theta - K +5 K -4 K

  9. Tutorial for chemistry in Meso-NH 1. Preparation of surface chemical schemes (SURFEX): PREP_PGD 2. Initialisation of Meso-NH for real cases with chemistry: PREP_REAL_CASE 3. Perform a Meso-NH simulation with chemistry: MESONH 4. Compute diagnostics after a Meso-NH simulation with chemistry: DIAG

  10. During run, at each timestep Albedo, Emissivity, radiative temp. Momentum fluxes Heat flux Water vapor flux CO2 flux Chemical fluxes Radiative fluxes Sun position Atm. Forcing Rain, snow fall Scalars concentrations Scalars names Atmospheric model MESONH COUPLING SURF_ATM Surface SURFEX ISBA TEB WATER_FLUX TOWN LAKE SEA VEGETATIVE 1. Surface (SURFEX) – Atmosphere (MESONH) exchanges

  11. WHERE? in namelist PRE_PGD1.nam (surface field step) : HOW? &NAM_CH_EMIS_PGD NEMIS_PGD_NBR = n , ! Total number of chemical emission fields CEMIS_PGD_NAME(1) = ‘SO2’, ! Name of emitted chemical species CEMIS_PGD_AREA(1) = ‘LAN’, ! Interpolation on LAND only… NEMIS_PGD_TIME(1) = 3600, ! Time of the day in seconds CEMIS_PGD_FILE(1) = ‘name of the 1st file’, CEMIS_PGD_FILESTYPE = ‘BINLLV’, ! File format binary (lat,lon,value) CEMIS_PGD_NAME(2) = ‘SO2’, ! Name of emitted chemical species CEMIS_PGD_AREA(2) = ‘SEA’, ! Interpolation on SEA only… NEMIS_PGD_TIME(2) = 7200, ! Time of the day in seconds CEMIS_PGD_FILE(2) = ‘name of the 2nd file’, CEMIS_PGD_FILESTYPE = ‘ASCLLV’ ! File format ascii (lat, lon, value) ….. CEMIS_PGD_NAME(n) = ‘NOX’, ! Name of emitted chemical species CEMIS_PGD_AREA(n) = ‘ALL’, ! Interpolation on all pgd domain… NEMIS_PGD_TIME(n) = 86400, ! Time of the day in seconds CEMIS_PGD_FILE(n) = ‘name of the n file’, CEMIS_PGD_FILESTYPE = ‘BINLLV’ ! File format 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: How do I specify emission fluxes for chemistry? Off-line chemical emissions (e.g. GEIA, EDGAR, ...) ..... FILESGET_LIST=« emis.tar » ! tar file containing all the emission files (CEMIS_PGD_FILE)

  12. 24 UTC (model end) 00 UTC 02 UTC (model start) 10800 s 03 UTC 70000 s 19,44 UTC 3600 s 01 UTC 02 UTC < RUN < 03 UTC: temporal interpolation between fields at 3600 s and 7200 s 03 UTC < RUN < 19.44 UTC : temporal interpolation between fields at 7200 s and 70000 s 19.44 UTC < RUN < 24 UTC : temporal interpolation between 70000 s and 3600 s (return to the first values, if no time values are given after 70000s) FILESGET_LIST=« emis.tar isopot.txt monopot.txt» 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: What happens if I do not provide emissions data at regular timestep? Example: You provide 3 emissions fields at 3600 s, 10800 s and 70000 s The model will interpolate as follow:

  13. &NAM_CH_EMIS_PGD ….. CEMIS_PGD_NAME(n-1) = ‘ISOPOT’, ! Name of parameters for use in flux calculations CEMIS_PGD_AREA(n-1) = ‘LAN’, ! Interpolation on all pgd domain… NEMIS_PGD_TIME(n-1) = -1, ! Négative values => no time interpolation CEMIS_PGD_FILE(n-1) = ‘isopot.txt’, ! Name of the file containing 2D map of parameters CEMIS_PGD_FILESTYPE = ‘ASCLLV’ , CEMIS_PGD_NAME(n) = ‘MONOPOT’, ! Name of parameters for use in flux calculations CEMIS_PGD_AREA(n) = ‘LAN’, ! Interpolation on all pgd domain… NEMIS_PGD_TIME(n) = -1, CEMIS_PGD_FILE(n) = ‘monopot.txt’, CEMIS_PGD_FILESTYPE = ‘ASCLLV’ FILESGET_LIST=« emis.tar isopot.txt monopot.txt» 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: How do I specify maps of parameters for use in surface flux calculations? On-line chemical emissions Example: You provide potential emission factors for isoprene (ISOPOT) and monoterpene (MONOPOT) that will be used for the calculation of biogenic fluxes at each time step during the model run. WHERE? in namelist PRE_PGD1.nam (surface field step) : HOW? ..... FILESGET_LIST=« emis.tar isopot.txt monopot.txt»

  14. WHERE? EXSEG1.nam splits into SURF1.nam: HOW? &NAM_CH_SURFn LCH_SURF_EMIS = .TRUE ., Switch for off-line chemistry emissions CCHEM_SURF_FILE = « MNHC_INPUT.nam » Input file containing chemistry parameters (see after) &NAM_CH_ISBAn CCH_DRY_DEP = « WES89 » , Wesely deposition scheme on biosphere LCH_BIO_FLUX=.TRUE. Switch for on-line biogenic emission &NAM_CH_WATFLUXn CCH_DRY_DEP = « WES89 » Wesely deposition scheme on lakes &NAM_CH_SEAFLUXn CCH_DRY_DEP = « WES89 » Wesely deposition scheme on sea &NAM_CH_TEBn CCH_DRY_DEP = « WES89 » Wesely deposition scheme on town &NAM_SURF_DST CEMISPARAM = « PaG77 » Parameterization type for on-line emission of dust aerosols &NAM_CHS_ORILAM LCH_AERO_FLUX=.TRUE., Switch for on-line aerosol emission - ORILAM XEMISRADIUSI = 0.005, First mode: emission mean radius in micrometers XEMISRADIUSJ= 0.1, 2nd mode: emission mean radius in micrometers XEMISSIGI= 1.89, First mode: emission standard deviation XEMISSIGJ=2.02, 2nd mode: emission standard deviation LCO2PM=.TRUE Switch for conversion of CO emission to BC/POM emission (in case no off-line emissions are provided for BC and POM precursors) . 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: How do I specify options for dry deposition and emissions?

  15. HOW? EMISUNIT ! Keyword for off-line emission unit GENEMIS emission ! Comment MIX ! Unit (here ppp m/s) AGREGATION ! Keyword for off-line emission agregation For ReLACS prognostic species ! Comment NO 0.8 NOX ! Flux of prognostic NO = 0.8 x prescribed flux of NOX NO2 0.2 NOX ! Flux of the prognostic NO2 = 0.2 x prescribed flux of NOX CO CO ! Flux of prognostic CO = prescribed flux of CO ALKA 1 HC3H03 1.3 HC8H30 …. ! Flux of prognostic ALKA = 1 x prescribed flux of HC3H03 + 1.3 x prescribed flux of HC8H30 END_AGREGATION 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: How can I specify the link between emitted and pronostic chemicals ? WHERE? MNHC_INPUT.nam

  16. HOW? SURFVALU ! Keyword for prescribed surface value (flux = surfvalu x exchgvel) value at the surface are set to zero expect DMS (unit are ppp) ! Comment 1 ! number of prognostic species with prescribed surf value (1X, A12,1X,F5.1) ! Format ‘DMS ‘ 1E-12 ! Name of prognostic variable and associated surf value EXCHGVEL ! Keyword for prescribed exchange velocity (flux = surfvalu x exchgvel) Exchange velocity in m/s ! Comment 1 ! Number of prognostic variable with prescribed exchange velocity (1X, A12,1X,F5.1) ! Format ‘O3 ‘ 0.004 ! Name of prognostic variable and corresponding exchange velocity SURF_RES ! Keyword for surface resistance (for use with Wesely dep scheme) Wesely surface resistance values (if none default values are used) ! Comment 1 ! Number of surface resistance (1X, A12,1X,F5.1) ! Format ‘LANDEXT ‘ 150. ! Keyword for surface resistance and corresponding value 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: How can I specify parameters for dry deposition ? WHERE? MNHC_INPUT.nam

  17. HOW? MASS_MOL ! Keyword for molecular mass Molecular mass (g/mol) ! Comment 1 ! Number of prognostic species for which molecular mass is prescribed (1X, A12,1X,F5.1) ! Format ‘O3 ‘ 48.00 ! Name of prognostic variable and corresponding molecular mass REA_FACT ! Keyword for reactivity factor Reactivity factor with biology ! Comment 1 ! Number of prognostic species (1X, A12,1X,F5.1) ! Format ‘O3 ‘ 1. ! Name of prognostic variable and corresponding reactivity factor HENRY_SP ! Keyword for Henry's law constant Henry specific constant ! Comment 1 ! Number of prognostic species (1X, A12,1X,E15.2,1X,F8.0) ! Format ‘O3 ‘ 1.1E-2 ‘ -2300. ! Name of prognostic variable and corresponding values 1. Surface (SURFEX) – Atmosphere (MESONH) coupling: How can I specify parameters for dry deposition ? WHERE? MNHC_INPUT.nam

  18. Where exactly is the coupling done in the code? modeln.f90 phys_paramn.f90 ground_paramn.f90 coupling_surf_atm.f90 1. Surface (SURFEX) – Atmosphere (MESONH) coupling

  19. 2. Initialisation of Meso-NH for real cases with chemistry: PREP_REAL_CASE How can I make the link with large scale fields for chemical species provided by a global model? So far, the global model used for the initialisation and the lateral boundary conditions of Meso-NH is the MOCAGE model. MOCAGE fields are provided in a grib format after the extracarpege step. WHERE? PRE_REAL1.nam &NAM_FILE_NAMES HATMFILE =‘ecmwf.OD.20060317.00’, HATMFILETYPE='GRIBEX', HCHEMFILE='mocage.GLOB22.20060317.00', HCHEMFILETYPE='GRIBEX', HPGDFILE ='pgd_ch_15km.nestRA', CINIFILE ='ESCRACM_1_2001062406' / &NAM_REAL_CONF NVERB=5, CEQNSYS='DUR' / &NAM_VER_GRID NKMAX=30, YZGRID_TYPE='FUNCTN', ZDZGRD=40., ZDZTOP=1500., ZZMAX_STRGRD=600., ZSTRGRD=10, ZSTRTOP=15. / &NAM_BLANK / MOC2MESONH transfer mocage/RACM variables (default values) 2 # NUMBER OF OPTIONAL GRIB VARIABLES (A4,1X,I5) O3 180 H2O2 181 Hints for Expert: If you have large-scale data provided in a different format, you can read these data with read_all_data_grib_case.f90. This option requires that you code your own reading procedure.

  20. 2. Initialisation of Meso-NH for real cases with ORILAM: PREP_REAL_CASE Desert Dust: no connexion with gaseous chemistry Chemical Aerosols: need gaseous chemistry coupled with schemes: RACM or ReLACS: Only inorganic aerosols CACM or ReLACS2: Inorganics + SOA WHERE? PRE_REAL1.nam &NAM_AERO_CONF LORILAM=.TRUE., LINITPM=.TRUE. XINIRADIUSI= 0.1, XINIRADIUSJ= 5.0, CRGUNIT = "MASS", XINISIGI = 1.6, XINISIGJ = 1.8 LDUST=.TRUE. / Hints for Expert: You can modify the initial value of aerosols in the coupling files by modifying the codes : ch_aer_reallfin.f90 : for aerosols coupled with gaseous chemistry dustlfin.f90 : for desert dust

  21. 3. Perform a Meso-NH simulation with chemistry: MESONH How can I change the reaction scheme? The default chemical scheme currently implemented in Meso-NH is the ReLacs scheme [Crassier et al.] with 37 chemical species and 128 reactions. This chemical scheme is in BASIC.f90. In order to change the chemical scheme, you must use a preprocessor m10that will convert a user friendly format (myscheme.chf) to the fortran code (myscheme.f90) myscheme.f90 myscheme.chf /begin_reactions/ K001=!ZRATES(:,001) :: NO2 --> O3P + NO K002=!ZRATES(:,002) :: O3 --> O1D + O2 K003=!ZRATES(:,003) :: O3 --> O3P + O2 /end reactions/ /begin_code/ TPK(:)%O1D=(TPK(:)%K002*PCONC(:,JP_O3))/(TPK(:)%K020*TPK(:)%N2+TPK(:)%K021*TPK(:)%O2+& &TPK(:)%K022*TPK(:)%H2O) /end code/ /begin_prognostic/ %%======= stable inorganic species ======= O3 H2O2 /end prognostic/ ... !! ######################## MODULE MODD_CH_M9_SCHEME !! ######################## IMPLICIT NONE INTEGER, PARAMETER :: NEQ = 37 ! number of prognostic chemical species INTEGER, PARAMETER :: NREAC = 128 ! number of chemical reactions INTEGER, PARAMETER :: NMETEOVARS = 10 ! number of meteorological variables INTEGER, PARAMETER :: NNONZEROTERMS = 550 ! number of non-zero terms returned by CH_TERMS CHARACTER(LEN=32), DIMENSION(NEQ), TARGET :: CNAMES ! names of the species CHARACTER(LEN=32), DIMENSION(NREAC), TARGET :: CREACS ! the reaction rate names CHARACTER(LEN=256), DIMENSION(NREAC), TARGET :: CFULLREACS ! the full reactions ! TYPE CCSTYPE ! reaction rates and auxiliary variables REAL :: K001,K002,K003 ... m10 > m10 myscheme.chf > Compile the new fortran routine in your personal library

  22. 3. Perform a Meso-NH simulation with chemistry: MESONH How can I initialize the chemical fields without a global model? If you don't have large scale 3D fields to initialize your chemical species, Meso-NH allows you to prescribe horizontal homogeneous fields (ch_field_valuesn.f90). WHERE? MNHC_INPUT.nam HOW? FORMPROF ! Keyword for normalised vertical profile form different norm-profile ! Comment 2 3 ! Number of vertical profiles (n=2) and vertical levels (n=3) (F6.0,F7.2,F7.2) ! Format 0. 0.62 1.00 ! Normalised vertical profile (first row gives the altitudes, 1000. 1.08 0.10 ! second row gives the normalised values as function of altitude, 9000. 2.25 0.01 ! third row gives the normalised values as function of altitude) NORMINIT ! Keyword for the initial value initial value (ppp) ! Comment MIX ! Choice of units (here mol/mol) 2 ! Number of prognostic species (1X,A12,1X,E12.2) ! Format 'O3 ' 40.00E-09 ! Name of prognostic species 1 and corresponding initial value 'H2O2 ' 5.60E-12 ! Name of prognostic species 2 and corresponding initial value PROFASSO ! Keyword for the correspondance between prognostic species and profiles norm-profiles to be associated ! Comment 2 ! Number of prognostic species (1X,A12,1X,I3) ! Format 'O3 ' 1 ! Name of prognostic species 1 and corresponding profile (FORMPROF) 'H2O2 ' 2 ! Name of prognostic species 2 and corresponding profile (FORMPROF) e.g. O3 initial profile is constructed with the first profile provided in FORMPROF multiplied by the value given in NORMINIT (40 ppbv)

  23. 3. Perform a Meso-NH simulation with chemistry: MESONH What are the options for a run with chemistry? WHERE? EXSEG$n.nam HOW? &NAM_CONFn NSV_USER = 0 / !Warning: Scalar variables needed for chemistry are automatically set by the model. Do not include the number of chemical species here but only the passive tracers that you want to have IN ADDITION to chemistry. &NAM_PARAM_CONVECTn LCHTRANS = TRUE / ! Switch for the convective transport of chemical species &NAM_CH_MNHCn LUSECHEM = TRUE, ! Switch to activate chemistry LCH_INIT_FIELD = FALSE ! Switch to initialize chemical species with homogeneous fields (must be set to FALSE if initialisation via MOCAGE or other global model) LCH_SURFACE_FLUX = TRUE ! Switch to active gaseous surface flux LCH_CONV_SCAV = TRUE ! Switch for scavenging by convective precipitation (LCHTRANS must be set to true) CCHEM_INPUT_FILE = 'MNHC_INPUT.nam' ! Name of the chemistry file CCH_TDISCRETIZATION = 'SPLIT' ! temporal discretization for chemical solver NCH_SUBSTEPS = 2 ! number of substeps for the chemical solver LCH_TUV_ONLINE = FALSE ! Switch for online photolysis rate calculation (DO NOT ACTIVATE IN 3D) CCH_TUV_LOOKUP = 'PHOTO.TUV39'! look-up table for off-line photolysis rate calculation CCH_TUV_CLOUDS = 'CHAN' ! Cloud correction for photolysis rates XCH_TUV_ALBNEW = -1 ! Prescribed surface albebo (NOT RELEVANT IN 3D) XCH_TUV_DOBNEW = -1 ! Prescribed ozone dobson column (NOT RELEVANT IN 3D) XCH_TUV_TUPDATE = 600 ! Update frequency for photolysis rate calculation (s) CCH_VEC_METHOD = 'MAX' ! Type of vectorization mask NCH_VEC_LENGHT = 1000 ! number of point for the MAX option

  24. 3. Perform a Meso-NH simulation with chemistry: MESONH How can I change the options of the stiff solver for chemistry? There are currently 6 chemical solvers implemented: SIS, LINSSA, CRANCK, QSSA, EXQSSA, SVODE. Each of them has control parameters. The most widely used in the Meso-NH community is the EXQSSA solver. WHERE? EXSEG$n.nam HOW? &NAM_CH_SOLVERn CSOLVER = "EXQSSA", ! name of the solver XSLOW = 100., ! slow species, lifetime > XSLOW * timestep XFAST = 0.1, ! fast species, lifetime < XFAST * timestep XDTMAX = 20., ! maximal allowed timestep for EXQSSA XDTMIN = 10., ! minimal allowed timestep for EXQSSA XDTFIRST = 10., ! timestep for first integration step of EXQSSA NQSSAITER = 1 / ! number of iterations in QSSA For the other solvers, please read the user guide documentation. Other options are also listed in modd_ch_solvern.f90

  25. 3. Perform a Meso-NH simulation with aerosols: How can I change the options of the ORILAM scheme? WHERE? EXSEG$n.nam &NAM_CH_ORILAM LORILAM = .TRUE., ! Switch to active ORILAM scheme LVARSIGI = .FALSE., ! Switch for variable Standard deviation of mode I (not in 3D) LVARSIGJ = .FALSE., ! Switch for variable Standard deviation of mode J (not in 3D) LSEDIMAERO = .TRUE., ! Switch to active aerosol sedimentation XN0IMIN = 5., ! Aerosols number minimum values – mode I XN0JMIN = .1, ! Aerosols number minimum values – mode J XINIRADIUSI= 0.1, ! Aerosols mean radius initial value in µm - mode I XINIRADIUSJ= 5., ! Aerosols mean radius initial value in µm - mode J XINISIGI = 1.6, ! Standard deviation for mode I XINISIGJ = 1.8, ! Standard deviation for mode J CRGUNIT = "MASS", ! Type of mean Radius (defined in mass or number) CMINERAL = "EQSAM", ! Thermodynamic inorganic equilibrium scheme (EQSAM, ! ISPIA, ARES, NARES) see book 3 CORGANIC = "MPMPO", ! Thermodynamic SOA equilibrium scheme (MPMPO, PUN) CNUCLEATION = “KULMALA" / ! Name of nucleation scheme

  26. 3. Perform a Meso-NH simulation with aerosols: How can I change the options of the DUST scheme? WHERE? EXSEG$n.nam HOW? &NAM_DUST LDUST = .TRUE., ! Switch to active desert dust scheme LDEPOS=.TRUE.,.TRUE.,.TRUE…., ! Switch for explicit dust-cloud rain interactions (scavenging, aqueous transfer) ! Use it only after the masdev48 MesoNH version LVARSIG = .FALSE., ! Switch to active variable standard deviation (not in 3D) LSEDIMDUST = .FALSE., ! Switch to active dust sedimentation NMODE_DST=3 / ! Number of dust modes you need (max 3)

  27. 4.Compute diagnostics after a Meso-NH simulation with chemistry: DIAG WHERE? DIAG1.nam HOW? &NAM_DIAG LCHEMDIAG = T / ! Switch to activate the chemical variables After the DIAG program: • chemical species appear with a suffix M (e.g. “O3M”, “H2O2M”, ...) • all chemical species are given in ppbv Expert: Any new diagnostics concerning the chemistry can be added to write_lfifm1_for_diag_supp.f90

  28. On-going works Lightning NOx parameterization Simplified microphysical scheme (scavenging)

More Related