30 2 NI ,DNIDR ,DNIDS ,DNIDT )
34#include
"implicit_f.inc"
40 2 ni(16) ,dnidr(16),dnids(16),dnidt(16)
45 . u_m_r,u_p_r,u_m_s,u_p_s,u_m_t,u_p_t,
46 . ums_umt,ums_upt,ups_umt,ups_upt,
47 . umr_ums,umr_ups,upr_ums,upr_ups,
48 . umt_umr,umt_upr,upt_umr,upt_upr,
142 u_m_r = half*(one - r)
143 u_p_r = half*(one + r)
145 u_m_s = half*(one - s)
146 u_p_s = half*(one + s)
148 u_m_t = half*(one - t)
149 u_p_t = half*(one + t)
151 ums_umt = u_m_s * u_m_t
152 ums_upt = u_m_s * u_p_t
153 ups_umt = u_p_s * u_m_t
154 ups_upt = u_p_s * u_p_t
156 umr_ums = u_m_r * u_m_s
157 umr_ups = u_m_r * u_p_s
158 upr_ums = u_p_r * u_m_s
159 upr_ups = u_p_r * u_p_s
161 umt_umr = u_m_t * u_m_r
162 umt_upr = u_m_t * u_p_r
163 upt_umr = u_p_t * u_m_r
164 upt_upr = u_p_t * u_p_r
166 ni(1) = u_m_r * ums_umt * (-r-t-one)
167 ni(2) = u_m_r * ums_upt * (-r+t-one)
168 ni(3) = u_p_r * ums_upt * ( r+t-one)
169 ni(4) = u_p_r * ums_umt * ( r-t-one)
170 ni(5) = u_m_r * ups_umt * (-r-t-one)
171 ni(6) = u_m_r * ups_upt * (-r+t-one)
172 ni(7) = u_p_r * ups_upt * ( r+t-one)
173 ni(8) = u_p_r * ups_umt * ( r-t-one)
175 dnidr(1) = -ums_umt * (-half*t - r)
176 dnidr(2) = -ums_upt * ( half*t - r)
177 dnidr(3) = ums_upt * ( half*t + r)
178 dnidr(4) = ums_umt * (-half*t + r)
179 dnidr(5) = -ups_umt * (-half*t - r)
180 dnidr(6) = -ups_upt * ( half*t - r)
181 dnidr(7) = ups_upt * ( half*t + r)
182 dnidr(8) = ups_umt * (-half*t + r)
184 dnids(1) = -umt_umr * (-r-t-one)*half
185 dnids(2) = -upt_umr * (-r+t-one)*half
186 dnids(3) = -upt_upr * ( r+t-one)*half
187 dnids(4) = -umt_upr * ( r-t-one)*half
188 dnids(5) = umt_umr * (-r-t-one)*half
189 dnids(6) = upt_umr * (-r+t-one)*half
190 dnids(7) = upt_upr * ( r+t-one)*half
191 dnids(8) = umt_upr * ( r-t-one)*half
193 dnidt(1) = -umr_ums * (-half*r - t)
194 dnidt(2) = umr_ums * (-half*r + t)
195 dnidt(3) = upr_ums * (+half*r + t)
196 dnidt(4) = -upr_ums * (+half*r - t)
197 dnidt(5) = -umr_ups * (-half*r - t)
198 dnidt(6) = umr_ups * (-half*r + t)
199 dnidt(7) = upr_ups * (+half*r + t)
200 dnidt(8) = -upr_ups * (+half*r - t)
209 dnidt(10) = a * u_m_s
210 dnidt(14) = a * u_p_s
211 dnids(10) = -a * u_p_t
212 dnids(12) = -a * u_m_t
215 dnidr(10) = a * ums_upt
216 dnidr(12) = a * ums_umt
217 dnidr(14) = a * ups_upt
218 dnidr(16) = a * ups_umt
231 dnidr(9) = -a * u_m_s
232 dnidr(13) = -a * u_p_s
238 dnids(9) = -a * u_m_r
239 dnids(11) = -a * u_p_r
242 dnidt(9) = a * umr_ums
243 dnidt(11) = a * upr_ums
244 dnidt(13) = a * umr_ups
245 dnidt(15) = a * upr_ups