| 59 | [[BR]] |
| 60 | [[BR]] |
| 61 | == Utiliser LMDZINCA_v3 == |
| 62 | '''LMDZINCA_AER avec couplage et calcul online des aérosols ''' |
| 63 | {{{ |
| 64 | config_inca=aero |
| 65 | aerosol_couple=y |
| 66 | ok_ade=y |
| 67 | ok_aie=y |
| 68 | |
| 69 | Dans ce cas là les flags flag_aerosol et new_aod sont inutiles |
| 70 | }}} |
| 71 | |
| 72 | |
| 73 | '''LMDZINCA_AER avec couplage offline et lecture des masses d'aérosols''' |
| 74 | {{{ |
| 75 | config_inca=aero |
| 76 | aerosol_couple=n |
| 77 | ok_ade=y |
| 78 | ok_aie=y |
| 79 | new_aod=y |
| 80 | flag_aerosol= .... ce que l'on veut |
| 81 | }}} |
| 82 | |
| 83 | |
| 84 | '''LMDZ avec couplage offline et lecture des masses d'aérosols''' |
| 85 | {{{ |
| 86 | config_inca=none |
| 87 | aerosol_couple=n |
| 88 | ok_ade=y |
| 89 | ok_aie=y |
| 90 | new_aod=y |
| 91 | flag_aerosol= .... ce que l'on veut |
| 92 | }}} |
| 93 | |
| 94 | [[BR]] |
| 95 | [[BR]] |
| 96 | == Compléter lmdz.card == |
| 97 | Si vous voulez travailler dans le mode offline vous devez indiquer en entrée d'une simulation les fichiers de masses. |
| 98 | {{{ |
| 99 | dans lmdz.card : |
| 100 | |
| 101 | ListNonDel= (${R_BC}/CHM/LMDZINCA/${RESOL_ATM}/limit.nc, limit.nc)\ |
| 102 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/so4.run_AEROCOM96x73dim.nc ,SO4.run2000.cdf )\ |
| 103 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/ASSO4M.run.nat_AEROCOM96x73.nc ,SO4.run.nat.cdf )\ |
| 104 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/AIBCM.run2000_AEROCOM96x73.nc ,AIBCM.run2000.cdf )\ |
| 105 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/AIBCM.run.nat_inca96x73.nc ,AIBCM.run.nat.cdf )\ |
| 106 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/ASBCM.run2000_AEROCOM96x73.nc ,ASBCM.run2000.cdf )\ |
| 107 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/ASBCM.run.nat_inca96x73.nc ,ASBCM.run.nat.cdf )\ |
| 108 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/AIPOMM.run2000_AEROCOM96x73.nc ,AIPOMM.run2000.cdf )\ |
| 109 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/AIPOMM.run.nat_inca96x73.nc ,AIPOMM.run.nat.cdf )\ |
| 110 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/ASPOMM.run2000_AEROCOM96x73.nc ,ASPOMM.run2000.cdf )\ |
| 111 | (/workdir/cont003/p86cozic/BRANCHE_DEBRANCHE/TEST_DEBRANCHE/TEST_FILES/ASPOMM.run.nat_inca96x73.nc ,ASPOMM.run.nat.cdf ) |
| 112 | }}} |
| 113 | Attention par défaut le modÚle LMDZ s'attend à avoir deux fichiers pour le présent et pour chaque aérosol. Si ce n'est pas le cas (comme dans l'exemple ci-dessus), il faut le spécifier dans |
| 114 | readaerosol.F90 : '''lonlyone=.true.''' |
| 115 | |
| 116 | [[BR]] |
| 117 | [[BR]] |
| 118 | == Comment rajouter un aérosol dans le cas offline == |
| 119 | Nous n'allons voir ici que le cas où l'on veut rajouter un aérosol prédéfinit. (Par exemple les Dust) |
| 120 | |
| 121 | * Il faut définir une valeur de flag_aerosol pour ce nouvel aérosol (par exemple flag_aerosol=7) |
| 122 | * Dans aerosol_optic il faut repérer à quel numéro correspond cet aérosol (dans notre exemple : 6) |
| 123 | || '''Numéro''' || '''Aérosol''' || |
| 124 | || 1 || SSSSM || |
| 125 | || 2 || ASSSM || |
| 126 | || 3 || ASBCM || |
| 127 | || 4 || ASPOMM || |
| 128 | || 5 || ASSO4M || |
| 129 | || 6 || CIDUSTM|| |
| 130 | || 7 || AIBCM || |
| 131 | || 8 || AIPOMM || |
| 132 | |
| 133 | * Dans aerosol_optic il faut rajouter le cas de cet aérosol (en n'oubliant pas de définir les variables nécessaires, |
| 134 | ici cidust et cidust_pi). |
| 135 | {{{ |
| 136 | CALL readaerosol(numéro, rjourvrai,debut,varmass) |
| 137 | }}} |
| 138 | Dans notre exemple : |
| 139 | {{{ |
| 140 | |
| 141 | IF ( flag_aerosol .EQ. 7 ) THEN |
| 142 | |
| 143 | CALL readaerosol(6,rjourvrai, debut,cidust) |
| 144 | CALL readaerosol_preind(6,rjourvrai,debut,cidust_pi ) |
| 145 | |
| 146 | maerosol(:,:) = maerosol(:,:) + cidust |
| 147 | maerosol_pi(:,:) = maerosol_pi(:,:) + cidust_pi |
| 148 | ENDIF |
| 149 | |
| 150 | }}} |
| 151 | * Dans aerosol_optic il faut compléter la variable m_allaer |
| 152 | {{{ |
| 153 | m_allaer(:,:,1) = 0. ! SSSSM || CSSSM |
| 154 | m_allaer(:,:,2) = 0. ! ASSSM |
| 155 | m_allaer(:,:,3) = bcsol(:,:) ! ASBCM |
| 156 | m_allaer(:,:,4) = pomsol(:,:) ! ASPOMM |
| 157 | m_allaer(:,:,5) = sulfate(:,:) ! ASSO4M || CSSO4M |
| 158 | m_allaer(:,:,6) = cidust(:,:) ! CIDUSTM |
| 159 | m_allaer(:,:,7) = bcins(:,:) ! AIBCM |
| 160 | m_allaer(:,:,8) = pomins(:,:) ! AIPOMM |
| 161 | }}} |
| 162 | |
| 163 | A partir de là le code prendra en compte ce nouvel aérosol et fera les calculs nécessaires. |