37 2 V ,X ,SKEW ,MS ,SENSOR_TAB,
38 3 WEIGHT,IB ,ITASK ,NALE ,NSENSOR , PYTHON, WFEXT)
48#include "implicit_f.inc"
59#include "tabsiz_c.inc"
63 INTEGER ,
INTENT(IN) :: NSENSOR
64 INTEGER,
INTENT(IN) :: NALE(ALE%%SNALE)
66 INTEGER IGRV(NIGRV,*),IB(*)
67 INTEGER WEIGHT(*), ITASK
68 my_real agrv(lfacgrv,*), tf(*), a(3,*), v(3,*), ms(*), x(3,*), skew(lskew,*)
69 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) ,
INTENT(IN) :: SENSOR_TAB
70 TYPE (PYTHON_),
INTENT(INOUT) :: PYTHON
71 DOUBLE PRECISION,
INTENT(INOUT) :: WFEXT
77EXTERNAL :: finter,finter_smooth
91 iadf = iad+itask*nn/nthread
92 iadl = iad-1+(itask+1)*nn/nthread
94 IF (ifunc > 0) ismooth = npc(2*nfunct+ifunc+1)
98 IF(igrv(6,nl)== sensor_tab(k)%SENS_ID) isens=k
103 ts = tt- sensor_tab(isens)%TSTART
108 IF (ismooth == 0)
THEN
109 a0 = fcy*finter(ifunc,(ts-dt1)*fcx,npc,tf,dydx)
110 gama = fcy*finter(ifunc,ts*fcx,npc,tf,dydx)
111 ELSE IF(ismooth > 0)
THEN
112 a0 = fcy*finter_smooth(ifunc,(ts-dt1)*fcx,npc,tf,dydx)
113 gama = fcy*finter_smooth(ifunc,ts*fcx,npc,tf,dydx
116 CALL python_call_funct1d(python, ismooth,(ts-dt1)*fcx, a0)
117 CALL python_call_funct1d(python, ismooth,ts*fcx, gama)
125 IF(n2d==1.AND.isk<=1)
THEN
126#include "vectorize.inc"
131 IF(ib(j)>0 .AND. nale(n1)/=-1)wfextt=wfextt+half*(a0+aa)*ms(n1)*v(n2,n1)*dt1*axi*weight(n1)
133 ELSEIF(n2d==1.AND.isk>1)
THEN
137#include "vectorize.inc"
141 vv = skew(k1,isk)*v(1,n1)+skew(k2,isk)*v(2,n1)+skew(k3,isk)*v(3,n1)
142 a(1,n1)=a(1,n1)+skew(k1,isk)*aa
143 a(2,n1)=a(2,n1)+skew(k2,isk)*aa
144 a(3,n1)=a(3,n1)+skew(k3,isk)*aa
148#include "vectorize.inc"
152 IF(ib(j)>0 .AND. nale(n1)/=-1)wfextt=wfextt+half*(a0+aa)*ms(n1)*v(n2,n1)*dt1*weight(n1)
158#include "vectorize.inc"
161 vv = skew(k1,isk)*v(1,n1)+skew(k2,isk)*v(2,n1)+skew(k3,isk)*v(3,n1)
162 a(1,n1)=a(1,n1)+skew(k1,isk)*aa
163 a(2,n1)=a(2,n1)+skew(k2,isk)*aa
164 a(3,n1)=a(3,n1)+skew(k3,isk)*aa
165 IF(ib(j)>0 .AND. nale(n1)/=-1)wfextt=wfextt+half
174 wfext = wfext + wfextt
subroutine gravit_fvm_fem(igrv, agrv, npc, tf, a, v, x, skew, ms, sensor_tab, weight, ib, itask, nale, nsensor, python, wfext)