Changeset 649
- Timestamp:
- May 4, 2012, 5:14:30 PM (13 years ago)
- Location:
- trunk/LMDZ.GENERIC
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.GENERIC/README
r622 r649 654 654 == 16/04/2012 == JL 655 655 - Added consistency checks for calculations including water and global1d+diurnal. 656 656 - Corrected small bugs in precipitation scheme 657 658 == 04/05/2012 == JL 659 - Correction a huge bug in newstart: rcp and cpp can now be changed in start.nc files and are the same as in startfi.nc; 660 Even when starting from start and startfi files. 661 - rcp, cpp and mugaz can now be computed using gases.def in newstart 662 - Correction of a bug arising in gcm.F when the solar days are long (thanks Melanie V.) 663 -
trunk/LMDZ.GENERIC/libf/dyn3d/gcm.F
r253 r649 409 409 rday_ecri = rdaym_ini 410 410 ELSE 411 rday_ecri = INT( rdayvrai)411 rday_ecri = INT(rdaym_ini)+INT(day_ini) 412 412 ENDIF 413 413 c -
trunk/LMDZ.GENERIC/libf/dyn3d/newstart.F
r588 r649 176 176 ! CHARACTER*80 :: visu_file 177 177 178 ! cpp = 744.499 ! for Mars, instead of 1004.70885 (Earth)179 ! preff = 610. ! for Mars, instead of 101325. (Earth)180 ! pa = 20 ! for Mars, instead of 500 (Earth)181 178 cpp = 0. 182 179 preff = 0. … … 246 243 endif 247 244 245 246 c======================================================================= 247 c INITIALISATIONS DIVERSES 248 c======================================================================= 249 ! Load tracer names: 250 call iniadvtrac(nq,numvanle) 251 ! tnom(:) now contains tracer names 252 ! JL12 we will need the tracer names to read start in dyneta0 253 248 254 c----------------------------------------------------------------------- 249 255 c Lecture du tableau des parametres du run (pour la dynamique) … … 284 290 tab_cntrl(i+50)=tab_cntrl_bis(i) 285 291 enddo 286 write(*,*) 'printing tab_cntrl', tab_cntrl 287 do i=1,100 288 write(*,*) i,tab_cntrl(i) 289 enddo 292 write(*,*) 'printing tab_cntrl', tab_cntrl 293 do i=1,100 294 write(*,*) i,tab_cntrl(i) 295 enddo 296 297 ! Lmodif set to 0 to disable modifications possibility in phyeta0 298 write(*,*) 'Reading file START' 299 fichnom = 'start.nc' 300 CALL dynetat0(fichnom,nqmx,vcov,ucov,teta,q,masse, 301 . ps,phis,time) 302 303 write(*,*) 'Reading file STARTFI' 304 fichnom = 'startfi.nc' 305 CALL phyetat0 (fichnom,tab0,Lmodif,nsoilmx,nqmx, 306 . day_ini,time, 307 . tsurf,tsoil,emis,q2,qsurf, !) ! temporary modif by RDW 308 . cloudfrac,totalfrac,hice) 309 310 ! copy albedo and soil thermal inertia 311 do i=1,ngridmx 312 albfi(i) = albedodat(i) 313 do j=1,nsoilmx 314 ithfi(i,j) = inertiedat(i,j) 315 enddo 316 ! build a surfithfi(:) using 1st layer of ithfi(:), which might 317 ! be neede later on if reinitializing soil thermal inertia 318 surfithfi(i)=ithfi(i,1) 319 enddo 320 290 321 291 322 endif … … 332 363 . p_omeg,p_g,p_cpp,p_mugaz,p_daysec,time) 333 364 else if (choix_1.eq.1) then 365 Lmodif=1 ! Lmodif set to 1 to allow modifications in phyeta0 334 366 call tabfi (nid_fi,Lmodif,tab0,day_ini,lllm,p_rad, 335 367 . p_omeg,p_g,p_cpp,p_mugaz,p_daysec,time) … … 349 381 c INITIALISATIONS DIVERSES 350 382 c======================================================================= 351 ! Load tracer names:352 call iniadvtrac(nq,numvanle)353 ! tnom(:) now contains tracer names354 383 ! Initialize global tracer indexes (stored in tracer.h) 355 384 call initracer() … … 423 452 ierr= NF_CLOSE(nid) 424 453 425 else if (choix_1.eq.1) then ! c'est l'appel a tabfi de phyeta0 qui 426 ! permet de changer les valeurs du 427 ! tab_cntrl Lmodif=1 428 tab0=0 429 Lmodif=1 ! Lmodif set to 1 to allow modifications in phyeta0 430 write(*,*) 'Reading file START' 431 fichnom = 'start.nc' 432 CALL dynetat0(fichnom,nqmx,vcov,ucov,teta,q,masse, 433 . ps,phis,time) 434 435 write(*,*) 'Reading file STARTFI' 436 fichnom = 'startfi.nc' 437 CALL phyetat0 (fichnom,tab0,Lmodif,nsoilmx,nqmx, 438 . day_ini,time, 439 . tsurf,tsoil,emis,q2,qsurf, !) ! temporary modif by RDW 440 . cloudfrac,totalfrac,hice) 441 442 ! copy albedo and soil thermal inertia 443 do i=1,ngridmx 444 albfi(i) = albedodat(i) 445 do j=1,nsoilmx 446 ithfi(i,j) = inertiedat(i,j) 447 enddo 448 ! build a surfithfi(:) using 1st layer of ithfi(:), which might 449 ! be neede later on if reinitializing soil thermal inertia 450 surfithfi(i)=ithfi(i,1) 451 enddo 452 454 else if (choix_1.eq.1) then 455 !do nothing, start and startfi have already been read 453 456 else 454 457 CALL exit(1) -
trunk/LMDZ.GENERIC/libf/phystd/tabfi.F
r590 r649 79 79 INTEGER size 80 80 CHARACTER modif*20 81 82 81 83 82 c----------------------------------------------------------------------- … … 229 228 write(*,*) '(31 et 32) iceradius : mean scat radius of CO2 snow' 230 229 write(*,*) '(33 et 34) dtemisice : time scale for snow', 231 & ' metamorphism'230 & ' metamorphism' 232 231 write(*,*) '(27) tauvis : mean dust vis. reference ', 233 & ' opacity'234 write(*,*) '(35) volcapa: soil volumetric heat capacity'232 & ' opacity' 233 write(*,*) '(35) volcapa : soil volumetric heat capacity' 235 234 write(*,*) '(18) obliquit : planet obliquity (deg)' 236 235 write(*,*) '(17) peri_day : periastron date (sols since Ls=0)' … … 238 237 write(*,*) '(16) apoastr : max. star-planet (UA)' 239 238 write(*,*) '(14) year_day : length of year (in sols)' 240 write(*,*) '(5) rad : radius of the planet (m)' 241 write(*,*) '(6) omeg : planet rotation rate (rad/s)' 242 write(*,*) '(7) g : gravity (m/s2)' 243 write(*,*) '(8) mugaz : molecular mass of the atmosphere (g/mol)' 244 write(*,*) '(9) rcp : r/Cp' 245 write(*,*) '(10) daysec : length of a sol (s)' 239 write(*,*) '(5) rad : radius of the planet (m)' 240 write(*,*) '(6) omeg : planet rotation rate (rad/s)' 241 write(*,*) '(7) g : gravity (m/s2)' 242 write(*,*) '(8) mugaz : molecular mass ' 243 write(*,*) ' of the atmosphere (g/mol)' 244 write(*,*) '(9) rcp : r/Cp' 245 write(*,*) '(8)+(9) calc_cpp_mugaz : r/Cp and mugaz ' 246 write(*,*) ' computed from gases.def' 247 write(*,*) '(10) daysec : length of a sol (s)' 246 248 write(*,*) 247 249 … … 460 462 write(*,*) ' cpp (new value):',cpp 461 463 464 else if (modif(1:len_trim(modif)).eq.'calc_cpp_mugaz') then 465 write(*,*) 'current value rcp, mugaz:',rcp,mugaz 466 check_cpp_match=.false. 467 force_cpp=.false. 468 call su_gases 469 call calc_cpp_mugaz 470 write(*,*) 471 write(*,*) ' cpp (new value):',cpp 472 write(*,*) ' mugaz (new value):',mugaz 473 r=8.314511/(mugaz/1000.0) 474 rcp=r/cpp 475 write(*,*) ' rcp (new value):',rcp 476 462 477 else if (modif(1:len_trim(modif)).eq.'daysec') then 463 478 write(*,*) 'current value:',daysec
Note: See TracChangeset
for help on using the changeset viewer.