Changeset 3772
- Timestamp:
- May 21, 2025, 6:37:40 PM (3 weeks ago)
- Location:
- trunk/LMDZ.PLUTO
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.PLUTO/deftank/xios/context_pcm_physics.xml
r3688 r3772 10 10 11 11 </domain_definition> 12 13 <domain_definition>14 <domain id="dom_64_48" type="rectilinear" ni_glo="64" nj_glo="48" >15 <generate_rectilinear_domain/>16 <interpolate_domain order="1"/>17 </domain>18 19 <domain id="dom_96_95" type="rectilinear" ni_glo="96" nj_glo="95" >20 <generate_rectilinear_domain/>21 <interpolate_domain order="1"/>22 </domain>23 24 <domain id="dom_144_142" type="rectilinear" ni_glo="144" nj_glo="142" >25 <generate_rectilinear_domain/>26 <interpolate_domain order="1"/>27 </domain>28 29 <domain id="dom_512_360" type="rectilinear" ni_glo="512" nj_glo="360" >30 <generate_rectilinear_domain/>31 <interpolate_domain order="1"/>32 </domain>33 34 <domain id="dom_720_360" type="rectilinear" ni_glo="720" nj_glo="360" >35 <generate_rectilinear_domain/>36 <interpolate_domain order="1"/>37 </domain>38 39 <domain id="dom_128_96" type="rectilinear" ni_glo="128" nj_glo="96" >40 <generate_rectilinear_domain/>41 <interpolate_domain order="1"/>42 </domain>43 44 <domain id="dom_256_192" type="rectilinear" ni_glo="256" nj_glo="192" >45 <generate_rectilinear_domain/>46 <interpolate_domain order="1"/>47 </domain>48 49 <domain id="dom_out" domain_ref="dom_128_96"/>50 </domain_definition>51 <!-- <domain_definition src="./domain_def.xml"/> -->52 12 53 13 <!-- Definition of vertical axes … … 99 59 <axis axis_ref="altitude" /> 100 60 </grid> 61 <grid id="grid_soil"> 62 <domain domain_ref="dom_glo" /> 63 <axis axis_ref="soil_layers" /> 64 </grid> 101 65 <grid id="grid_2D"> 102 66 <domain domain_ref="dom_glo" /> … … 112 76 <axis axis_ref="VI_Wavenumber"/> 113 77 </grid> 114 <!-- grid for interpolated lon-lat outputs -->115 78 <!-- to output scalars --> 116 79 <grid id="scalarpoint" > 117 80 <scalar scalar_ref="scalar" /> 118 81 </grid> 119 <grid id=" altitude_grid" >120 <axis axis_ref="altitude"/>82 <grid id="controle_grid" > 83 <axis axis_ref="controle_axe"/> 121 84 </grid> 85 86 <!-- grid for interpolated lon-lat outputs --> 122 87 <!-- output grids --> 123 88 <grid id="grid_3D_out"> … … 127 92 <grid id="grid_2D_out"> 128 93 <domain domain_ref="dom_out" /> 94 </grid> 95 <grid id="grid_soil_out"> 96 <domain domain_ref="dom_out" /> 97 <axis axis_ref="soil_layers" /> 129 98 </grid> 130 99 <!--added for diagspecIR--> … … 146 115 </grid_definition> 147 116 117 <!-- various predefined grids to output onto --> 118 <domain_definition> 119 <domain id="dom_64_48" type="rectilinear" ni_glo="64" nj_glo="48" > 120 <generate_rectilinear_domain/> 121 <interpolate_domain order="1"/> 122 </domain> 123 124 <domain id="dom_96_95" type="rectilinear" ni_glo="96" nj_glo="95" > 125 <generate_rectilinear_domain/> 126 <interpolate_domain order="1"/> 127 </domain> 128 129 <domain id="dom_144_142" type="rectilinear" ni_glo="144" nj_glo="142" > 130 <generate_rectilinear_domain/> 131 <interpolate_domain order="1"/> 132 </domain> 133 134 <domain id="dom_512_360" type="rectilinear" ni_glo="512" nj_glo="360" > 135 <generate_rectilinear_domain/> 136 <interpolate_domain order="1"/> 137 </domain> 138 139 <domain id="dom_720_360" type="rectilinear" ni_glo="720" nj_glo="360" > 140 <generate_rectilinear_domain/> 141 <interpolate_domain order="1"/> 142 </domain> 143 144 <domain id="dom_128_96" type="rectilinear" ni_glo="128" nj_glo="96" > 145 <generate_rectilinear_domain/> 146 <interpolate_domain order="1"/> 147 </domain> 148 149 <domain id="dom_256_192" type="rectilinear" ni_glo="256" nj_glo="192" > 150 <generate_rectilinear_domain/> 151 <interpolate_domain order="1"/> 152 </domain> 153 154 <!-- set dom_out to any of the reference grid above, 155 or dom_glo to output on native grid --> 156 <domain id="dom_out" domain_ref="dom_128_96"/> 157 158 </domain_definition> 159 160 148 161 <!-- Definition of model variables --> 149 162 <field_definition src="./field_def_physics.xml" /> -
trunk/LMDZ.PLUTO/deftank/xios/field_def_physics.xml
r3678 r3772 58 58 unit="cm-1"/> 59 59 </field_group> 60 60 61 <!-- 2D variables --> 61 62 <field_group id="fields_2D" grid_ref="grid_2D"> … … 80 81 unit="K" /> 81 82 83 <field id="capcal" 84 long_name="Surface Heat Capacity" 85 unit="W.s m-2 K-1" /> 86 <field id="fluxrad" 87 long_name="fluxrad" 88 unit="W m-2" /> 89 82 90 <!-- Tracers --> 83 91 <field id="n2_surf" … … 218 226 long_name="Atmospheric temperature" 219 227 unit="K" /> 220 <field id="tsoil"221 long_name="Soil Temperature"222 unit="K" />223 224 228 <field id="teta" 225 229 long_name="Potential temperature" … … 300 304 long_name="tendancy T adj" 301 305 unit="K s-1" /> 306 302 307 <!--Tracers--> 303 308 <field id="n2" … … 341 346 unit="K s-1" /> 342 347 343 344 348 <field id="zrho_ch4" 345 349 long_name="zrho_ch4" … … 394 398 long_name='haze_reff' 395 399 unit='m' /> 396 </field_group> 400 401 <field id="dtauv_01" 402 long_name="Layer optical thickness attenuation in VI band" 403 unit="" /> 404 <field id="dtauv_23" 405 long_name="Layer optical thickness attenuation in VI band" 406 unit="" /> 407 <field id="dtaui_01" 408 long_name="Layer optical thickness attenuation in IR band" 409 unit="" /> 410 <field id="dtaui_17" 411 long_name="Layer optical thickness attenuation in IR band" 412 unit="" /> 413 414 </field_group> 415 416 417 <field_group id="fields_soil" grid_ref="grid_soil"> 418 419 <field id="tsoil" 420 long_name="Soil Temperature" 421 unit="K" /> 422 <field id="therm_inertia" 423 long_name="Soil Thermal Inertia" 424 unit="S.I." /> 425 426 </field_group> 427 397 428 398 429 <!--Spectral IR 3D variables--> -
trunk/LMDZ.PLUTO/deftank/xios/file_def_physics.xml
r3694 r3772 15 15 <file id="histins" 16 16 name="Xhistins" 17 output_freq=" 400ts"18 sync_freq=" 1200ts"17 output_freq="20ts" 18 sync_freq="20ts" 19 19 type="one_file" 20 20 time_units="days" … … 29 29 </field_group> 30 30 31 <field_group operation="once"32 grid_ref="altitude_grid"33 freq_op="1ts">34 <field field_ref="aps"/>35 <field field_ref="bps"/>36 </field_group>37 31 <!--<field_group domain_ref="dom_glo"> --> 38 32 <!--<field_group grid_ref="grid_2D_out">--> 39 33 <!-- toggle domain_ref to output on native or lon-lat domain --> 34 <field_group grid_ref="controle_grid" operation="once" enabled="true" freq_op="1ts"> 35 <field field_ref="controle" /> 36 </field_group> 40 37 41 38 <!-- VARS 2D --> … … 44 41 freq_op="1ts"> 45 42 <field field_ref="area" operation="once" /> 46 <field field_ref="phisfi" operation="once" />47 43 <field field_ref="ps" enabled="true" /> 44 <field field_ref="tsurf" enabled="true" /> 45 <field field_ref="ALB" enabled="true" /> 46 <field field_ref="emis" enabled="true" /> 48 47 <field field_ref="ISR" enabled="true" /> 49 48 <field field_ref="OLR" enabled="true" /> 50 49 <field field_ref="ASR" enabled="true" /> 51 <field field_ref="emis" enabled="true" />52 <field field_ref="tsurf" enabled="true" />53 50 <field field_ref="n2_surf" enabled="true" /> 54 51 <field field_ref="ch4_ice_surf" enabled="true" /> 55 52 <field field_ref="co_ice_surf" enabled="true" /> 56 <field field_ref="haze_col" enabled="true" />57 58 <!--59 <field field_ref="n2_iceflux" enabled="true" />60 <field field_ref="ch4_iceflux" enabled="true" />61 <field field_ref="ch4_ice_col" enabled="true" />62 <field field_ref="ch4_gas_col" enabled="true" />63 <field field_ref="co_iceflux" enabled="true" />64 <field field_ref="co_ice_col" enabled="true" />65 <field field_ref="co_gas_col" enabled="true" />66 <field field_ref="haze_surf" enabled="true" />67 <field field_ref="prec_haze_col" enabled="true" />68 <field field_ref="vmr_ch4" enabled="true" />69 <field field_ref="vmr_co" enabled="true" />70 -->71 72 53 </field_group> 73 54 … … 86 67 <field field_ref="co_ice" /> 87 68 <field field_ref="haze" /> 88 <field field_ref="prec_haze" />89 69 90 70 <!--field field_ref="h2o_vap" /> … … 95 75 </field_group> 96 76 77 <field_group operation="instant" 78 grid_ref="grid_soil_out" 79 freq_op="1ts"> 80 <field field_ref="tsoil" /> 81 </field_group> 82 83 97 84 <!--</field_group>--> 98 85 </file> 86 99 87 <!--XspecIR--> 100 88 <file id="specIR" … … 123 111 </field_group> 124 112 </file> 113 125 114 <!--XspecVI--> 126 115 <file id="specVI" … … 129 118 type="one_file" 130 119 time_units="days" 131 enabled=" true">120 enabled="false"> 132 121 <!--Var 1D --> 133 122 <field_group operation="instant" -
trunk/LMDZ.PLUTO/libf/phypluto/iniwrite.F
r3184 r3772 2 2 3 3 use comsoil_h, only: mlayer, nsoilmx 4 USE comcstfi_mod, only: g, mugaz, omeg, rad, rcp, pi 4 USE comcstfi_mod, only: g, mugaz, omeg, rad, rcp, pi 5 5 USE vertical_layers_mod, ONLY: ap,bp,aps,bps,pseudoalt 6 6 ! USE logic_mod, ONLY: fxyhypb,ysinus … … 10 10 USE regular_lonlat_mod, ONLY: lon_reg, lat_reg 11 11 USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat, nbp_lev 12 use tabfi_mod, only: tab_cntrl_mod 12 13 IMPLICIT NONE 13 14 … … 41 42 c Local: 42 43 c ------ 43 INTEGER length,l44 parameter (length = 100)45 REAL tab_cntrl(length) ! run parameters are stored in this array44 ! INTEGER length,l 45 ! parameter (length = 100) 46 ! REAL tab_cntrl(length) ! run parameters are stored in this array 46 47 INTEGER ierr 47 48 REAl,ALLOCATABLE :: lon_reg_ext(:) ! extended longitudes … … 50 51 integer :: idim_rlatu,idim_llmp1,idim_llm 51 52 integer :: idim_nsoilmx ! "subsurface_layers" dimension ID # 52 integer, dimension(2) :: id 53 integer, dimension(2) :: id 53 54 c----------------------------------------------------------------------- 54 55 … … 61 62 ENDIF 62 63 63 DO l=1,length64 tab_cntrl(l)=0.65 ENDDO66 tab_cntrl(1) = real(nbp_lon)67 tab_cntrl(2) = real(nbp_lat-1)68 tab_cntrl(3) = real(nbp_lev)69 tab_cntrl(4) = real(idayref)70 tab_cntrl(5) = rad71 tab_cntrl(6) = omeg72 tab_cntrl(7) = g73 tab_cntrl(8) = mugaz74 tab_cntrl(9) = rcp75 tab_cntrl(10) = daysec76 tab_cntrl(11) = dtphys64 ! DO l=1,length 65 ! tab_cntrl(l)=0. 66 ! ENDDO 67 ! tab_cntrl(1) = real(nbp_lon) 68 ! tab_cntrl(2) = real(nbp_lat-1) 69 ! tab_cntrl(3) = real(nbp_lev) 70 ! tab_cntrl(4) = real(idayref) 71 ! tab_cntrl(5) = rad 72 ! tab_cntrl(6) = omeg 73 ! tab_cntrl(7) = g 74 ! tab_cntrl(8) = mugaz 75 ! tab_cntrl(9) = rcp 76 ! tab_cntrl(10) = daysec 77 ! tab_cntrl(11) = dtphys 77 78 ! tab_cntrl(12) = etot0 78 79 ! tab_cntrl(13) = ptot0 … … 82 83 c 83 84 c .......... P.Le Van ( ajout le 8/04/96 ) ......... 84 c ..... parametres pour le zoom ...... 85 c ..... parametres pour le zoom ...... 85 86 ! tab_cntrl(17) = clon 86 87 ! tab_cntrl(18) = clat … … 105 106 106 107 ! Define dimensions 107 108 ierr = NF_REDEF (nid) 109 110 ierr = NF_DEF_DIM (nid, "index", length, idim_index)108 109 ierr = NF_REDEF (nid) 110 111 ierr = NF_DEF_DIM (nid, "index", SIZE(tab_cntrl_mod), idim_index) 111 112 ! ierr = NF_DEF_DIM (nid, "rlonu", iip1, idim_rlonu) 112 113 ierr = NF_DEF_DIM (nid, "latitude", nbp_lat, idim_rlatu) … … 126 127 ierr = NF_REDEF (nid) 127 128 #ifdef NC_DOUBLE 128 ierr = NF_DEF_VAR (nid, "controle", NF_DOUBLE, 1, 129 ierr = NF_DEF_VAR (nid, "controle", NF_DOUBLE, 1, 129 130 . idim_index,nvarid) 130 131 #else 131 ierr = NF_DEF_VAR (nid, "controle", NF_FLOAT, 1, 132 ierr = NF_DEF_VAR (nid, "controle", NF_FLOAT, 1, 132 133 . idim_index,nvarid) 133 134 #endif … … 136 137 ierr = NF_ENDDEF(nid) 137 138 #ifdef NC_DOUBLE 138 ierr = NF_PUT_VAR_DOUBLE (nid,nvarid,tab_cntrl )139 #else 140 ierr = NF_PUT_VAR_REAL (nid,nvarid,tab_cntrl )139 ierr = NF_PUT_VAR_DOUBLE (nid,nvarid,tab_cntrl_mod) 140 #else 141 ierr = NF_PUT_VAR_REAL (nid,nvarid,tab_cntrl_mod) 141 142 #endif 142 143 … … 177 178 c 178 179 c -------------------------- 179 180 180 181 lon_reg_ext(1:nbp_lon)=lon_reg(1:nbp_lon) 181 182 IF (nbp_lon*nbp_lat/=1) THEN … … 204 205 ierr = NF_REDEF (nid) 205 206 #ifdef NC_DOUBLE 206 ierr = NF_DEF_VAR (nid, "altitude", NF_DOUBLE, 1, 207 ierr = NF_DEF_VAR (nid, "altitude", NF_DOUBLE, 1, 207 208 . idim_llm,nvarid) 208 209 #else 209 ierr = NF_DEF_VAR (nid, "altitude", NF_FLOAT, 1, 210 ierr = NF_DEF_VAR (nid, "altitude", NF_FLOAT, 1, 210 211 . idim_llm,nvarid) 211 212 #endif -
trunk/LMDZ.PLUTO/libf/phypluto/phyetat0_mod.F90
r3736 r3772 3 3 implicit none 4 4 5 real, save :: tab_cntrl_mod(100)6 7 5 integer,save :: nid_start ! NetCDF file identifier for startfi.nc file 8 9 !$OMP THREADPRIVATE(tab_cntrl_mod)10 11 6 12 7 contains … … 26 21 !! 27 22 use comsoil_h, only: nsoilmx,inertiedat 28 use tabfi_mod, only: tabfi 23 use tabfi_mod, only: tabfi,ini_tab_controle_dyn_xios,tab_cntrl_mod 29 24 USE tracer_h, ONLY: noms 30 25 USE surfdat_h, only: phisfi, albedodat, zmea, zstd, zsig, zgam, zthe … … 282 277 !AF24 283 278 endif ! of if (startphy_file) 279 280 call ini_tab_controle_dyn_xios(day_ini) 284 281 ! 285 282 ! close file: … … 289 286 end subroutine phyetat0 290 287 291 292 !======================================================================293 subroutine ini_tab_controle_dyn_xios(idayref)294 295 use comcstfi_mod, only: g, mugaz, omeg, rad, rcp296 use time_phylmdz_mod, only: daysec, dtphys297 use mod_grid_phy_lmdz, only: nbp_lon, nbp_lat, nbp_lev298 299 implicit none300 301 integer*4, intent(in) :: idayref ! date (initial date for this run)302 303 integer :: length, l304 parameter (length = 100)305 real :: tab_cntrl(length) ! run parameters are stored in this array306 307 do l = 1,length308 tab_cntrl(l) = 0.309 enddo310 tab_cntrl(1) = real(nbp_lon)311 tab_cntrl(2) = real(nbp_lat-1)312 tab_cntrl(3) = real(nbp_lev)313 tab_cntrl(4) = real(idayref)314 tab_cntrl(5) = rad315 tab_cntrl(6) = omeg316 tab_cntrl(7) = g317 tab_cntrl(8) = mugaz318 tab_cntrl(9) = rcp319 tab_cntrl(10) = daysec320 tab_cntrl(11) = dtphys321 322 tab_cntrl_mod = tab_cntrl323 324 end subroutine ini_tab_controle_dyn_xios325 326 327 288 end module phyetat0_mod -
trunk/LMDZ.PLUTO/libf/phypluto/physiq_mod.F90
r3765 r3772 36 36 nesp, is_chim 37 37 use time_phylmdz_mod, only: diagfi_output_rate, startfi_output_rate, nday 38 use phyetat0_mod, only: phyetat0,tab_cntrl_mod 38 use phyetat0_mod, only: phyetat0 39 use tabfi_mod, only: tab_cntrl_mod 39 40 use wstats_mod, only: callstats, wstats, mkstats 40 41 use phyredem, only: physdem0, physdem1 -
trunk/LMDZ.PLUTO/libf/phypluto/tabfi_mod.F90
r3736 r3772 2 2 3 3 IMPLICIT NONE 4 5 real, save :: tab_cntrl_mod(100) 6 !$OMP THREADPRIVATE(tab_cntrl_mod) 4 7 5 8 CONTAINS … … 588 591 END SUBROUTINE tabfi 589 592 593 594 subroutine ini_tab_controle_dyn_xios(idayref) 595 ! Initialize controle variable for XIOS & diagfi 596 597 use comcstfi_mod, only: g, mugaz, omeg, rad, rcp 598 use time_phylmdz_mod, only: daysec, dtphys 599 use mod_grid_phy_lmdz, only: nbp_lon, nbp_lat, nbp_lev 600 601 implicit none 602 603 integer*4, intent(in) :: idayref ! date (initial date for this run) 604 605 integer :: length, l 606 parameter (length = 100) 607 real :: tab_cntrl(length) ! run parameters are stored in this array 608 609 do l = 1,length 610 tab_cntrl(l) = 0. 611 enddo 612 tab_cntrl(1) = real(nbp_lon) 613 tab_cntrl(2) = real(nbp_lat-1) 614 tab_cntrl(3) = real(nbp_lev) 615 tab_cntrl(4) = real(idayref) 616 tab_cntrl(5) = rad 617 tab_cntrl(6) = omeg 618 tab_cntrl(7) = g 619 tab_cntrl(8) = mugaz 620 tab_cntrl(9) = rcp 621 tab_cntrl(10) = daysec 622 tab_cntrl(11) = dtphys 623 624 tab_cntrl_mod = tab_cntrl 625 626 end subroutine ini_tab_controle_dyn_xios 627 628 590 629 end module tabfi_mod
Note: See TracChangeset
for help on using the changeset viewer.