Changeset 1403 for LMDZ4/trunk/libf/phylmd/thermcell_main.F90
- Timestamp:
- Jul 1, 2010, 11:02:53 AM (14 years ago)
- Location:
- LMDZ4/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk
- Property svn:mergeinfo changed
-
LMDZ4/trunk/libf/phylmd/thermcell_main.F90
r1146 r1403 1 1 ! 2 ! $ Header$2 ! $Id$ 3 3 ! 4 4 SUBROUTINE thermcell_main(itap,ngrid,nlay,ptimestep & … … 8 8 & ,fm0,entr0,detr0,zqta,zqla,lmax & 9 9 & ,ratqscth,ratqsdiff,zqsatth & 10 & ,r_aspect,l_mix,tau_thermals &10 & ,r_aspect,l_mix,tau_thermals,iflag_thermals_ed & 11 11 & ,Ale_bl,Alp_bl,lalim_conv,wght_th & 12 & ,zmax0, f0,zw2,fraca) 12 & ,zmax0, f0,zw2,fraca,ztv & 13 & ,zpspsk,ztla,zthl) 13 14 14 15 USE dimphy … … 22 23 ! de "thermiques" explicitement representes avec processus nuageux 23 24 ! 24 ! R éécriture à partir d'un listing papier àHabas, le 14/02/0025 ! 26 ! le thermique est suppos é homogène et dissipé par mélange avec27 ! son environnement. la longueur l_mix contr ôle l'efficacitédu28 ! m élange29 ! 30 ! Le calcul du transport des diff érentes espèces se fait en prenant25 ! Reecriture a partir d'un listing papier a Habas, le 14/02/00 26 ! 27 ! le thermique est suppose homogene et dissipe par melange avec 28 ! son environnement. la longueur l_mix controle l'efficacite du 29 ! melange 30 ! 31 ! Le calcul du transport des differentes especes se fait en prenant 31 32 ! en compte: 32 33 ! 1. un flux de masse montant … … 55 56 INTEGER ngrid,nlay,w2di 56 57 real tau_thermals 58 integer iflag_thermals_ed 57 59 real ptimestep,l_mix,r_aspect 58 60 REAL pt(ngrid,nlay),pdtadj(ngrid,nlay) … … 85 87 real linter(klon) 86 88 real zmix(klon) 87 real zmax(klon),zw2(klon,klev+1),ztva(klon,klev),zw_est(klon,klev+1) 89 real zmax(klon),zw2(klon,klev+1),ztva(klon,klev),zw_est(klon,klev+1),ztva_est(klon,klev) 88 90 ! real fraca(klon,klev) 89 91 … … 115 117 ! FH probleme de dimensionnement avec l'allocation dynamique 116 118 ! common/comtherm/thetath2,wth2 119 real wq(klon,klev) 120 real wthl(klon,klev) 121 real wthv(klon,klev) 117 122 118 123 real ratqscth(klon,klev) … … 126 131 127 132 real wmax(klon) 133 real wmax_tmp(klon) 128 134 real wmax_sec(klon) 129 135 real fm0(klon,klev+1),entr0(klon,klev),detr0(klon,klev) … … 142 148 real f_star(klon,klev+1),entr_star(klon,klev) 143 149 real detr_star(klon,klev) 144 real alim_star_tot(klon) ,alim_star2(klon)150 real alim_star_tot(klon) 145 151 real alim_star(klon,klev) 152 real alim_star_clos(klon,klev) 146 153 real f(klon), f0(klon) 147 154 !FH/IM save f0 … … 149 156 logical debut 150 157 real seuil 158 real csc(klon,klev) 151 159 152 160 ! … … 166 174 character*10 str10 167 175 176 character (len=20) :: modname='thermcell_main' 177 character (len=80) :: abort_message 178 168 179 EXTERNAL SCOPY 169 180 ! … … 182 193 183 194 184 ! #define wrgrads_thermcell185 195 #undef wrgrads_thermcell 186 196 #ifdef wrgrads_thermcell … … 200 210 fm=0. ; entr=0. ; detr=0. 201 211 212 202 213 icount=icount+1 203 214 … … 220 231 ENDIF 221 232 ! 222 !Initialisation 223 ! 224 ! IF (1.eq.0) THEN 225 ! do ig=1,klon 226 !FH/IM 130308 if ((debut).or.((.not.debut).and.(f0(ig).lt.1.e-10))) then 227 ! if ((.not.debut).and.(f0(ig).lt.1.e-10)) then 228 ! f0(ig)=1.e-5 229 ! zmax0(ig)=40. 230 !v1d therm=.false. 231 ! endif 232 ! enddo 233 ! ENDIF !(1.eq.0) THEN 234 if (prt_level.ge.10)write(lunout,*) & 235 & 'WARNING thermcell_main f0=max(f0,1.e-2)' 233 ! write(lunout,*)'WARNING thermcell_main f0=max(f0,1.e-2)' 236 234 do ig=1,klon 237 235 if (prt_level.ge.20) then … … 239 237 endif 240 238 f0(ig)=max(f0(ig),1.e-2) 239 zmax0(ig)=max(zmax0(ig),40.) 241 240 !IMmarche pas ?! if (f0(ig)<1.e-2) f0(ig)=1.e-2 242 241 enddo … … 364 363 365 364 !------------------------------------------------------------------ 366 ! 1. alim_star est le profil vertical de l'alimentation àla base du367 ! panache thermique, calcul é à partir de la flotabilitéde l'air sec365 ! 1. alim_star est le profil vertical de l'alimentation a la base du 366 ! panache thermique, calcule a partir de la flotabilite de l'air sec 368 367 ! 2. lmin et lalim sont les indices inferieurs et superieurs de alim_star 369 368 !------------------------------------------------------------------ 370 369 ! 371 370 entr_star=0. ; detr_star=0. ; alim_star=0. ; alim_star_tot=0. 372 CALL thermcell_init(ngrid,nlay,ztv,zlay,zlev, & 373 & lalim,lmin,alim_star,alim_star_tot,lev_out) 374 375 call test_ltherm(ngrid,nlay,pplev,pplay,lmin,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_init lmin ') 376 call test_ltherm(ngrid,nlay,pplev,pplay,lalim,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_init lalim ') 377 378 379 if (prt_level.ge.1) print*,'thermcell_main apres thermcell_init' 380 if (prt_level.ge.10) then 381 write(lunout1,*) 'Dans thermcell_main 1' 382 write(lunout1,*) 'lmin ',lmin(igout) 383 write(lunout1,*) 'lalim ',lalim(igout) 384 write(lunout1,*) ' ig l alim_star thetav' 385 write(lunout1,'(i6,i4,2e15.5)') (igout,l,alim_star(igout,l) & 386 & ,ztv(igout,l),l=1,lalim(igout)+4) 387 endif 388 389 !v1d do ig=1,klon 390 !v1d if (alim_star(ig,1).gt.1.e-10) then 391 !v1d therm=.true. 392 !v1d endif 393 !v1d enddo 371 lmin=1 372 394 373 !----------------------------------------------------------------------------- 395 374 ! 3. wmax_sec et zmax_sec sont les vitesses et altitudes maximum d'un 396 375 ! panache sec conservatif (e=d=0) alimente selon alim_star 397 376 ! Il s'agit d'un calcul de type CAPE 398 ! zmax_sec est utilis é pour déterminer la géométrie du thermique.377 ! zmax_sec est utilise pour determiner la geometrie du thermique. 399 378 !------------------------------------------------------------------------------ 400 ! 379 !--------------------------------------------------------------------------------- 380 !calcul du melange et des variables dans le thermique 381 !-------------------------------------------------------------------------------- 382 ! 383 if (prt_level.ge.1) print*,'avant thermcell_plume ',lev_out 384 !IM 140508 CALL thermcell_plume(ngrid,nlay,ptimestep,ztv,zthl,po,zl,rhobarz, & 385 386 ! Gestion temporaire de plusieurs appels à thermcell_plume au travers 387 ! de la variable iflag_thermals 388 389 ! print*,'THERM thermcell_main iflag_thermals_ed=',iflag_thermals_ed 390 if (iflag_thermals_ed<=9) then 391 ! print*,'THERM NOUVELLE/NOUVELLE Arnaud' 392 CALL thermcell_plume(itap,ngrid,nlay,ptimestep,ztv,zthl,po,zl,rhobarz,& 393 & zlev,pplev,pphi,zpspsk,alim_star,alim_star_tot, & 394 & lalim,f0,detr_star,entr_star,f_star,csc,ztva, & 395 & ztla,zqla,zqta,zha,zw2,zw_est,ztva_est,zqsatth,lmix,lmix_bis,linter & 396 & ,lev_out,lunout1,igout) 397 398 elseif (iflag_thermals_ed>9) then 399 ! print*,'THERM RIO et al 2010, version d Arnaud' 400 CALL thermcellV1_plume(itap,ngrid,nlay,ptimestep,ztv,zthl,po,zl,rhobarz,& 401 & zlev,pplev,pphi,zpspsk,alim_star,alim_star_tot, & 402 & lalim,f0,detr_star,entr_star,f_star,csc,ztva, & 403 & ztla,zqla,zqta,zha,zw2,zw_est,ztva_est,zqsatth,lmix,lmix_bis,linter & 404 & ,lev_out,lunout1,igout) 405 406 endif 407 408 if (prt_level.ge.1) print*,'apres thermcell_plume ',lev_out 409 410 call test_ltherm(ngrid,nlay,pplev,pplay,lalim,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_plum lalim ') 411 call test_ltherm(ngrid,nlay,pplev,pplay,lmix ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_plum lmix ') 412 413 if (prt_level.ge.1) print*,'thermcell_main apres thermcell_plume' 414 if (prt_level.ge.10) then 415 write(lunout1,*) 'Dans thermcell_main 2' 416 write(lunout1,*) 'lmin ',lmin(igout) 417 write(lunout1,*) 'lalim ',lalim(igout) 418 write(lunout1,*) ' ig l alim_star entr_star detr_star f_star ' 419 write(lunout1,'(i6,i4,4e15.5)') (igout,l,alim_star(igout,l),entr_star(igout,l),detr_star(igout,l) & 420 & ,f_star(igout,l+1),l=1,nint(linter(igout))+5) 421 endif 422 423 !------------------------------------------------------------------------------- 424 ! Calcul des caracteristiques du thermique:zmax,zmix,wmax 425 !------------------------------------------------------------------------------- 426 ! 427 CALL thermcell_height(ngrid,nlay,lalim,lmin,linter,lmix,zw2, & 428 & zlev,lmax,zmax,zmax0,zmix,wmax,lev_out) 429 ! Attention, w2 est transforme en sa racine carree dans cette routine 430 ! Le probleme vient du fait que linter et lmix sont souvent égaux à 1. 431 wmax_tmp=0. 432 do l=1,nlay 433 wmax_tmp(:)=max(wmax_tmp(:),zw2(:,l)) 434 enddo 435 ! print*,"ZMAX ",lalim,lmin,linter,lmix,lmax,zmax,zmax0,zmix,wmax 436 437 438 439 call test_ltherm(ngrid,nlay,pplev,pplay,lalim,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lalim ') 440 call test_ltherm(ngrid,nlay,pplev,pplay,lmin ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lmin ') 441 call test_ltherm(ngrid,nlay,pplev,pplay,lmix ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lmix ') 442 call test_ltherm(ngrid,nlay,pplev,pplay,lmax ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lmax ') 443 444 if (prt_level.ge.1) print*,'thermcell_main apres thermcell_height' 445 446 !------------------------------------------------------------------------------- 447 ! Fermeture,determination de f 448 !------------------------------------------------------------------------------- 449 ! 450 ! 451 !! write(lunout,*)'THERM NOUVEAU XXXXX' 401 452 CALL thermcell_dry(ngrid,nlay,zlev,pphi,ztv,alim_star, & 402 453 & lalim,lmin,zmax_sec,wmax_sec,lev_out) 403 454 404 455 call test_ltherm(ngrid,nlay,pplev,pplay,lmin,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_dry lmin ') … … 417 468 418 469 419 !--------------------------------------------------------------------------------- 420 !calcul du melange et des variables dans le thermique 421 !-------------------------------------------------------------------------------- 422 ! 423 if (prt_level.ge.1) print*,'avant thermcell_plume ',lev_out 424 !IM 140508 CALL thermcell_plume(ngrid,nlay,ptimestep,ztv,zthl,po,zl,rhobarz, & 425 CALL thermcell_plume(itap,ngrid,nlay,ptimestep,ztv,zthl,po,zl,rhobarz, & 426 & zlev,pplev,pphi,zpspsk,l_mix,r_aspect,alim_star,alim_star_tot, & 427 & lalim,zmax_sec,f0,detr_star,entr_star,f_star,ztva, & 428 & ztla,zqla,zqta,zha,zw2,zw_est,zqsatth,lmix,lmix_bis,linter & 429 & ,lev_out,lunout1,igout) 430 if (prt_level.ge.1) print*,'apres thermcell_plume ',lev_out 431 432 call test_ltherm(ngrid,nlay,pplev,pplay,lalim,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_plum lalim ') 433 call test_ltherm(ngrid,nlay,pplev,pplay,lmix ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_plum lmix ') 434 435 if (prt_level.ge.1) print*,'thermcell_main apres thermcell_plume' 436 if (prt_level.ge.10) then 437 write(lunout1,*) 'Dans thermcell_main 2' 438 write(lunout1,*) 'lmin ',lmin(igout) 439 write(lunout1,*) 'lalim ',lalim(igout) 440 write(lunout1,*) ' ig l alim_star entr_star detr_star f_star ' 441 write(lunout1,'(i6,i4,4e15.5)') (igout,l,alim_star(igout,l),entr_star(igout,l),detr_star(igout,l) & 442 & ,f_star(igout,l+1),l=1,nint(linter(igout))+5) 443 endif 444 445 !------------------------------------------------------------------------------- 446 ! Calcul des caracteristiques du thermique:zmax,zmix,wmax 447 !------------------------------------------------------------------------------- 448 ! 449 CALL thermcell_height(ngrid,nlay,lalim,lmin,linter,lmix,zw2, & 450 & zlev,lmax,zmax,zmax0,zmix,wmax,lev_out) 451 452 453 call test_ltherm(ngrid,nlay,pplev,pplay,lalim,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lalim ') 454 call test_ltherm(ngrid,nlay,pplev,pplay,lmin ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lmin ') 455 call test_ltherm(ngrid,nlay,pplev,pplay,lmix ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lmix ') 456 call test_ltherm(ngrid,nlay,pplev,pplay,lmax ,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_heig lmax ') 457 458 if (prt_level.ge.1) print*,'thermcell_main apres thermcell_height' 459 460 !------------------------------------------------------------------------------- 461 ! Fermeture,determination de f 462 !------------------------------------------------------------------------------- 463 ! 464 !avant closure: on redéfinit lalim, alim_star_tot et alim_star 465 ! do ig=1,klon 466 ! do l=2,lalim(ig) 467 ! alim_star(ig,l)=entr_star(ig,l) 468 ! entr_star(ig,l)=0. 469 ! enddo 470 ! enddo 471 470 471 ! Choix de la fonction d'alimentation utilisee pour la fermeture. 472 ! Apparemment sans importance 473 alim_star_clos(:,:)=alim_star(:,:) 474 alim_star_clos(:,:)=entr_star(:,:)+alim_star(:,:) 475 476 ! Appel avec la version seche 472 477 CALL thermcell_closure(ngrid,nlay,r_aspect,ptimestep,rho, & 473 & zlev,lalim,alim_star,alim_star_tot,zmax_sec,wmax_sec,zmax,wmax,f,lev_out) 478 & zlev,lalim,alim_star_clos,f_star,zmax_sec,wmax_sec,f,lev_out) 479 480 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 481 ! Appel avec les zmax et wmax tenant compte de la condensation 482 ! Semble moins bien marcher 483 ! CALL thermcell_closure(ngrid,nlay,r_aspect,ptimestep,rho, & 484 ! & zlev,lalim,alim_star,f_star,zmax,wmax,f,lev_out) 485 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 474 486 475 487 if(prt_level.ge.1)print*,'thermcell_closure apres thermcell_closure' … … 484 496 ! Test valable seulement en 1D mais pas genant 485 497 if (.not. (f0(1).ge.0.) ) then 486 stop 'Dans thermcell_main' 498 abort_message = '.not. (f0(1).ge.0.)' 499 CALL abort_gcm (modname,abort_message,1) 487 500 endif 488 501 … … 511 524 fm0=(1.-lambda)*fm+lambda*fm0 512 525 entr0=(1.-lambda)*entr+lambda*entr0 513 !detr0=(1.-lambda)*detr+lambda*detr0526 detr0=(1.-lambda)*detr+lambda*detr0 514 527 else 515 528 fm0=fm … … 560 573 & ,fraca,zmax & 561 574 & ,zu,zv,pduadj,pdvadj,zua,zva,lev_out) 562 !IM 050508 & ,zu,zv,pduadj,pdvadj,zua,zva,igout,lev_out) 575 563 576 else 564 577 … … 596 609 pcon(ig)=pplay(ig,1)*(zo(ig,1)/zqsat(ig,1))**CHI 597 610 enddo 598 do k=1,nlay 611 !IM do k=1,nlay 612 do k=1,nlay-1 599 613 do ig=1,ngrid 600 614 if ((pcon(ig).le.pplay(ig,k)) & … … 603 617 endif 604 618 enddo 619 enddo 620 !IM 621 do ig=1,ngrid 622 if (pcon(ig).le.pplay(ig,nlay)) then 623 zcon2(ig)=zlay(ig,nlay)-(pcon(ig)-pplay(ig,nlay))/(RG*rho(ig,nlay))/100. 624 abort_message = 'thermcellV0_main: les thermiques vont trop haut ' 625 CALL abort_gcm (modname,abort_message,1) 626 endif 605 627 enddo 606 628 if (prt_level.ge.1) print*,'14b OK convect8' … … 636 658 ! 637 659 if (prt_level.ge.10) print*,'14f OK convect8 ig,l,zha zh zpspsk ',ig,l,zha(ig,l),zh(ig,l),zpspsk(ig,l) 638 thetath2(ig,l)=zf2*(z ha(ig,l)-zh(ig,l)/zpspsk(ig,l))**2660 thetath2(ig,l)=zf2*(ztla(ig,l)-zthl(ig,l))**2 639 661 if(zw2(ig,l).gt.1.e-10) then 640 662 wth2(ig,l)=zf2*(zw2(ig,l))**2 … … 651 673 enddo 652 674 enddo 653 !calcul de ale_bl et alp_bl 654 !pour le calcul d'une valeur intégrée entre la surface et lmax 655 do ig=1,ngrid 656 alp_int(ig)=0. 657 ale_int(ig)=0. 658 n_int(ig)=0 659 enddo 660 ! 661 do l=1,nlay 662 do ig=1,ngrid 663 if(l.LE.lmax(ig)) THEN 664 alp_int(ig)=alp_int(ig)+0.5*rhobarz(ig,l)*wth3(ig,l) 665 ale_int(ig)=ale_int(ig)+0.5*zw2(ig,l)**2 666 n_int(ig)=n_int(ig)+1 667 endif 668 enddo 669 enddo 675 !calcul des flux: q, thetal et thetav 676 do l=1,nlay 677 do ig=1,ngrid 678 wq(ig,l)=fraca(ig,l)*zw2(ig,l)*(zqta(ig,l)*1000.-po(ig,l)*1000.) 679 wthl(ig,l)=fraca(ig,l)*zw2(ig,l)*(ztla(ig,l)-zthl(ig,l)) 680 wthv(ig,l)=fraca(ig,l)*zw2(ig,l)*(ztva(ig,l)-ztv(ig,l)) 681 enddo 682 enddo 683 ! 670 684 ! print*,'avant calcul ale et alp' 671 685 !calcul de ALE et ALP pour la convection 672 do ig=1,ngrid 673 ! Alp_bl(ig)=0.5*rhobarz(ig,lmix_bis(ig))*wth3(ig,lmix(ig)) 674 ! Alp_bl(ig)=0.5*rhobarz(ig,nivcon(ig))*wth3(ig,nivcon(ig)) 675 ! Alp_bl(ig)=0.5*rhobarz(ig,lmix(ig))*wth3(ig,lmix(ig)) 676 ! & *0.1 677 !valeur integree de alp_bl * 0.5: 678 if (n_int(ig).gt.0) then 679 Alp_bl(ig)=0.5*alp_int(ig)/n_int(ig) 680 ! if (Alp_bl(ig).lt.0.) then 681 ! Alp_bl(ig)=0. 682 endif 683 ! endif 684 ! write(18,*),'rhobarz,wth3,Alp',rhobarz(ig,nivcon(ig)), 685 ! s wth3(ig,nivcon(ig)),Alp_bl(ig) 686 ! write(18,*),'ALP_BL',Alp_bl(ig),lmix(ig) 687 ! Ale_bl(ig)=0.5*zw2(ig,lmix_bis(ig))**2 688 ! if (nivcon(ig).eq.1) then 689 ! Ale_bl(ig)=0. 690 ! else 691 !valeur max de ale_bl: 692 Ale_bl(ig)=0.5*zw2(ig,lmix(ig))**2 693 ! & /2. 694 ! & *0.1 695 ! Ale_bl(ig)=0.5*zw2(ig,lmix_bis(ig))**2 696 ! if (n_int(ig).gt.0) then 697 ! Ale_bl(ig)=ale_int(ig)/n_int(ig) 698 ! Ale_bl(ig)=4. 699 ! endif 700 ! endif 701 ! Ale_bl(ig)=0.5*wth2(ig,lmix_bis(ig)) 702 ! Ale_bl(ig)=wth2(ig,nivcon(ig)) 703 ! write(19,*),'wth2,ALE_BL',wth2(ig,nivcon(ig)),Ale_bl(ig) 704 enddo 686 Alp_bl(:)=0. 687 Ale_bl(:)=0. 688 ! print*,'ALE,ALP ,l,zw2(ig,l),Ale_bl(ig),Alp_bl(ig)' 689 do l=1,nlay 690 do ig=1,ngrid 691 Alp_bl(ig)=max(Alp_bl(ig),0.5*rhobarz(ig,l)*wth3(ig,l) ) 692 Ale_bl(ig)=max(Ale_bl(ig),0.5*zw2(ig,l)**2) 693 ! print*,'ALE,ALP',l,zw2(ig,l),Ale_bl(ig),Alp_bl(ig) 694 enddo 695 enddo 696 697 ! print*,'AAAAAAA ',Alp_bl,Ale_bl,lmix 698 699 700 ! TEST. IL FAUT REECRIRE LES ALE et ALP 701 ! Ale_bl(:)=0.5*wmax(:)*wmax(:) 702 ! Alp_bl(:)=0.1*wmax(:)*wmax(:)*wmax(:) 703 705 704 !test:calcul de la ponderation des couches pour KE 706 705 !initialisations … … 782 781 ! print*,'15 OK convect8' 783 782 783 #ifdef wrgrads_thermcell 784 784 if (prt_level.ge.1) print*,'thermcell_main sorties 3D' 785 #ifdef wrgrads_thermcell786 785 #include "thermcell_out3d.h" 787 786 #endif … … 791 790 if (prt_level.ge.1) print*,'thermcell_main FIN OK' 792 791 793 ! if(icount.eq.501) stop'au pas 301 dans thermcell_main'794 792 return 795 793 end … … 827 825 write(6,'(i3,7f10.3)') k,pplay(i,k),ztv(i,k),1000*po(i,k),ztva(i,k),1000*zqla(i,k),f_star(i,k),zw2(i,k) 828 826 enddo 829 ! stop830 827 endif 831 828 enddo
Note: See TracChangeset
for help on using the changeset viewer.