1 : C DDINQT SOURCE CHAT 05/01/12 22:37:56 5004 2 : 3 : SUBROUTINE DERDERINVARIPQT (SIG,Q_SS,T_SS,N) 4 : IMPLICIT INTEGER(I-N) 5 : integer n,i,j 6 : real*8 sig(n),q_ss(6,6),t_ss(6,6),q,t,tolt,aux0,aux1,aux2, 7 : . aux3,aux4,aux5,aux6,pijkl(6,6),wijkl(6,6),cst,snt, 8 : . I_s(6),J2_s(6),J3_s(6) 8 : call Invari_q(sig,n,q) 9 : if (q.lt.1.D-8) then 10 : do i=1,6 11 : do j=1,6 12 : q_ss(i,j)=0.D0 13 : t_ss(i,j)=0.D0 14 : enddo 15 : enddo 16 : return 17 : endif 17 : call DerDerInvariIJJ(sig,pijkl,wijkl,n) 17 : call DerInvariIJJ(sig,I_s,J2_s,J3_s,n) 17 : call Invari_t(sig,n,t) 18 : tolt=1.D-6 19 : t =3.D0*t 20 : if (t.lt.tolt) t=tolt 21 : if (t.gt.(4.D0*atan(1.D0)-tolt)) t=4.D0*atan(1.D0)-tolt 22 : cst=dcos(t) 23 : snt=dsin(t) 24 : aux0=3.D0/(2.D0*q) 25 : aux1=-9.D0/(4.D0*q**3) 26 : aux2=3.D0/(2.D0*q*q)*cst/snt 27 : aux3=-9.D0/(2.D0*q**3)/snt 28 : aux4=-9.D0/(2.D0*q**4)*cst/snt-27.D0/(4.D0*q**4)*cst/snt**3 29 : aux5=81.D0/(4.D0*q**5)/snt**3 30 : aux6=-243.D0/(4.D0*q**6)*cst/snt**3 31 : do i=1,n 32 : do j=1,n 33 : q_ss(i,j)=aux0*pijkl(i,j)+aux1*J2_s(i)*J2_s(j) 34 : t_ss(i,j)=aux2*pijkl(i,j)+aux3*wijkl(i,j)+ 35 : . aux4*J2_s(i)*J2_s(j)+aux6*J3_s(i)*J3_s(j)+ 36 : . aux5*(J2_s(i)*J3_s(j)+J3_s(i)*J2_s(j)) 37 : enddo 38 : enddo 39 : return 40 : end 41 : 42 : 43 :
© Cast3M 2003 - All rights reserved.
Disclaimer