- Timestamp:
- Jan 18, 2022, 4:17:25 PM (3 years ago)
- Location:
- trunk/LMDZ.MARS
- Files:
-
- 20 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/README
r2614 r2615 3593 3593 == 18/01/2022 == RV 3594 3594 Open_MP Correction for previous commit: commision of photolysis_mod 3595 3596 == 18/01/2022 == RV 3597 Put all the "save" variables as "!$OMP THREADPRIVATE" in aeronomars -
trunk/LMDZ.MARS/libf/aeronomars/chemthermos.F90
r2042 r2615 55 55 logical,save :: firstcall=.true. 56 56 57 !$OMP THREADPRIVATE(nesptherm,firstcall) 58 57 59 ! Tracer indexes in the GCM: 58 60 integer,save :: g_co2=0 … … 84 86 integer,save :: g_hco2plus=0 85 87 integer,save :: g_elec=0 88 89 !$OMP THREADPRIVATE(g_co2,g_co,g_o,g_o1d,g_o2,g_o3,g_h,g_h2,g_oh,g_ho2,g_h2o2,g_n2,g_h2o_vap) 90 !$OMP THREADPRIVATE(g_n,g_no,g_no2,g_n2d,g_co2plus,g_oplus,g_o2plus,g_coplus,g_cplus,g_nplus,g_noplus,g_n2plus,g_hplus,g_hco2plus,g_elec) 86 91 87 92 ! Tracer indexes in the thermospheric chemistry: -
trunk/LMDZ.MARS/libf/aeronomars/concentrations.F
r2158 r2615 54 54 logical, save :: firstcall = .true. 55 55 56 !$OMP THREADPRIVATE(nbq,niq,aki,cpi,firstcall) 57 56 58 if (firstcall) then 57 59 -
trunk/LMDZ.MARS/libf/aeronomars/conduction.F
r1266 r2615 58 58 59 59 logical,save :: firstcall=.true. 60 61 !$OMP THREADPRIVATE(phitop,firstcall) 60 62 61 63 c----------------------------------------------------------------------- -
trunk/LMDZ.MARS/libf/aeronomars/euvheat.F90
r2042 r2615 56 56 integer,save :: nespeuv ! Number of species considered 57 57 58 !$OMP THREADPRIVATE(nespeuv) 59 58 60 INTEGER :: l,ig,n 59 61 integer,save :: euvmod 60 62 real, allocatable, save :: rm(:,:) ! number density (cm-3) 63 64 !$OMP THREADPRIVATE(euvmod,rm) 65 61 66 real :: zq(ngrid,nlayer,nq) ! local updated tracer quantity 62 67 real :: zt(ngrid,nlayer) ! local updated atmospheric temperature … … 126 131 integer,save :: g_n2d=0 127 132 133 !$OMP THREADPRIVATE(g_co2,g_o,g_o2,g_h2,g_h2o2,g_h2o,g_o3,g_n2,g_n,g_no,g_co,g_h,g_no2,g_oh,g_ho2,g_o1d,g_n2d) 128 134 129 135 logical,save :: firstcall=.true. 136 137 !$OMP THREADPRIVATE(firstcall) 130 138 131 139 ! Initializations and sanity checks: … … 416 424 call hrtherm (ig,nlayer,euvmod,rm,nespeuv,tx,zlocal,zenit,zday,jtot) 417 425 426 427 418 428 ! euveff=0.16 !UV heating efficiency. Following Fox et al. ASR 1996 419 429 !should vary between 19% and 23%. Lower values -
trunk/LMDZ.MARS/libf/aeronomars/hrtherm.F
r2042 r2615 80 80 dn='d' 81 81 end if 82 82 83 if(dn.eq.'n') then 83 84 do i=1,nlayer -
trunk/LMDZ.MARS/libf/aeronomars/iono_h.F90
r2158 r2615 48 48 real*8,save,allocatable :: tauhplus(:,:) 49 49 real*8,save,allocatable :: tauhco2plus(:,:) 50 51 !$OMP THREADPRIVATE(o1d_eq,ho2_eq,oh_eq,h_eq,n2d_eq,no2_eq,o3_eq,no_eq,cplus_eq,coplus_eq,oplus_eq) 52 !$OMP THREADPRIVATE(n2plus_eq,hplus_eq,co2plus_eq,o2plus_eq,noplus_eq,nplus_eq,hco2plus_eq,tauco2,tauo2,tauo3p,tauco,tauh,tauoh,tauho2,tauh2) 53 !$OMP THREADPRIVATE(tauh2o,tauo1d,tauh2o2,tauo3,taun,tauno,taun2,taun2d,tauno2,tauco2plus,tauoplus,tauo2plus,taucoplus,taucplus,taunplus,taunoplus,taun2plus,tauhplus,tauhco2plus) 50 54 51 55 CONTAINS -
trunk/LMDZ.MARS/libf/aeronomars/jthermcalc_e107.F
r2429 r2615 224 224 call interfast 225 225 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 226 226 227 do i=1,nlayer 227 228 ind=auxind(i) … … 314 315 call interfast(wm,wp,auxind,auxcolinp,nlayer, 315 316 $ auxcoltab,nz2,limdown,limup) 317 316 318 do i=1,nlayer 317 319 ind=auxind(i) … … 428 430 call interfast 429 431 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 432 430 433 do i=1,nlayer 431 434 ind=auxind(i) … … 518 521 call interfast 519 522 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 523 520 524 !Correction to include T variation of CO2 cross section 521 525 if(indexint.eq.24) then … … 631 635 call interfast 632 636 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 637 633 638 do i=1,nlayer 634 639 ind=auxind(i) … … 738 743 call interfast 739 744 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 745 740 746 do i=1,nlayer 741 747 ind=auxind(i) … … 835 841 call interfast 836 842 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 843 837 844 do i=1,nlayer 838 845 ind=auxind(i) … … 919 926 call interfast 920 927 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 928 921 929 do i=1,nlayer 922 930 ind=auxind(i) … … 980 988 call interfast 981 989 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 990 982 991 do i=1,nlayer 983 992 ind=auxind(i) … … 1041 1050 call interfast 1042 1051 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 1052 1043 1053 do i=1,nlayer 1044 1054 ind=auxind(i) … … 1095 1105 call interfast 1096 1106 $ (wm,wp,auxind,auxcolinp,nlayer,auxcoltab,nz2,limdown,limup) 1107 1097 1108 do i=1,nlayer 1098 1109 ind=auxind(i) -
trunk/LMDZ.MARS/libf/aeronomars/moldiff.F
r1266 r2615 102 102 real abfac(ncompmoldiff) 103 103 real,save :: dij(ncompmoldiff,ncompmoldiff) 104 105 !$OMP THREADPRIVATE(g_co2,g_co,g_o,g_o1d,g_o2,g_o3,g_h,g_h2) 106 !$OMP THREADPRIVATE(g_oh,g_ho2,g_h2o2,g_n2,g_ar,g_h2o,gcmind) 107 !$OMP THREADPRIVATE(firstcall,dij) 104 108 105 109 ! Initializations at first call -
trunk/LMDZ.MARS/libf/aeronomars/moldiffcoeff.F
r2030 r2615 63 63 integer,save :: g_h2o=0 64 64 65 !$OMP THREADPRIVATE(g_co2,g_co,g_o,g_o1d,g_o2,g_o3,g_h,g_h2,g_oh) 66 !$OMP THREADPRIVATE(g_ho2,g_h2o2,g_n2,g_ar,g_h2o) 67 65 68 integer,save :: gcmind(ncompmoldiff) 66 69 67 70 real dnh 68 71 logical,save :: firstcall=.true. 72 73 !$OMP THREADPRIVATE(gcmind,firstcall) 69 74 70 75 ! Initializations at first call (and some sanity checks) -
trunk/LMDZ.MARS/libf/aeronomars/moldiffcoeff_red.F
r2030 r2615 82 82 real dnh 83 83 logical,save :: firstcall=.true. 84 85 !$OMP THREADPRIVATE(firstcall) 86 84 87 logical,parameter :: outputcoeffs=.false. ! to output 'coeffs.dat' file, 85 88 ! set outputcoeffs=.true. -
trunk/LMDZ.MARS/libf/aeronomars/molvis.F
r1266 r2615 70 70 71 71 logical,save :: firstcall=.true. 72 73 !$OMP THREADPRIVATE(firstcall) 72 74 73 75 c----------------------------------------------------------------------- -
trunk/LMDZ.MARS/libf/aeronomars/param_v4_h.F90
r1888 r2615 65 65 REAL,SAVE,ALLOCATABLE :: jdistot_b(:,:) 66 66 REAL,SAVE,ALLOCATABLE :: jion(:,:,:) 67 68 !$OMP THREADPRIVATE(jfotsout,jdistot,jdistot_b,jion) 67 69 68 70 REAL*8,SAVE,ALLOCATABLE :: Pco2(:,:) … … 205 207 REAL*8,SAVE,ALLOCATABLE :: tminhplus(:) 206 208 REAL*8,SAVE,ALLOCATABLE :: tminhco2plus(:) 209 210 !$OMP THREADPRIVATE(Pco2,Po2,Po3p,Pco,Ph,Poh,Pho2,Ph2,Ph2o,Po1d,Ph2o2,Po3,Pn,Pno,Pno2,Pn2,Pn2d,Pco2plus,Poplus,Po2plus,Pelect,Pcoplus,Pcplus,Pnplus,Pnoplus,Pn2plus,Phplus,Phco2plus,Pco2tot,Po2tot,Po3ptot,Pcotot) 211 !$OMP THREADPRIVATE(Phtot,Pohtot,Pho2tot,Ph2tot,Ph2otot,Po1dtot,Ph2o2tot,Po3tot,Pntot,Pnotot,Pno2tot,Pn2tot,Pn2dtot,Pco2plustot,Poplustot,Po2plustot,Pelecttot,Pcoplustot,Pcplustot,Pnplustot,Pnoplustot,Pn2plustot) 212 !$OMP THREADPRIVATE(Phplustot,Phco2plustot,Lco2,Lo2,Lo3p,Lco,Lh,Loh,Lho2,Lh2,Lh2o,Lo1d,Lh2o2,Lo3,Ln,Lno,Lno2,Ln2,Ln2d, Lco2plus,Loplus,Lo2plus,Lelect,Lcoplus,Lcplus,Lnplus,Lnoplus,Ln2plus,Lhplus,Lhco2plus,Lco2tot) 213 !$OMP THREADPRIVATE(Lo2tot,Lo3ptot,Lcotot,Lhtot,Lohtot,Lho2tot,Lh2tot,Lh2otot,Lo1dtot,Lh2o2tot,Lo3tot,Lntot,Lnotot,Lno2tot,Ln2tot,Ln2dtot,Lco2plustot,Loplustot,Lo2plustot,Lelecttot,Lcoplustot,Lcplustot,Lnplustot) 214 !$OMP THREADPRIVATE(Lnoplustot,Ln2plustot,Lhplustot,Lhco2plustot,tminco2,tmino2,tmino3p,tminco,tminh,tminoh,tminho2,tminh2,tminh2o,tmino1d,tminh2o2,tmino3,tminn,tminno,tminno2,tminn2,tminn2d,tminco2plus,tminoplus) 215 !$OMP THREADPRIVATE(tmino2plus,tmincoplus,tmincplus,tminnplus,tminnoplus,tminn2plus,tminhplus,tminhco2plus) 207 216 208 217 CONTAINS -
trunk/LMDZ.MARS/libf/aeronomars/paramfoto_compact.F
r2151 r2615 2945 2945 logical firstcall 2946 2946 save firstcall 2947 2948 !$OMP THREADPRIVATE(firstcall) 2949 2947 2950 data firstcall /.true./ 2948 2951 -
trunk/LMDZ.MARS/libf/aeronomars/perosat.F
r2311 r2615 54 54 REAL psat_hpa ! pression saturante (hPa) 55 55 logical,save :: firstcall=.true. 56 57 !$OMP THREADPRIVATE(firstcall) 56 58 57 59 c Pour diagnostique : -
trunk/LMDZ.MARS/libf/aeronomars/photochemistry.F90
r2554 r2615 89 89 integer :: lswitch 90 90 logical, save :: firstcall = .true. 91 92 !$OMP THREADPRIVATE(firstcall) 93 91 94 logical :: jionos ! switch for J parameterization 92 95 … … 133 136 integer,save :: i_do2 = 0 134 137 integer,save :: i_hdo2 = 0 138 139 !$OMP THREADPRIVATE(i_co2plus,i_oplus,i_o2plus,i_noplus,i_coplus,i_cplus,i_n2plus,i_nplus,i_hplus ,i_hco2plus,i_hcoplus,i_h2oplus,i_h3oplus,i_ohplus,i_elec,i_hdo,i_od,i_d,i_hd,i_do2,i_hdo2) 135 140 136 141 !integer,parameter :: i_co2plus = 18 … … 3915 3920 integer :: l, iesp 3916 3921 logical,save :: firstcall = .true. 3922 3923 !$OMP THREADPRIVATE(firstcall) 3917 3924 3918 3925 ! first call initializations -
trunk/LMDZ.MARS/libf/aeronomars/photolysis_online.F
r2489 r2615 979 979 980 980 logical, save :: delta = .true. 981 982 !$OMP THREADPRIVATE(delta) 981 983 982 984 !_______________________________________________________________________ -
trunk/LMDZ.MARS/libf/aeronomars/surfacearea.F
r2563 r2615 56 56 57 57 logical, save :: firstcall = .true. 58 59 !$OMP THREADPRIVATE(factor_ice, factor_dust,firstcall) 58 60 59 61 !========================================================================== -
trunk/LMDZ.MARS/libf/aeronomars/thermosphere.F
r2467 r2615 39 39 INTEGER :: l,ig 40 40 logical,save :: firstcall=.true. 41 42 !$OMP THREADPRIVATE(firstcall) 41 43 42 44 if (firstcall) then -
trunk/LMDZ.MARS/libf/aeronomars/types_asis.F90
r1495 r2615 31 31 type(z4spec), allocatable, save :: indice_4(:) 32 32 33 !$OMP THREADPRIVATE(indice_phot,indice_3,indice_4) 34 33 35 end module types_asis
Note: See TracChangeset
for help on using the changeset viewer.