Changeset 2603 for LMDZ5/trunk/libf/dyn3dpar
- Timestamp:
- Jul 25, 2016, 11:31:56 AM (8 years ago)
- Location:
- LMDZ5/trunk/libf/dyn3dpar
- Files:
-
- 28 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/dyn3dpar/advect_new_p.F
r2600 r2603 7 7 USE write_field_p 8 8 USE comconst_mod, ONLY: daysec 9 USE logic_mod, ONLY: conser 10 9 11 IMPLICIT NONE 10 12 c======================================================================= … … 30 32 #include "paramet.h" 31 33 #include "comgeom.h" 32 #include "logic.h"33 34 #include "ener.h" 34 35 … … 116 117 117 118 uav(ij,l)=0.25*(ucov(ij,l)+ucov(ij-iip1,l)) 118 . 119 . +0.25*(ucov(ij+iip1,l)+ucov(ij,l)) 119 120 ENDDO 120 121 … … 249 250 DO l=1,llm 250 251 DO ij=ijb,ije-1 251 252 252 du(ij,l)=du(ij,l)+du2(ij,l)-du1(ij,l) 253 ENDDO 253 254 254 255 DO ij = ijb+iip1-1, ije, iip1 … … 265 266 DO l=1,llm 266 267 DO ij=ijb,ije 267 268 268 dv(ij,l)=dv(ij,l)+dv2(ij,l)-dv1(ij,l) 269 ENDDO 269 270 ENDDO 270 271 c$OMP END DO NOWAIT … … 275 276 DO l=1,llm 276 277 DO ij=ijb,ije 277 278 278 dteta(ij,l)=dteta(ij,l)+dteta2(ij,l)-dteta1(ij,l) 279 ENDDO 279 280 ENDDO 280 281 c$OMP END DO NOWAIT -
LMDZ5/trunk/libf/dyn3dpar/advect_p.F
r2600 r2603 6 6 USE write_field_p 7 7 USE comconst_mod, ONLY: daysec 8 USE logic_mod, ONLY: conser 9 8 10 IMPLICIT NONE 9 11 c======================================================================= … … 29 31 #include "paramet.h" 30 32 #include "comgeom.h" 31 #include "logic.h"32 33 #include "ener.h" 33 34 -
LMDZ5/trunk/libf/dyn3dpar/advtrac_p.F90
r2601 r2603 26 26 include "comdissip.h" 27 27 include "comgeom2.h" 28 include "logic.h"29 28 include "ener.h" 30 29 include "description.h" -
LMDZ5/trunk/libf/dyn3dpar/bernoui_p.F
r1907 r2603 25 25 #include "dimensions.h" 26 26 #include "paramet.h" 27 #include "logic.h"28 27 c 29 28 c Arguments: -
LMDZ5/trunk/libf/dyn3dpar/conf_gcm.F90
r2601 r2603 19 19 iflag_top_bound, mode_top_bound, tau_top_bound, & 20 20 ngroup 21 USE logic_mod, ONLY: fxyhypb, iflag_phys, ok_etat0, ok_gradsfile, & 22 ok_guide, ok_limit, ok_strato, purmats, read_start, & 23 ysinus 21 24 USE serre_mod, ONLY: clon,clat,grossismx,grossismy,dzoomx,dzoomy, & 22 25 alphax,alphay,taux,tauy … … 40 43 include "dimensions.h" 41 44 include "paramet.h" 42 include "logic.h"43 45 include "comdissnew.h" 44 46 include "iniprint.h" -
LMDZ5/trunk/libf/dyn3dpar/convmas1_p.F
r2600 r2603 32 32 #include "dimensions.h" 33 33 #include "paramet.h" 34 #include "logic.h"35 34 36 35 REAL pbaru( ip1jmp1,llm ),pbarv( ip1jm,llm ) -
LMDZ5/trunk/libf/dyn3dpar/convmas2_p.F
r2600 r2603 32 32 #include "dimensions.h" 33 33 #include "paramet.h" 34 #include "logic.h"35 34 36 35 REAL pbaru( ip1jmp1,llm ),pbarv( ip1jm,llm ) -
LMDZ5/trunk/libf/dyn3dpar/convmas_p.F
r2600 r2603 32 32 #include "dimensions.h" 33 33 #include "paramet.h" 34 #include "logic.h"35 34 36 35 REAL pbaru( ip1jmp1,llm ),pbarv( ip1jm,llm ) -
LMDZ5/trunk/libf/dyn3dpar/divgrad_p.F
r1907 r2603 23 23 #include "comgeom.h" 24 24 #include "comdissipn.h" 25 #include "logic.h"26 25 c 27 26 INTEGER klevel -
LMDZ5/trunk/libf/dyn3dpar/dteta1_p.F
r1907 r2603 22 22 #include "dimensions.h" 23 23 #include "paramet.h" 24 #include "logic.h"25 24 26 25 REAL teta( ip1jmp1,llm ),pbaru( ip1jmp1,llm ),pbarv( ip1jm,llm) -
LMDZ5/trunk/libf/dyn3dpar/dynetat0.F
r2601 r2603 12 12 USE comconst_mod, ONLY: cpp, daysec, dtvr, g, im, jm, kappa, 13 13 & lllm, omeg, rad 14 14 USE logic_mod, ONLY: fxyhypb, ysinus 15 15 USE serre_mod, ONLY: clon,clat,grossismx,grossismy 16 16 USE temps_mod, ONLY: annee_ref,day_ref,itau_dyn, … … 40 40 #include "netcdf.inc" 41 41 #include "description.h" 42 #include "logic.h"43 42 #include "iniprint.h" 44 43 -
LMDZ5/trunk/libf/dyn3dpar/dynredem.F
r2601 r2603 12 12 & nivsig,nivsigs 13 13 USE comconst_mod, ONLY: cpp, daysec, dtvr, g, kappa, omeg, rad 14 USE logic_mod, ONLY: fxyhypb, ysinus 14 15 USE serre_mod, ONLY: clon,clat,grossismx,grossismy,dzoomx,dzoomy, 15 16 & taux,tauy … … 27 28 #include "comgeom2.h" 28 29 #include "ener.h" 29 #include "logic.h"30 30 #include "netcdf.inc" 31 31 #include "description.h" -
LMDZ5/trunk/libf/dyn3dpar/dynredem_p.F
r2601 r2603 13 13 & nivsig,nivsigs 14 14 USE comconst_mod, ONLY: cpp, daysec, dtvr, g, kappa, omeg, rad 15 USE logic_mod, ONLY: fxyhypb, ysinus 15 16 USE serre_mod, ONLY: clon,clat,grossismx,grossismy,dzoomx,dzoomy, 16 17 & taux,tauy … … 28 29 #include "comgeom2.h" 29 30 #include "ener.h" 30 #include "logic.h"31 31 #include "netcdf.inc" 32 32 #include "description.h" -
LMDZ5/trunk/libf/dyn3dpar/gcm.F
r2601 r2603 33 33 #endif 34 34 USE comconst_mod, ONLY: cpp, daysec, dtphys, dtvr, g, r, rad 35 USE logic_mod ! all of it, because of copyin clause when calling leapfrog 35 36 USE temps_mod, ONLY: calend,start_time,annee_ref,day_ref, 36 37 & itau_dyn,itau_phy,day_ini,jD_ref,jH_ref,day_end, … … 72 73 #include "comdissnew.h" 73 74 #include "comgeom.h" 74 #include "logic.h"75 75 #include "ener.h" 76 76 #include "description.h" … … 501 501 502 502 !c$OMP PARALLEL DEFAULT(SHARED) COPYIN(/temps/,/logici/,/logicl/) 503 c$OMP PARALLEL DEFAULT(SHARED) COPYIN(/logici/,/logicl/)503 c$OMP PARALLEL DEFAULT(SHARED) 504 504 c Copy all threadprivate variables from temps_mod 505 505 c$OMP1 COPYIN(dt,jD_ref,jH_ref,start_time,hour_ini,day_ini,day_end) 506 506 c$OMP1 COPYIN(annee_ref,day_ref,itau_dyn,itau_phy,itaufin,calend) 507 c Copy all threadprivate variables from logic_mod 508 c$OMP1 COPYIN(purmats,forward,leapf,apphys,statcl,conser,apdiss,apdelq) 509 c$OMP1 COPYIN(saison,ecripar,fxyhypb,ysinus,read_start,ok_guide) 510 c$OMP1 COPYIN(ok_strato,ok_gradsfile,ok_limit,ok_etat0) 511 c$OMP1 COPYIN(iflag_phys,iflag_trac) 507 512 CALL leapfrog_p(ucov,vcov,teta,ps,masse,phis,q,time_0) 508 513 c$OMP END PARALLEL -
LMDZ5/trunk/libf/dyn3dpar/gradiv_p.F
r1907 r2603 21 21 #include "paramet.h" 22 22 #include "comdissipn.h" 23 #include "logic.h"24 23 25 24 INTEGER klevel -
LMDZ5/trunk/libf/dyn3dpar/iniacademic.F90
r2601 r2603 17 17 use exner_milieu_m, only: exner_milieu 18 18 USE comconst_mod, ONLY: cpp, kappa, g, daysec, dtvr, pi, im, jm 19 USE logic_mod, ONLY: iflag_phys, read_start 19 20 USE comvert_mod, ONLY: ap, bp, preff, presnivs, pressure_exner 20 21 USE temps_mod, ONLY: annee_ref, day_ini, day_ref … … 35 36 include "ener.h" 36 37 include "iniprint.h" 37 include "logic.h"38 38 39 39 ! Arguments: -
LMDZ5/trunk/libf/dyn3dpar/initdynav_p.F
r2601 r2603 48 48 #include "comgeom.h" 49 49 #include "ener.h" 50 #include "logic.h"51 50 #include "description.h" 52 51 #include "iniprint.h" -
LMDZ5/trunk/libf/dyn3dpar/initfluxsto_p.F
r2601 r2603 50 50 #include "comgeom.h" 51 51 #include "ener.h" 52 #include "logic.h"53 52 #include "description.h" 54 53 #include "iniprint.h" -
LMDZ5/trunk/libf/dyn3dpar/inithist_p.F
r2601 r2603 50 50 #include "comgeom.h" 51 51 #include "ener.h" 52 #include "logic.h"53 52 #include "description.h" 54 53 #include "iniprint.h" -
LMDZ5/trunk/libf/dyn3dpar/integrd_p.F
r2601 r2603 8 8 USE control_mod, only : planet_type 9 9 USE comconst_mod, ONLY: pi 10 USE logic_mod, ONLY: leapf 10 11 USE comvert_mod, ONLY: ap, bp 11 12 USE temps_mod, ONLY: dt … … 32 33 #include "paramet.h" 33 34 #include "comgeom.h" 34 #include "logic.h"35 35 #include "iniprint.h" 36 36 -
LMDZ5/trunk/libf/dyn3dpar/leapfrog_p.F
r2601 r2603 30 30 USE comvert_mod, ONLY: ap,bp,pressure_exner,presnivs 31 31 USE comconst_mod, ONLY: cpp, dtvr, ihf, dtphys, pi, jmp1 32 USE logic_mod, ONLY: iflag_phys,ok_guide,forward,leapf,apphys, 33 & statcl,conser,apdiss,purmats,ok_strato 32 34 USE temps_mod, ONLY: itaufin,jD_ref,jH_ref,day_ini, 33 35 & day_ref,start_time,dt … … 70 72 #include "comdissnew.h" 71 73 #include "comgeom.h" 72 #include "logic.h"73 74 #include "ener.h" 74 75 #include "description.h" -
LMDZ5/trunk/libf/dyn3dpar/logic_mod.F90
r2600 r2603 2 2 ! $Id$ 3 3 ! 4 ! 5 ! NB: keep items of different kinds in seperate common blocs to avoid 6 ! "misaligned commons" issues 7 !----------------------------------------------------------------------- 8 ! INCLUDE 'logic.h' 4 MODULE logic_mod 9 5 10 COMMON/logicl/ purmats,forward,leapf,apphys, & 11 & statcl,conser,apdiss,apdelq,saison,ecripar,fxyhypb,ysinus & 12 & ,read_start,ok_guide,ok_strato,ok_gradsfile & 13 & ,ok_limit,ok_etat0,hybrid 6 IMPLICIT NONE 14 7 15 COMMON/logici/ iflag_phys,iflag_trac 16 17 LOGICAL purmats,forward,leapf,apphys,statcl,conser, & 18 & apdiss,apdelq,saison,ecripar,fxyhypb,ysinus & 19 & ,read_start,ok_guide,ok_strato,ok_gradsfile & 20 & ,ok_limit,ok_etat0 8 LOGICAL purmats ! true if time stepping is purely Matsuno scheme 9 ! false implies Matsuno-Leapfrog time stepping scheme 10 LOGICAL forward ! true if during forward phase of Matsuno step 11 LOGICAL leapf ! true if during a leapfrog time stepping step 12 LOGICAL apphys ! true if during a time step when physics will be called 13 LOGICAL statcl 14 LOGICAL conser 15 LOGICAL apdiss ! true if during a time step when dissipation will be called 16 LOGICAL apdelq 17 LOGICAL saison 18 LOGICAL ecripar 19 LOGICAL fxyhypb ! true if using hyperbolic function discretization 20 ! for latitudinal grid 21 LOGICAL ysinus ! true if using sine function discretiation 22 ! for latitudinal grid 23 LOGICAL read_start ! true if reading a start.nc file to initialize fields 24 LOGICAL ok_guide ! true if nudging 25 LOGICAL ok_strato 26 LOGICAL ok_gradsfile 27 LOGICAL ok_limit 28 LOGICAL ok_etat0 29 LOGICAL hybrid ! vertical coordinate is hybrid if true (sigma otherwise) 30 ! (only used if disvert_type==2) 31 INTEGER iflag_phys ! type of physics to call: 0 none, 1: phy*** package, 32 ! 2: Held & Suarez, 101-200: aquaplanets & terraplanets 33 INTEGER iflag_trac 21 34 22 logical hybrid ! vertical coordinate is hybrid if true (sigma otherwise) 23 ! (only used if disvert_type==2) 35 !$OMP THREADPRIVATE(purmats,forward,leapf,apphys,statcl,conser, & 36 !$OMP apdiss,apdelq,saison,ecripar,fxyhypb,ysinus, & 37 !$OMP read_start,ok_guide,ok_strato,ok_gradsfile, & 38 !$OMP ok_limit,ok_etat0,hybrid) 39 !$OMP THREADPRIVATE(iflag_phys,iflag_trac) 24 40 25 integer iflag_phys,iflag_trac 26 !$OMP THREADPRIVATE(/logicl/) 27 !$OMP THREADPRIVATE(/logici/) 28 !----------------------------------------------------------------------- 41 !WARNING: when adding a threadprivate variable in this module 42 ! do not forget to add it to the copyin clause when opening an OpenMP 43 ! parallel section. e.g. in gcm before call leapfrog_loc 44 45 END MODULE logic_mod -
LMDZ5/trunk/libf/dyn3dpar/nxgrarot_p.F
r1907 r2603 22 22 #include "paramet.h" 23 23 #include "comdissipn.h" 24 #include "logic.h"25 24 c 26 25 INTEGER klevel -
LMDZ5/trunk/libf/dyn3dpar/tourpot_p.F
r1907 r2603 23 23 #include "paramet.h" 24 24 #include "comgeom.h" 25 #include "logic.h"26 25 27 26 REAL rot( ip1jm,llm ) -
LMDZ5/trunk/libf/dyn3dpar/vlsplt_p.F
r2600 r2603 25 25 #include "dimensions.h" 26 26 #include "paramet.h" 27 #include "logic.h"28 27 29 28 c … … 206 205 #include "dimensions.h" 207 206 #include "paramet.h" 208 #include "logic.h"209 207 c 210 208 c … … 540 538 #include "dimensions.h" 541 539 #include "paramet.h" 542 #include "logic.h"543 540 #include "comgeom.h" 544 541 c … … 927 924 #include "dimensions.h" 928 925 #include "paramet.h" 929 #include "logic.h"930 926 c 931 927 c -
LMDZ5/trunk/libf/dyn3dpar/vlspltgen_p.F
r2600 r2603 33 33 #include "dimensions.h" 34 34 #include "paramet.h" 35 #include "logic.h"36 35 37 36 c -
LMDZ5/trunk/libf/dyn3dpar/vlspltqs_p.F
r2600 r2603 31 31 #include "dimensions.h" 32 32 #include "paramet.h" 33 #include "logic.h"34 33 35 34 c … … 235 234 #include "dimensions.h" 236 235 #include "paramet.h" 237 #include "logic.h"238 236 c 239 237 c … … 586 584 #include "dimensions.h" 587 585 #include "paramet.h" 588 #include "logic.h"589 586 #include "comgeom.h" 590 587 c -
LMDZ5/trunk/libf/dyn3dpar/writedynav_p.F
r2601 r2603 47 47 #include "comgeom.h" 48 48 #include "ener.h" 49 #include "logic.h"50 49 #include "description.h" 51 50 #include "iniprint.h" -
LMDZ5/trunk/libf/dyn3dpar/writehist_p.F
r2601 r2603 47 47 #include "comgeom.h" 48 48 #include "ener.h" 49 #include "logic.h"50 49 #include "description.h" 51 50 #include "iniprint.h"
Note: See TracChangeset
for help on using the changeset viewer.