annotate gcc/testsuite/gfortran.dg/pr79315.f90 @ 132:d34655255c78

update gcc-8.2
author mir3636
date Thu, 25 Oct 2018 10:21:07 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 ! { dg-do compile }
kono
parents:
diff changeset
2 ! { dg-require-effective-target pthread }
kono
parents:
diff changeset
3 ! { dg-options "-Ofast -ftree-parallelize-loops=4" }
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 SUBROUTINE wsm32D(t, &
kono
parents:
diff changeset
6 w, &
kono
parents:
diff changeset
7 den, &
kono
parents:
diff changeset
8 p, &
kono
parents:
diff changeset
9 delz, &
kono
parents:
diff changeset
10 its,&
kono
parents:
diff changeset
11 ite, &
kono
parents:
diff changeset
12 kts, &
kono
parents:
diff changeset
13 kte &
kono
parents:
diff changeset
14 )
kono
parents:
diff changeset
15 REAL, DIMENSION( its:ite , kts:kte ), &
kono
parents:
diff changeset
16 INTENT(INOUT) :: &
kono
parents:
diff changeset
17 t
kono
parents:
diff changeset
18 REAL, DIMENSION( ims:ime , kms:kme ), &
kono
parents:
diff changeset
19 INTENT(IN ) :: w, &
kono
parents:
diff changeset
20 den, &
kono
parents:
diff changeset
21 p, &
kono
parents:
diff changeset
22 delz
kono
parents:
diff changeset
23 REAL, DIMENSION( its:ite , kts:kte ) :: &
kono
parents:
diff changeset
24 qs, &
kono
parents:
diff changeset
25 xl, &
kono
parents:
diff changeset
26 work1, &
kono
parents:
diff changeset
27 work2, &
kono
parents:
diff changeset
28 qs0, &
kono
parents:
diff changeset
29 n0sfac
kono
parents:
diff changeset
30 diffus(x,y) = 8.794e-5*x**1.81/y
kono
parents:
diff changeset
31 diffac(a,b,c,d,e) = d*a*a/(xka(c,d)*rv*c*c)+1./(e*diffus(c,b))
kono
parents:
diff changeset
32 venfac(a,b,c) = (viscos(b,c)/diffus(b,a))**(.3333333) &
kono
parents:
diff changeset
33 /viscos(b,c)**(.5)*(den0/c)**0.25
kono
parents:
diff changeset
34 do loop = 1,loops
kono
parents:
diff changeset
35 xa=-dldt/rv
kono
parents:
diff changeset
36 do k = kts, kte
kono
parents:
diff changeset
37 do i = its, ite
kono
parents:
diff changeset
38 tr=ttp/t(i,k)
kono
parents:
diff changeset
39 if(t(i,k).lt.ttp) then
kono
parents:
diff changeset
40 qs(i,k) =psat*(tr**xa)*exp(xb*(1.-tr))
kono
parents:
diff changeset
41 endif
kono
parents:
diff changeset
42 qs0(i,k) =psat*(tr**xa)*exp(xb*(1.-tr))
kono
parents:
diff changeset
43 enddo
kono
parents:
diff changeset
44 do i = its, ite
kono
parents:
diff changeset
45 if(t(i,k).ge.t0c) then
kono
parents:
diff changeset
46 work1(i,k) = diffac(xl(i,k),p(i,k),t(i,k),den(i,k),qs(i,k))
kono
parents:
diff changeset
47 endif
kono
parents:
diff changeset
48 work2(i,k) = venfac(p(i,k),t(i,k),den(i,k))
kono
parents:
diff changeset
49 enddo
kono
parents:
diff changeset
50 enddo
kono
parents:
diff changeset
51 enddo ! big loops
kono
parents:
diff changeset
52 END SUBROUTINE wsm32D