Changeset 4056 for LMDZ6/trunk/libf/dynphy_lonlat
- Timestamp:
- Jan 12, 2022, 10:54:09 PM (3 years ago)
- Location:
- LMDZ6/trunk/libf/dynphy_lonlat
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/dynphy_lonlat/calfis.F
r4046 r4056 29 29 c Auteur : P. Le Van, F. Hourdin 30 30 c ......... 31 USE infotrac, ONLY: nqtot, niadv,tracers31 USE infotrac, ONLY: nqtot, tracers 32 32 USE control_mod, ONLY: planet_type, nsplit_phys 33 33 #ifdef CPP_PHYS … … 135 135 c ----------------- 136 136 137 INTEGER i,j,l,ig0,ig,iq,i iq137 INTEGER i,j,l,ig0,ig,iq,itr 138 138 REAL zpsrf(ngridmx) 139 139 REAL zplev(ngridmx,llm+1),zplay(ngridmx,llm) … … 281 281 c --------------- 282 282 c 283 itr=0 283 284 DO iq=1,nqtot 284 iiq=niadv(iq) 285 IF(.NOT.tracers(iq)%isAdvected) CYCLE 286 itr = itr + 1 285 287 DO l=1,llm 286 zqfi(1,l,i q) = pq(1,1,l,iiq)287 ig0 = 2288 zqfi(1,l,itr) = pq(1,1,l,iq) 289 ig0 = 2 288 290 DO j=2,jjm 289 291 DO i = 1, iim 290 zqfi(ig0,l,i q) = pq(i,j,l,iiq)292 zqfi(ig0,l,itr) = pq(i,j,l,iq) 291 293 ig0 = ig0 + 1 292 294 ENDDO 293 295 ENDDO 294 zqfi(ig0,l,i q) = pq(1,jjp1,l,iiq)296 zqfi(ig0,l,itr) = pq(1,jjp1,l,iq) 295 297 ENDDO 296 298 ENDDO … … 481 483 lafin_split=lafin.and.isplit==nsplit_phys 482 484 485 ! if (planet_type=="earth") then 483 486 CALL call_physiq(ngridmx,llm,nqtot,tracers(:)%name, 484 487 & debut_split,lafin_split, … … 490 493 & flxwfi,pducov, 491 494 & zdufi,zdvfi,zdtfi,zdqfi,zdpsrf) 492 493 ! if (planet_type=="earth") then494 !495 ! CALL physiq (ngridmx,496 ! . llm,497 ! . debut_split,498 ! . lafin_split,499 ! . jD_cur,500 ! . jH_cur_split,501 ! . zdt_split,502 ! . zplev,503 ! . zplay,504 ! . zphi,505 ! . zphis,506 ! . presnivs,507 ! . zufi,508 ! . zvfi, zrfi,509 ! . ztfi,510 ! . zqfi,511 ! . flxwfi,512 ! . zdufi,513 ! . zdvfi,514 ! . zdtfi,515 ! . zdqfi,516 ! . zdpsrf,517 ! . pducov)518 495 ! 519 496 ! else if ( planet_type=="generic" ) then … … 622 599 pdqfi(:,:,:,:)=0. 623 600 C 601 itr = 0 624 602 DO iq=1,nqtot 625 iiq=niadv(iq) 603 IF(.NOT.tracers(iq)%isAdvected) CYCLE 604 itr = itr + 1 626 605 DO l=1,llm 627 606 DO i=1,iip1 628 pdqfi(i,1,l,i iq) = zdqfi(1,l,iq)629 pdqfi(i,jjp1,l,i iq) = zdqfi(ngridmx,l,iq)607 pdqfi(i,1,l,iq) = zdqfi(1,l,itr) 608 pdqfi(i,jjp1,l,iq) = zdqfi(ngridmx,l,itr) 630 609 ENDDO 631 610 DO j=2,jjm 632 611 ig0=1+(j-2)*iim 633 612 DO i=1,iim 634 pdqfi(i,j,l,i iq) = zdqfi(ig0+i,l,iq)613 pdqfi(i,j,l,iq) = zdqfi(ig0+i,l,itr) 635 614 ENDDO 636 pdqfi(iip1,j,l,i iq) = pdqfi(1,j,l,iq)615 pdqfi(iip1,j,l,iq) = pdqfi(1,j,l,itr) 637 616 ENDDO 638 617 ENDDO -
LMDZ6/trunk/libf/dynphy_lonlat/calfis_loc.F
r4046 r4056 45 45 USE Times 46 46 #endif 47 USE infotrac, ONLY: nqtot, niadv,tracers47 USE infotrac, ONLY: nqtot, tracers 48 48 USE control_mod, ONLY: planet_type, nsplit_phys 49 49 #ifdef CPP_PHYS … … 154 154 c ----------------- 155 155 156 INTEGER i,j,l,ig0,ig,iq,i iq156 INTEGER i,j,l,ig0,ig,iq,itr 157 157 REAL,ALLOCATABLE,SAVE :: zpsrf(:) 158 158 REAL,ALLOCATABLE,SAVE :: zplev(:,:),zplay(:,:) … … 366 366 c 367 367 368 itr = 0 368 369 DO iq=1,nqtot 369 iiq=niadv(iq) 370 IF(.NOT.tracers(iq)%isAdvected) CYCLE 371 itr = itr + 1 370 372 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK) 371 373 DO l=1,llm … … 375 377 i=index_i(ig0) 376 378 j=index_j(ig0) 377 zqfi(ig0,l,i q) = pq(i,j,l,iiq)379 zqfi(ig0,l,itr) = pq(i,j,l,iq) 378 380 enddo 379 381 ENDDO … … 1069 1071 C 1070 1072 !cdir NODEP 1073 itr = 0 1071 1074 DO iq=1,nqtot 1072 iiq=niadv(iq) 1075 IF(.NOT.tracers(iq)%isAdvected) CYCLE 1076 itr = itr + 1 1073 1077 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK) 1074 1078 DO l=1,llm … … 1079 1083 i=index_i(ig0) 1080 1084 j=index_j(ig0) 1081 pdqfi(i,j,l,i iq) = zdqfi(ig0,l,iq)1082 if (i==1) pdqfi(iip1,j,l,i iq) = zdqfi(ig0,l,iq)1085 pdqfi(i,j,l,iq) = zdqfi(ig0,l,itr) 1086 if (i==1) pdqfi(iip1,j,l,iq) = zdqfi(ig0,l,itr) 1083 1087 ENDDO 1084 1088 1085 1089 IF (is_north_pole_dyn) then 1086 1090 DO i=1,iip1 1087 pdqfi(i,1,l,i iq) = zdqfi(1,l,iq)1091 pdqfi(i,1,l,iq) = zdqfi(1,l,itr) 1088 1092 ENDDO 1089 1093 ENDIF … … 1091 1095 IF (is_south_pole_dyn) then 1092 1096 DO i=1,iip1 1093 pdqfi(i,jjp1,l,i iq) = zdqfi(klon,l,iq)1097 pdqfi(i,jjp1,l,iq) = zdqfi(klon,l,itr) 1094 1098 ENDDO 1095 1099 ENDIF -
LMDZ6/trunk/libf/dynphy_lonlat/phylmd/iniphysiq_mod.F90
r4050 r4056 17 17 USE vertical_layers_mod, ONLY : init_vertical_layers 18 18 USE infotrac, ONLY: nqtot,nqo,nbtr,nqCO2,tracers,type_trac,& 19 niadv,conv_flg,pbl_flg,solsym,&19 conv_flg,pbl_flg,solsym,& 20 20 ok_isotopes,ok_iso_verif,ok_isotrac,& 21 21 ok_init_iso,niso_possibles,tnat,& 22 22 alpha_ideal,use_iso,iqiso,iso_indnum,& 23 23 indnum_fn_num,index_trac,& 24 niso,ntraceurs_zone,ntraciso,nqtottr ,itr_indice24 niso,ntraceurs_zone,ntraciso,nqtottr 25 25 #ifdef CPP_StratAer 26 USE infotrac , ONLY: nbtr_bin, nbtr_sulgas, id_OCS_strat, &26 USE infotrac_phy, ONLY: nbtr_bin, nbtr_sulgas, id_OCS_strat, & 27 27 id_SO2_strat, id_H2SO4_strat, id_BIN01_strat 28 28 … … 145 145 ! Initialize tracer names, numbers, etc. for physics 146 146 CALL init_infotrac_phy(nqtot,nqo,nbtr,nqtottr,nqCO2,tracers,type_trac,& 147 niadv,conv_flg,pbl_flg,solsym,&147 conv_flg,pbl_flg,solsym,& 148 148 ok_isotopes,ok_iso_verif,ok_isotrac,& 149 149 ok_init_iso,niso_possibles,tnat,& 150 150 alpha_ideal,use_iso,iqiso,iso_indnum,& 151 151 indnum_fn_num,index_trac,& 152 niso,ntraceurs_zone,ntraciso,itr_indice & 153 #ifdef CPP_StratAer 154 ,nbtr_bin,nbtr_sulgas& 155 ,id_OCS_strat,id_SO2_strat,id_H2SO4_strat,id_BIN01_strat& 156 #endif 157 ) 152 niso,ntraceurs_zone,ntraciso) 158 153 159 154 ! Initializations for Reprobus
Note: See TracChangeset
for help on using the changeset viewer.