| 1 | ########################################################################### |
|---|
| 2 | ### RUN.DEF ### RUN.DEF ### RUN.DEF ### RUN.DEF ### RUN.DEF ### RUN.DEF ### |
|---|
| 3 | ########################################################################### |
|---|
| 4 | ### A MERGED VERSION TO BE USED WITH OLD OR RECENT LMDZ CORE |
|---|
| 5 | ### i.e. compiles gcm.def+run.def in LMDZ5 with run.def in old planeto LMDZ |
|---|
| 6 | ### (*) indicates same parameters in old and recent LMDZ core |
|---|
| 7 | ########################################################################### |
|---|
| 8 | |
|---|
| 9 | ########################################################################### |
|---|
| 10 | ### NUMERICAL INTEGRATIONS |
|---|
| 11 | ########################################################################### |
|---|
| 12 | ### nday --> number of days of integration (*) |
|---|
| 13 | ### iperiod --> period for the Matsuno step (in dynamical steps) (*) |
|---|
| 14 | ### day_step --> number of steps per day (multiple of iperiod) (*) |
|---|
| 15 | ### purmats --> temporal integration: Matsuno or Matsuno-leapfrog? (*) |
|---|
| 16 | ### grireg --> regular grid or not (*) |
|---|
| 17 | ### adjust --> flag to activate load optimization |
|---|
| 18 | ### use_filtre_fft --> flag to activate FFT filtering |
|---|
| 19 | ########################################################################### |
|---|
| 20 | nday = 25000 |
|---|
| 21 | iperiod = 5 |
|---|
| 22 | day_step = 140 |
|---|
| 23 | purmats = .false. |
|---|
| 24 | grireg = .true. |
|---|
| 25 | adjust = n |
|---|
| 26 | use_filtre_fft = n |
|---|
| 27 | |
|---|
| 28 | ########################################################################### |
|---|
| 29 | ### WHAT RELATES TO PHYSICS |
|---|
| 30 | ########################################################################### |
|---|
| 31 | ### iphysiq --> period for calling physics (in dynamical steps) (*) |
|---|
| 32 | ### ecritphy --> frequency for outputs in diagfi (in dynamical steps) (*) |
|---|
| 33 | ### planet_type --> the planet |
|---|
| 34 | ### disvert_type --> type of vertical coordinates (2 for planeto) |
|---|
| 35 | ### hybrid --> use hybrid coordinates or not? (*) |
|---|
| 36 | ### iflag_phys=0 --> no physics (e.g. shallow water) |
|---|
| 37 | ### iflag_phys=1 --> physics (e.g. phylmd) |
|---|
| 38 | ### iflag_phys=2 --> simple newtonian relaxation |
|---|
| 39 | ### physic --> flag with or without physics (*) |
|---|
| 40 | ########################################################################### |
|---|
| 41 | iphysiq = 140 |
|---|
| 42 | ecritphy = 7000 |
|---|
| 43 | planet_type = generic |
|---|
| 44 | disvert_type = 2 |
|---|
| 45 | hybrid = .true. |
|---|
| 46 | iflag_phys = 1 |
|---|
| 47 | physic = .true. |
|---|
| 48 | |
|---|
| 49 | ########################################################################### |
|---|
| 50 | ### INITIALIZATION and NUDGING |
|---|
| 51 | ########################################################################### |
|---|
| 52 | ### read_start --> with or without start files ? |
|---|
| 53 | ### (without: initialization by iniacademic) |
|---|
| 54 | ### raz_date=0 --> use the date in start file |
|---|
| 55 | ### raz_date=1 --> erase the date and start from scratch |
|---|
| 56 | ### ok_guide --> flag for nudging towards winds (needs relax.nc) |
|---|
| 57 | ### facwind --> time constant for relaxation |
|---|
| 58 | ### 5.e8 medium 1.e7-5.e6 strong 1.e6 very fast |
|---|
| 59 | ########################################################################### |
|---|
| 60 | read_start = y |
|---|
| 61 | raz_date = 0 |
|---|
| 62 | ok_guide = n |
|---|
| 63 | facwind = 1.e6 |
|---|
| 64 | |
|---|
| 65 | ########################################################################### |
|---|
| 66 | ### HORIZONTAL DISSIPATION |
|---|
| 67 | ########################################################################### |
|---|
| 68 | ### dissip_period --> period call to dissipation (in dynamical steps) |
|---|
| 69 | ### - must be a multiple of iperiod |
|---|
| 70 | ### - 0 means automatic computation |
|---|
| 71 | ### - use idissip instead if old LMDZ core (idissip ignored in LMDZ5) |
|---|
| 72 | ### dissip_fac_mid --> enhancement factor in middle atmosphere |
|---|
| 73 | ### - set to 1 to prevent dissipation enhancement |
|---|
| 74 | ### lstardis --> star or not star dissipation operator (*) |
|---|
| 75 | ### nitergdiv --> number of iterations for gradiv operator (*) |
|---|
| 76 | ### nitergrot --> number of iterations for nxgradrot operator (*) |
|---|
| 77 | ### niterh --> number of iterations for divgrad operator (*) |
|---|
| 78 | ### tetagdiv --> dissipation timescale of smallest wvl: u,v (gradiv) (*) |
|---|
| 79 | ### tetagrot --> dissipation timescale of smallest wvl: u,v (nxgradrot) (*) |
|---|
| 80 | ### tetatemp --> dissipation timescale of smallest wvl: h (divgrad) (*) |
|---|
| 81 | ### coefdis --> coefficient for gamdissip (*) |
|---|
| 82 | ########################################################################### |
|---|
| 83 | dissip_period = 5 |
|---|
| 84 | dissip_fac_mid = 2 |
|---|
| 85 | lstardis = .true. |
|---|
| 86 | nitergdiv = 1 |
|---|
| 87 | nitergrot = 2 |
|---|
| 88 | niterh = 2 |
|---|
| 89 | tetagdiv = 5400. |
|---|
| 90 | tetagrot = 7200. |
|---|
| 91 | tetatemp = 7200. |
|---|
| 92 | |
|---|
| 93 | ########################################################################### |
|---|
| 94 | ### ENHANCEMENT OF HORIZONTAL DISSIPATION IN UPPERMOST LEVELS |
|---|
| 95 | ########################################################################### |
|---|
| 96 | ### - not activated if ok_strato=n |
|---|
| 97 | ### - dissip_fac_up --> enhancement factor |
|---|
| 98 | ### - dissip_deltaz --> altitude range of transition (km) |
|---|
| 99 | ### - dissip_hdelta --> scale height at transition (km) |
|---|
| 100 | ### - dissip_pupstart --> pressure at bottom of transition region (Pa) |
|---|
| 101 | ########################################################################### |
|---|
| 102 | ok_strato = y |
|---|
| 103 | dissip_fac_up = 2 |
|---|
| 104 | dissip_deltaz = 150. |
|---|
| 105 | dissip_hdelta = 50. |
|---|
| 106 | dissip_pupstart = 50. |
|---|
| 107 | |
|---|
| 108 | ########################################################################### |
|---|
| 109 | ### DAMPING ("SPONGE") LAYER AT MODEL TOP |
|---|
| 110 | ########################################################################### |
|---|
| 111 | ### iflag_top_bound=0 for no sponge |
|---|
| 112 | ### iflag_top_bound=1 for sponge over 4 topmost layers |
|---|
| 113 | ### iflag_top_bound=2 for sponge from top to ~1% of top layer pressure |
|---|
| 114 | ### mode_top_bound=0 for no sponge |
|---|
| 115 | ### mode_top_bound=1 for u,v --> 0 |
|---|
| 116 | ### mode_top_bound=2 for u,v --> zonal mean |
|---|
| 117 | ### mode_top_bound=3 for u,v,h --> zonal mean |
|---|
| 118 | ### tau_top_bound --> damping frequency at last layer |
|---|
| 119 | ### e-5 medium / e-4 strong yet reasonable / e-3 very strong |
|---|
| 120 | ########################################################################### |
|---|
| 121 | iflag_top_bound = 2 |
|---|
| 122 | mode_top_bound = 1 |
|---|
| 123 | tau_top_bound = 1.e-4 |
|---|
| 124 | |
|---|
| 125 | ########################################################################### |
|---|
| 126 | ### OUTPUT FROM DYNAMICS |
|---|
| 127 | ########################################################################### |
|---|
| 128 | ### prt_level --> level of control prints (1-10) |
|---|
| 129 | ### ok_dyn_ins --> flag instantaneous outputs (dyn_hist.nc) |
|---|
| 130 | ### iecri --> frequency of instantaneous outputs (in dynamical steps) |
|---|
| 131 | ### ok_dyn_ave --> flag averaged outputs (dyn_hist_ave.nc) |
|---|
| 132 | ### periodav --> period of output of averages in dynamics (in days) |
|---|
| 133 | ### ok_dynzon --> flag outputs dynzon |
|---|
| 134 | ### NB: iecri and periodav used to be in old LMDZ core although useless |
|---|
| 135 | ### iconser --> frequency of outputs of control variables (in dyn steps)(*) |
|---|
| 136 | ########################################################################### |
|---|
| 137 | prt_level = 1 |
|---|
| 138 | ok_dyn_ins = n |
|---|
| 139 | iecri = 480 |
|---|
| 140 | ok_dyn_ave = n |
|---|
| 141 | periodav = 1 |
|---|
| 142 | ok_dynzon = n |
|---|
| 143 | iconser = 120 |
|---|
| 144 | |
|---|
| 145 | ########################################################################### |
|---|
| 146 | ### ZOOMED GRID (same parameters in old and recent LMDZ core) |
|---|
| 147 | ########################################################################### |
|---|
| 148 | ### clon --> longitude of center of zoom (deg) (*) |
|---|
| 149 | ### clat --> latitude of center of zoom (deg) (*) |
|---|
| 150 | ### grossismx --> zoom factor in longitude (*) |
|---|
| 151 | ### grossismy --> zoom factor in latitude (*) |
|---|
| 152 | ### dzoomx --> longitude extent of zoom zone (fraction of total area) (*) |
|---|
| 153 | ### dzoomy --> latitude extent of zoom zone (fraction of total area) (*) |
|---|
| 154 | ### taux --> "stifness" of zoom in longitude (*) |
|---|
| 155 | ### tauy --> "stifness" of zoom in latitude (*) |
|---|
| 156 | ### fxyhypb --> f(y) hyperbolic (T) or sinusoidal (F) (*) |
|---|
| 157 | ### ysinus --> f(y) = sin(lat) (T) or lat (F) (*) |
|---|
| 158 | ########################################################################### |
|---|
| 159 | clon = 0. |
|---|
| 160 | clat = 0. |
|---|
| 161 | grossismx = 1. |
|---|
| 162 | grossismy = 1. |
|---|
| 163 | dzoomx = 0. |
|---|
| 164 | dzoomy = 0. |
|---|
| 165 | taux = 2. |
|---|
| 166 | tauy = 2. |
|---|
| 167 | fxyhypb = .false. |
|---|
| 168 | ysinus = .false. |
|---|
| 169 | |
|---|
| 170 | ########################################################################### |
|---|
| 171 | ### LEFTOVERS |
|---|
| 172 | ### calend=earth_360d ## specific calendar |
|---|
| 173 | ### resetvarc=n ## reinit des variables de controle |
|---|
| 174 | ### iflag_trac=0 ## avec ou sans traceurs |
|---|
| 175 | ### dayref=10120 ## initial date |
|---|
| 176 | ### anneeref=2000 ## year of initial state |
|---|
| 177 | ### --- old version of spong layer |
|---|
| 178 | ## Avec sponge layer |
|---|
| 179 | # callsponge = .true. |
|---|
| 180 | ## Sponge: mode0(u=v=0), mode1(u=umoy,v=0), mode2(u=umoy,v=vmoy) |
|---|
| 181 | # mode_sponge= 2 |
|---|
| 182 | ## Sponge: hauteur de sponge (km) |
|---|
| 183 | # hsponge= 50 |
|---|
| 184 | ## Sponge: tetasponge (secondes) |
|---|
| 185 | # tetasponge = 50000 |
|---|
| 186 | |
|---|
| 187 | ########################################################################### |
|---|
| 188 | ### INCLUDE OTHER DEF FILES (physics, specific settings, etc...) |
|---|
| 189 | ### -- the GCM only read run.def |
|---|
| 190 | ########################################################################### |
|---|
| 191 | INCLUDEDEF=callphys.def |
|---|
| 192 | INCLUDEDEF=modif.def |
|---|