Changeset 2458
- Timestamp:
- Mar 9, 2016, 10:27:25 AM (9 years ago)
- Location:
- LMDZ5/trunk/libf/phylmd
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/cv3_routines.F90
r2420 r2458 75 75 elcrit = 0.0003 76 76 tlcrit = -55.0 77 ! CR+JYG: shedding coefficient (used when iflag_mix_adiab=1) 78 coef_peel = 0.25 77 79 ! IM lu dans physiq.def via conf_phys.F90 epmax = 0.993 78 80 … … 121 123 READ (99, *, END=9998) tau_stop 122 124 READ (99, *, END=9998) ok_intermittent 125 READ (99, *, END=9998) coef_peel 123 126 9998 CONTINUE 124 127 CLOSE (99) … … 1951 1954 ! ori do 400 k=1,nlp 1952 1955 ! ori do 390 j=1,nlp 1956 !yor! commented original : 1957 ! DO j = 1, nl 1958 ! DO k = 1, nl 1959 ! DO i = 1, ncum 1960 ! qent(i, k, j) = rr(i, j) 1961 ! uent(i, k, j) = u(i, j) 1962 ! vent(i, k, j) = v(i, j) 1963 ! elij(i, k, j) = 0.0 1964 !!ym ment(i,k,j)=0.0 1965 !!ym sij(i,k,j)=0.0 1966 ! END DO 1967 ! END DO 1968 ! END DO 1969 !yor! optim : 1953 1970 DO j = 1, nl 1954 DO k = 1, nl 1955 DO i = 1, ncum 1956 qent(i, k, j) = rr(i, j) 1957 uent(i, k, j) = u(i, j) 1958 vent(i, k, j) = v(i, j) 1959 elij(i, k, j) = 0.0 1960 !ym ment(i,k,j)=0.0 1961 !ym sij(i,k,j)=0.0 1962 END DO 1963 END DO 1964 END DO 1971 DO k = 1, nl 1972 qent(1:ncum, k, j) = rr(1:ncum, j) 1973 uent(1:ncum, k, j) = u(1:ncum, j) 1974 vent(1:ncum, k, j) = v(1:ncum, j) 1975 END DO 1976 END DO 1977 elij(1:ncum, 1:nl, 1:nl) = 0. 1965 1978 1966 1979 !ym … … 2276 2289 ! MAF: renormalisation de MENT 2277 2290 CALL zilch(zm, nloc*na) 2291 2292 !yor! commented orig 2293 ! DO jm = 1, nl 2294 ! DO im = 1, nl 2295 ! DO il = 1, ncum 2296 ! zm(il, im) = zm(il, im) + (1.-sij(il,im,jm))*ment(il, im, jm) 2297 ! END DO 2298 ! END DO 2299 ! END DO 2300 !yor! optim 2278 2301 DO jm = 1, nl 2279 DO im = 1, nl 2280 DO il = 1, ncum 2281 zm(il, im) = zm(il, im) + (1.-sij(il,im,jm))*ment(il, im, jm) 2282 END DO 2283 END DO 2284 END DO 2302 DO im = 1, nl 2303 !DO il = 1, ncum 2304 zm(1:ncum, im) = zm(1:ncum, im) + (1.-sij(1:ncum,im,jm))*ment(1:ncum, im, jm) 2305 !END DO 2306 END DO 2307 END DO 2308 !! 2285 2309 2286 2310 DO jm = 1, nl … … 2294 2318 END DO 2295 2319 2296 DO jm = 1, nl 2297 DO im = 1, nl 2298 DO il = 1, ncum 2299 qents(il, im, jm) = qent(il, im, jm) 2300 ments(il, im, jm) = ment(il, im, jm) 2301 END DO 2302 END DO 2303 END DO 2320 2321 !yor! commented original 2322 ! DO jm = 1, nl 2323 ! DO im = 1, nl 2324 ! DO il = 1, ncum 2325 ! qents(il, im, jm) = qent(il, im, jm) 2326 ! ments(il, im, jm) = ment(il, im, jm) 2327 ! END DO 2328 ! END DO 2329 ! END DO 2330 !yor! replaced 2331 qents(1:ncum, 1:nl, 1:nl) = qent(1:ncum, 1:nl, 1:nl) !yor! ncum?=nloc , nd?=na ?? 2332 ments(1:ncum, 1:nl, 1:nl) = ment(1:ncum, 1:nl, 1:nl) 2304 2333 2305 2334 RETURN … … 3298 3327 END DO 3299 3328 3300 DO k = 1, i 3301 DO j = i + 1, nl + 1 3302 DO il = 1, ncum 3303 IF (i<=inb(il) .AND. j<=(inb(il)+1)) THEN 3304 amp1(il) = amp1(il) + ment(il, k, j) 3305 END IF 3306 END DO 3307 END DO 3329 DO j = i + 1, nl + 1 3330 DO k = 1, i 3331 !yor! reverted j and k loops 3332 DO il = 1, ncum 3333 !yor! IF (i<=inb(il) .AND. j<=(inb(il)+1)) THEN ! the second condition implies the first ! 3334 IF (j<=(inb(il)+1)) THEN 3335 amp1(il) = amp1(il) + ment(il, k, j) 3336 END IF 3337 END DO 3338 END DO 3308 3339 END DO 3309 3340 … … 3311 3342 DO j = i, nl + 1 ! newvecto: nl au lieu nl+1? 3312 3343 DO il = 1, ncum 3313 IF (i<=inb(il) .AND. j<=inb(il)) THEN 3344 !yor! IF (i<=inb(il) .AND. j<=inb(il)) THEN ! the second condition implies the 1st ! 3345 IF (j<=inb(il)) THEN 3314 3346 ad(il) = ad(il) + ment(il, j, k) 3315 3347 END IF … … 3767 3799 END DO 3768 3800 END DO 3769 DO i = 1, nl3770 DO j= 1, nl3801 DO j = 1, nl !yor! inverted i and j loops 3802 DO i = 1, nl 3771 3803 DO il = 1, ncum 3772 3804 IF (iflag(il)<=1) THEN … … 3839 3871 END DO 3840 3872 3873 !yor! commented original 3874 ! DO i = 1, nl 3875 ! DO k = i, nl 3876 ! DO n = 1, i - 1 3877 ! DO il = 1, ncum 3878 ! IF (i>=icb(il) .AND. i<=inb(il) .AND. k<=inb(il)) THEN 3879 ! up1(il, k, i) = up1(il, k, i) + ment(il, n, k) 3880 ! dn1(il, k, i) = dn1(il, k, i) - ment(il, k, n) 3881 ! END IF 3882 ! END DO 3883 ! END DO 3884 ! END DO 3885 ! END DO 3886 !yor! replaced with 3841 3887 DO i = 1, nl 3842 3888 DO k = i, nl 3843 3889 DO n = 1, i - 1 3844 3890 DO il = 1, ncum 3845 IF (i>=icb(il) .AND. i<=inb(il) .AND. k<=inb(il)) THEN 3846 up1(il, k, i) = up1(il, k, i) + ment(il, n, k) 3847 dn1(il, k, i) = dn1(il, k, i) - ment(il, k, n) 3891 IF (i>=icb(il) .AND. k<=inb(il)) THEN ! yor ! as i always <= k 3892 up1(il, k, i) = up1(il, k, i) + ment(il, n, k) 3848 3893 END IF 3849 3894 END DO … … 3851 3896 END DO 3852 3897 END DO 3898 DO i = 1, nl 3899 DO n = 1, i - 1 3900 DO k = i, nl 3901 DO il = 1, ncum 3902 IF (i>=icb(il) .AND. k<=inb(il)) THEN ! yor ! i always <= k 3903 dn1(il, k, i) = dn1(il, k, i) - ment(il, k, n) 3904 END IF 3905 END DO 3906 END DO 3907 END DO 3908 END DO 3909 !yor! end replace 3853 3910 3854 3911 DO i = 1, nl -
LMDZ5/trunk/libf/phylmd/cv3p1_closure.F90
r2420 r2458 82 82 REAL mad(nloc, nd), me(nloc, nd), betalim(nloc, nd), beta_coef(nloc, nd) 83 83 REAL med(nloc, nd), md(nloc,nd) 84 REAL coef_peel 85 PARAMETER (coef_peel=0.25) 84 !jyg< 85 ! coef_peel is now in the common cv3_param 86 !! REAL coef_peel 87 !! PARAMETER (coef_peel=0.25) 88 !>jyg 86 89 87 90 REAL sigmax -
LMDZ5/trunk/libf/phylmd/cv3p2_closure.F90
r2420 r2458 89 89 REAL, DIMENSION (nloc, nd) :: mad, me, betalim, beta_coef 90 90 REAL, DIMENSION (nloc, nd) :: med, md 91 REAL :: coef_peel 92 PARAMETER (coef_peel=0.25) 91 !jyg< 92 ! coef_peel is now in the common cv3_param 93 !! REAL :: coef_peel 94 !! PARAMETER (coef_peel=0.25) 95 !>jyg 93 96 94 97 REAL :: sigmax -
LMDZ5/trunk/libf/phylmd/cv3param.h
r2398 r2458 14 14 real pbcrit, ptcrit 15 15 real elcrit, tlcrit 16 real coef_peel 16 17 real omtrain 17 18 real dtovsh, dpbase, dttrig … … 25 26 ,pbcrit, ptcrit & 26 27 ,elcrit, tlcrit & 28 ,coef_peel & 27 29 ,omtrain & 28 30 ,dtovsh, dpbase, dttrig &
Note: See TracChangeset
for help on using the changeset viewer.