Changeset 3329 for trunk/LMDZ.PLUTO/libf/phypluto/dyn1d
- Timestamp:
- May 15, 2024, 8:29:23 PM (8 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/LMDZ.PLUTO/libf/phypluto/dyn1d/rcm1d.F ¶
r3258 r3329 22 22 use time_phylmdz_mod, only: daysec, dtphys, day_step, ecritphy, 23 23 & nday, iphysiq 24 use callkeys_mod, only: tracer, specOLR,pceil 24 use callkeys_mod, only: tracer, specOLR,pceil,haze 25 25 USE comvert_mod, ONLY: ap,bp,aps,bps,pa,preff, sig, 26 26 & presnivs,pseudoalt,scaleheight … … 78 78 c 79 79 INTEGER day0 ! date initial (sol ; =0 a Ls=0) 80 INTEGER lecttsoil ! lecture of tsoil from proftsoil 81 INTEGER lecthaze ! lecture of haze from profhaze 80 82 REAL day ! date durant le run 81 83 REAL time ! time (0<time<1 ; time=0.5 a midi) … … 329 331 endif 330 332 enddo !of do iq=1,nq 331 ! check for n2 / h2o_ice tracers:333 ! check for n2 / ch4_ice tracers: 332 334 i_n2=0 333 335 do iq=1,nq … … 342 344 elseif (tname(iq)=="co_gas") then 343 345 i_co_gas=iq 346 elseif (tname(iq)=="haze") then 347 i_haze=iq 344 348 endif 345 349 enddo … … 657 661 q(ilayer,iq) = 0.01*coref*28./28. 658 662 ENDDO 659 ! else if ((iq.eq.i_haze10).or.(iq.eq.i_haze30).or.(iq.eq.i_haze).or.(iq.eq.i_haze50).or.(iq.eq.i_haze100)) then 660 ! hazeref=0. ! default value for haze mmr 661 ! PRINT *,'qhaze (kg/kg) ?' 662 ! call getin("hazeref",hazeref) 663 ! write(*,*) " haze ref (kg/kg) = ",hazeref 664 ! DO ilayer=1,nlayer 665 ! q(ilayer,iq) = hazeref 666 ! ENDDO 667 ! else if (iq.eq.i_prec_haze) then 668 ! prechazeref=0. ! default value for vmr ch4 669 ! PRINT *,'qprechaze (kg/kg) ?' 670 ! call getin("prechazeref",prechazeref) 671 ! write(*,*) " prec haze ref (kg/kg) = ",prechazeref 672 ! DO ilayer=1,nlayer 673 ! q(ilayer,iq) = prechazeref 674 ! ENDDO 675 663 else if ((iq.eq.i_haze10).or.(iq.eq.i_haze30) 664 & .or.(iq.eq.i_haze).or.(iq.eq.i_haze50) 665 & .or.(iq.eq.i_haze100)) then 666 hazeref=0. ! default value for haze mmr 667 PRINT *,'qhaze (kg/kg) ?' 668 call getin("hazeref",hazeref) 669 write(*,*) " haze ref (kg/kg) = ",hazeref 670 DO ilayer=1,nlayer 671 q(ilayer,iq) = hazeref 672 ENDDO 673 else if (iq.eq.i_prec_haze) then 674 prechazeref=0. ! default value for vmr ch4 675 PRINT *,'qprechaze (kg/kg) ?' 676 call getin("prechazeref",prechazeref) 677 write(*,*) " prec haze ref (kg/kg) = ",prechazeref 678 DO ilayer=1,nlayer 679 q(ilayer,iq) = prechazeref 680 ENDDO 676 681 else 677 682 DO ilayer=1,nlayer … … 856 861 ! ------------------------------------------ 857 862 volcapa=1.e6 ! volumetric heat capacity 858 DO isoil=1,nsoil 863 lecttsoil=0 ! default value for lecttsoil 864 call getin("lecttsoil",lecttsoil) 865 if (lecttsoil==1) then 866 OPEN(14,file='proftsoil',status='old',form='formatted',err=101) 867 DO isoil=1,nsoil 868 READ (14,*) tsoil(isoil) 869 inertiedat(1,isoil)=inertiedat(1,1) ! soil thermal inertia 870 ENDDO 871 GOTO 201 872 101 STOP'fichier proftsoil inexistant' 873 201 CONTINUE 874 CLOSE(14) 875 876 else 877 DO isoil=1,nsoil 859 878 inertiedat(1,isoil)=inertiedat(1,1) ! soil thermal inertia 860 879 tsoil(isoil)=tsurf(1) ! soil temperature 861 ENDDO 880 ENDDO 881 endif 882 862 883 863 884 ! Initialize depths … … 870 891 enddo 871 892 893 ! Initialize haze profile 894 ! ------------------------------------------ 895 if (haze) then 896 897 lecthaze=0 ! default value for lecthaze 898 call getin("lecthaze",lecthaze) 899 if (lecthaze==1) then 900 OPEN(15,file='profhaze',status='old',form='formatted',err=301) 901 DO iq=1,nq 902 if (iq.eq.i_haze) then 903 DO ilayer=1,nlayer 904 READ (15,*) q(ilayer,iq) 905 ENDDO 906 endif 907 ENDDO 908 GOTO 401 909 301 STOP'fichier profhaze inexistant' 910 401 CONTINUE 911 CLOSE(15) 912 endif 913 endif 872 914 ! Initialize cloud fraction and oceanic ice !AF24: removed 873 915 ! Initialize slab ocean !AF24: removed … … 1022 1064 CLOSE(12) 1023 1065 endif 1024 1066 ! save haze profile 1067 if (haze.and.lecthaze.eq.1) then 1068 OPEN(16,file='profhaze.out',form='formatted') 1069 DO iq=1,nq 1070 if (iq.eq.i_haze) then 1071 DO ilayer=1,nlayer 1072 write(16,*) q(ilayer,iq) 1073 ENDDO 1074 endif 1075 ENDDO 1076 CLOSE(16) 1077 endif 1025 1078 1026 1079 ENDDO ! fin de la boucle temporelle
Note: See TracChangeset
for help on using the changeset viewer.