Changeset 4110
- Timestamp:
- Mar 25, 2022, 10:30:13 PM (3 years ago)
- Location:
- LMDZ6/trunk/libf/phylmd
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/dyn1d/old_lmdz1d.F90
r4105 r4110 1033 1033 ! 1034 1034 !===================================================================== 1035 #ifdef OUTPUT_PHYS_SCM 1035 1036 CALL iophys_ini(timestep) 1037 #endif 1036 1038 ! START OF THE TEMPORAL LOOP : 1037 1039 !===================================================================== … … 1286 1288 & +dt_cooling(1:mxcalc)) ! Taux de chauffage ou refroid. 1287 1289 1288 print*,'OLDLMDZ1D IOPH' 1290 #ifdef OUTPUT_PHYS_SCM 1289 1291 CALL iophys_ecrit('d_t_adv',klev,'d_t_adv','m/s',d_t_adv) 1290 1292 CALL iophys_ecrit('d_t_nudge',klev,'d_t_nudge','m/s',d_t_nudge) 1293 #endif 1291 1294 1292 1295 endif ! forcing_sandu or forcing_astex -
LMDZ6/trunk/libf/phylmd/dyn1d/replay1d.F90
r4094 r4110 3 3 USE mod_const_mpi, ONLY: comm_lmdz 4 4 USE inigeomphy_mod, ONLY: inigeomphy 5 USE comvert_mod, ONLY: presnivs 6 USE comvert_mod, only : preff, pa 7 5 8 6 9 … … 8 11 #include "dimensions.h" 9 12 10 real presnivs(llm)11 13 real :: airefi 12 14 real :: zcufi = 1. … … 27 29 rlat_rad(1)=0. 28 30 rlon_rad(1)=0. 31 32 preff=101325. 33 pa=50000. 34 CALL disvert() 29 35 CALL inigeomphy(1,1,llm, & 30 36 1, comm_lmdz, & … … 36 42 37 43 CALL suphel 38 39 !--------------------------------------------------------------------- 40 ! Initialisation d'un fichier de sorties 41 !--------------------------------------------------------------------- 42 call system("ncdump -h phys.nc |grep -i time | head -1 | cut -d\( -f2 | awk ' { print $1 } ' > presnivs") 43 call system("ncks -v lev phys.nc | grep 'lev.*.,' | sed -e 's/lev//' -e 's/[=;,]//g' >> presnivs") 44 open(10,file="presnivs",form="formatted") 45 read(10,*) ntime 46 read(10,*) presnivs 47 close(10) 44 ntime=100 48 45 jour0=1 49 46 mois0=1 … … 51 48 klon=1 52 49 klev=llm 53 call iotd_ini('phys b.nc',1,1,klev,0.,0.,presnivs,jour0,mois0,an0,0.,900.,'360d')50 call iotd_ini('phys.nc',1,1,klev,0.,0.,presnivs,jour0,mois0,an0,0.,900.,'360d') 54 51 55 52 !--------------------------------------------------------------------- -
LMDZ6/trunk/libf/phylmd/iophys.F90
r3977 r4110 207 207 208 208 #endif 209 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 210 ! Interface pour ecrire en netcdf avec les routines d'enseignement 211 ! iotd de Frederic Hourdin 212 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 213 214 SUBROUTINE iotd_ecrit_seq(nom,lllm,titre,unite,px) 215 216 IMPLICIT NONE 217 218 ! px arrive 219 220 #include "iotd.h" 221 222 223 ! Arguments on input: 224 integer lllm 225 character (len=*) :: nom,titre,unite 226 integer imjmax 227 parameter (imjmax=100000) 228 real px(imjmax*lllm) 229 real, allocatable :: zx(:,:,:) 230 integer i,j,l,ijl 231 232 allocate(zx(imax,jmax,lllm)) 233 234 ijl=0 235 do l=1,lllm 236 ! Pole nord 237 ijl=ijl+1 238 do i=1,imax 239 zx(i,1,l)=px(ijl) 240 enddo 241 ! Grille normale 242 do j=2,jmax-1 243 do i=1,imax 244 ijl=ijl+1 245 zx(i,j,l)=px(ijl) 246 enddo 247 enddo 248 ! Pole sud 249 if ( jmax > 1 ) then 250 ijl=ijl+1 251 do i=1,imax 252 zx(i,jmax,l)=px(ijl) 253 enddo 254 endif 255 enddo 256 257 call iotd_ecrit(nom,lllm,titre,unite,zx) 258 deallocate(zx) 259 260 return 261 end 262
Note: See TracChangeset
for help on using the changeset viewer.