36 . JHBE,MLWI,ILAY,KCVT,IOR_TSH,
37 . ICSTR,NPTR,NPTS,NEL,F_EXP,EVAR )
42 use element_mod ,
only : nixs
46#include "implicit_f.inc"
55 INTEGER ,
INTENT(IN) :: JHBE,ILAY,MLWI,KCVT,IOR_TSH,
57 INTEGER ,
DIMENSION(NIXS,NUMELS),
INTENT(IN) :: IXS
58 my_real ,
INTENT(IN) :: F_EXP
59 my_real ,
DIMENSION(3,MVSIZ),
INTENT(OUT) :: evar
60 my_real ,
DIMENSION(3,NUMNOD),
INTENT(IN) :: x
61 TYPE (ELBUF_STRUCT_),
TARGET :: ELBUF_TAB
66 . dir(mvsiz,2),dirb(mvsiz,2)
67 INTEGER I,IR,IS,IT,JJ(4)
69 TYPE(g_bufel_) ,
POINTER :: GBUF
70 TYPE(L_BUFEL_) ,
POINTER :: LBUF
72 evar(1:3,1:nel) = zero
79 gbuf => elbuf_tab%GBUF
83 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
84 IF (mlwi == 12 .OR. mlwi == 14)
THEN
86 evar(1:2,i) = lbuf%EPE(jj(1:2) + i)
89 ELSEIF (mlwi /= 49 )
THEN
91 evar(1:2,i) = lbuf%STRA(jj(1:2) + i)
92 evar(3,i) = half*lbuf%STRA(jj(4) + i)
97 IF (mlwi == 12 .OR. mlwi == 14)
THEN
100 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
102 evar(1:2,i) = evar(1:2,i)+lbuf%EPE(jj(1:2) + i)
103 evar(3,i) = evar(3,i)+half*lbuf%EPE(jj(4) + i)
107 ELSEIF (mlwi /= 49 )
THEN
110 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
112 evar(1:2,i) = evar(1:2,i)+lbuf%STRA(jj(1:2) + i)
113 evar(3,i) = evar(3,i)+ half*lbuf%STRA(jj(4) + i)
119 evar(1:3,1:nel) = f_exp*evar(1:3,1:nel)
124 dir(i,1:2)= gbuf%GAMA(jj(1:2) + i)
126 ELSEIF(ior_tsh==2)
THEN
131 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
133 dir(i,1:2)= lbuf%GAMA(jj(1:2) + i)
136 CALL tsh_dir2(x,ixs,dir,dirb,icstr,nel)
subroutine h3d_fld_strain(elbuf_tab, x, ixs, jhbe, mlwi, ilay, kcvt, ior_tsh, icstr, nptr, npts, nel, f_exp, evar)