39#include "implicit_f.inc"
48 INTEGER ,
INTENT(IN) :: NEL,NSENSOR
49 INTEGER ,
DIMENSION(NIXR,NUMELR) ,
INTENT(IN)
50DIMENSION(NEL) ,
INTENT(IN) ::
for,mom
51 TYPE (SENSOR_STR_)
DIMENSION(NSENSOR)INTENT(INOUT)
55 INTEGER :: I,J,SPRING_ID,ISENS,SPR_SKW,SEN_SKW,,IDIR_M
56 my_real :: fz,my,ftens,fcomp,mflex
58 my_real ,
DIMENSION(LSKEW,NUMSKW) :: skew
64 IF (sensor_tab(j)%TYPE == 19)
THEN
66 sen_skw = sensor_tab(isens)%IPARAM(3)
67 spr_skw = sensor_tab(isens)%IPARAM(4)
68 idir_f = sensor_tab(isens)%IPARAM(5)
69 idir_m = sensor_tab(isens)%IPARAM(6)
71 ftens = sensor_tab(isens)%RPARAM(2)
72 fcomp = sensor_tab(isens)%RPARAM(3)
73 mflex = sensor_tab(isens)%RPARAM(4)
74 mext = sensor_tab(isens)%RPARAM(5)
84 IF (sensor_tab(isens)%IPARAM(1) == spring_id)
THEN
93 IF (sen_skw /= spr_skw)
THEN
94 fgx = skew(1,spr_skw)*ff(1)+skew(4,spr_skw)*ff(2)+skew(7,spr_skw)*ff(3)
95 fgy = skew(2,spr_skw)*ff(1)+skew(5,spr_skw)*ff(2)+skew(8,spr_skw)*ff(3)
96 fgz = skew(3,spr_skw)*ff(1)+skew(6,spr_skw)*ff(2)+skew(9,spr_skw)*ff(3)
97 ff(1) = skew(1,sen_skw)*fgx+skew(2,sen_skw)*fgy+skew(3,sen_skw)*fgz
98 ff(2) = skew(4,sen_skw)*fgx+skew(5,sen_skw)*fgy+skew(
99 ff(3) = skew(7,sen_skw)*fgx+skew(8,sen_skw)*fgy+skew(9,sen_skw)*fgz
100 mgx = skew(1,spr_skw)*mm(1)+skew
101 mgy = skew(2,spr_skw)*mm(1)+skew(5,spr_skw)*mm(2)+skew(8,spr_skw)*mm(3)
102 mgz = skew(3,spr_skw)*mm(1)+skew(6,spr_skw)*mm(2)+skew(9,spr_skw)*mm(3)
103 mm(1) = skew(1,sen_skw)*mgx+skew(2,sen_skw)*mgy+skew(3,sen_skw)*mgz
104 mm(2) = skew(4,sen_skw)*mgx+skew(5,sen_skw)*mgy+skew(6,sen_skw)*mgz
105 mm(3) = skew(7,sen_skw)*mgx+skew(8,sen_skw)*mgy+skew(9,sen_skw)*mgz
121 sensor_tab(isens)%VAR(1) = fz
122 sensor_tab(isens)%VAR(2) = my
123 sensor_tab(isens)%VAR(3) = one