28 SUBROUTINE accdtdc(EFTSK ,ELTSK ,IENUNL ,ALPHA_DC, A ,MS ,ITAB )
32#include "implicit_f.inc"
36 INTEGER EFTSK ,ELTSK ,IENUNL(2,*), ITAB(*)
38 . a(3,*) ,alpha_dc(*),ms(*)
44 . am(3),ad(3),alpha_1,f1(3),f2(3),mss_1
51 !------------------------------------------------
52#include "vectorize.inc"
56 IF (
max(alpha_dc(n1),alpha_dc(n2))<=one) cycle
57 IF (
max(ms(n1),ms(n2))==zero) cycle
58 IF (ms(n1)==zero)
THEN
61 f1(1:3) = ms(n1)*a(1:3,n1)
63 IF (ms(n2)==zero)
THEN
66 f2(1:3) = ms(n2)*a(1:3,n2)
68 mss_1 = one/(ms(n1)+ms(n2))
69 am(1:3) = (f1(1:3)+f2(1:3))*mss_1
70 ad(1:3) = (f2(1:3)-f1(1:3))*mss_1
71 alpha_1 =one/
max(alpha_dc(n1),alpha_dc(n2))
72 a(1:3,n1) = am(1:3) - ad(1:3)*alpha_1
73 a(1:3,n2) = am(1:3) + ad(1:3)*alpha_1
subroutine accdtdc(eftsk, eltsk, ienunl, alpha_dc, a, ms, itab)