Numérotation des lignes :

C GRADIG    SOURCE    AM        11/05/26    21:15:36     6982      subroutine GRADIG (da, force, q, force_prec, Xkapai,     & Xksii, Xkapa_prec, Xksi_prec, Gradgs, Xkapa, Xksi)C     Routine permettant le calcul des dÃ©rivÃ©es de la loi d'Ã©coulement par rapport Ã  l'effort et au vecteur force et d'Ã©crouissage         IMPLICIT INTEGER(I-N)        IMPLICIT REAL*8(A-H,O-Z)        DIMENSION da(20), force(5), q(5), force_prec(5)        DIMENSION Gradgs(5), Xk19(4), term_Gradgs1(4)*        a=da(8)        b=da(9)        c=da(10)        d=da(11)        e=da(12)        f=da(13)         gamma=1        gamma_prec=1         if (force(1).le.0) then        den1=0        den2=0        else        den1=q(5)*a*((force(1))**c)*((gamma-force(1))**d)        den2=q(5)*b*((force(1))**e)*((gamma-force(1))**f)        endif         Xk11 = force(2)/den1        Xk12 = force(3)/den2        Xk13 = force(4)/den1        Xk14 = force(5)/den2         Xk15 = q(1)/q(5)        Xk16 = q(2)/q(5)        Xk17 = q(3)/q(5)        Xk18 = q(4)/q(5)        Xk19(1) = Xk11-Xk15        Xk19(2) = Xk12-Xk16        Xk19(3) = Xk13-Xk17        Xk19(4) = Xk14-Xk18*        term_Gradgs1(1) = Xk19(1)*force(2)*d/den1*     & (2*force(1)-gamma*(1-Xkapai))/     & ((gamma-force(1))*(Xkapai*gamma+force(1)))        term_Gradgs1(2) = Xk19(2)*force(3)*f/den2*     & (2*force(1)-gamma*(1-Xksii))/     & ((gamma-force(1))*(Xksii*gamma+force(1)))        term_Gradgs1(3) = Xk19(3)*force(4)*d/den1*     & (2*force(1)-gamma*(1-Xkapai))/     & ((gamma-force(1))*(Xkapai*gamma+force(1)))        term_Gradgs1(4) = Xk19(4)*force(5)*f/den2*     & (2*force(1)-gamma*(1-Xksii))/     & ((gamma-force(1))*(Xksii*gamma+force(1)))         if (force_prec(1).le.gamma_prec*(1-Xkapai)/2) then        term_Gradgs1(1)=0        term_Gradgs1(3)=0        Xkapa=1-2*force_prec(1)/gamma_prec                if (Xkapa.lt.Xkapa_prec) then*pour empÃªcher Xkapa de diminuer                Xkapa=Xkapa_prec                endif        else        Xkapa=Xkapai        endif         if (force_prec(1).le.gamma_prec*(1-Xksii)/2) then        term_Gradgs1(2)=0        term_Gradgs1(4)=0        Xksi=1-2*force_prec(1)/gamma_prec                if (Xksi.lt.Xksi_prec) then*pour empÃªcher Xksi de diminuer                Xksi=Xksi_prec                endif        else        Xksi=Xksii        endif          Gradgs(1) = abs(2*(term_Gradgs1(1)+term_Gradgs1(2)+     & term_Gradgs1(3)+term_Gradgs1(4)))        Gradgs(2) = 2*Xk19(1)/den1        Gradgs(3) = 2*Xk19(2)/den2        Gradgs(4) = 2*Xk19(3)/den1        Gradgs(5) = 2*Xk19(4)/den2*C       Gradgs(1) =0        call SCALPR(5,Gradgs,Gradgs,Xnorm_Gradgs)        Xnorm_Gradgs=sqrt(Xnorm_Gradgs)      DO I=1,5        Gradgs(I)=Gradgs(I)/Xnorm_Gradgs      ENDDO        return        end

© Cast3M 2003 - Tous droits réservés.
Mentions légales