16 INTEGER,
INTENT(IN) :: n_w, l_G
17 REAL(KIND=8),
DIMENSION( n_w, l_G),
INTENT(OUT) :: w
18 REAL(KIND=8),
DIMENSION(2, n_w, l_G),
INTENT(OUT) :: d
19 REAL(KIND=8),
DIMENSION(l_G),
INTENT(OUT) :: p
20 REAL(KIND=8),
DIMENSION(l_G) :: xx, yy
22 REAL(KIND=8) :: zero = 0, one = 1, two = 2, three = 3, six = 6
23 REAL(KIND=8) :: f1, f2, f3, x, y
24 f1(x, y) = one - x - y
27 xx(1) = one/six; xx(2) = two/three; xx(3) = one/six
28 yy(1) = one/six; yy(2) = one/six; yy(3) = two/three
30 w(1, j) = f1(xx(j), yy(j))
33 w(2, j) = f2(xx(j), yy(j))
36 w(3, j) = f3(xx(j), yy(j))
52 INTEGER,
INTENT(IN) :: n_w, l_Gs
53 INTEGER,
INTENT(IN) :: face
54 REAL(KIND=8),
DIMENSION(2, n_w, l_Gs),
INTENT(OUT) :: d
55 REAL(KIND=8),
DIMENSION( n_w, l_Gs),
INTENT(OUT) :: w
56 REAL(KIND=8),
DIMENSION(l_Gs) :: xx, yy
58 REAL(KIND=8) :: zero = 0, one = 1, three=3, half = 0.5d0
59 REAL(KIND=8) :: f1, f2, f3, x, y
64 xx(1) = half + half/sqrt(three)
65 xx(2) = half - half/sqrt(three)
66 yy(1) = half - half/sqrt(three)
67 yy(2) = half + half/sqrt(three)
68 ELSE IF (face==2)
THEN 71 yy(1) = half - half/sqrt(three)
72 yy(2) = half + half/sqrt(three)
74 xx(1) = half - half/sqrt(three)
75 xx(2) = half + half/sqrt(three)
80 w(1,j) = f1(xx(j), yy(j))
83 w(2,j) = f2(xx(j), yy(j))
86 w(3,j) = f3(xx(j), yy(j))
99 INTEGER,
INTENT(IN) :: n_ws, l_Gs
100 REAL(KIND=8),
DIMENSION( n_ws, l_Gs),
INTENT(OUT) :: w
101 REAL(KIND=8),
DIMENSION(1, n_ws, l_Gs),
INTENT(OUT) :: d
102 REAL(KIND=8),
DIMENSION(l_Gs),
INTENT(OUT) :: p
103 REAL(KIND=8),
DIMENSION(l_Gs) :: xx
105 REAL(KIND=8) :: one = 1.d0, two = 2.d0, three = 3.d0
106 REAL(KIND=8) :: f1, f2, x
107 f1(x) = (one - x)/two
108 f2(x) = (x + one)/two
109 xx(1) = - one/sqrt(three)
110 xx(2) = + one/sqrt(three)
113 d(1, 1, j) = - one/two
115 d(1, 2, j) = + one/two
122 INTEGER,
INTENT(IN) :: n_ws
123 REAL(KIND=8),
DIMENSION(n_ws, n_ws),
INTENT(OUT) :: d
125 REAL(KIND=8) :: one = 1.d0, two = 2.d0
subroutine, public element_1d_p1(w, d, p, n_ws, l_Gs)
subroutine, public element_2d_p1(w, d, p, n_w, l_G)
subroutine, public element_1d_p1_at_nodes(d, n_ws)
subroutine, public element_2d_p1_boundary(face, d, w, n_w, l_Gs)