C VNMS12    SOURCE    CHAT      05/01/13    04:08:46     5004
      FUNCTION VNMS12(SIGMA1,SIGMA2,ICLE,ALFAH,COMIS)
C
C CALCUL DE J2(SIGMA1*SIGMA2)
C
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8 (A-H,O-Z)
      DIMENSION SIGMA1(*),SIGMA2(*)
      DIMENSION COMIS(*)
C****
C
C       ICLE=1   CAS DES ELEMENTS MASSIFS
C       ICLE=2   CAS DES COQUES
C       ICLE=3   CAS DES MEMBRANES
C       ICLE=4   CAS DES CABLES
C       ICLE=5   CAS QUELCONQUE
C       ICLE=6   CAS DES CONTRAINTES PLANES
C       ICLE=7   CAS DES COQUES A NU=0. OU CONTRAINTES PLANES
C       ICLE=8   CAS DES MEMBRANES A NU=0. OU CONTRAINTES PLANES
C       ICLE=9   CAS DES COQUES MASSIFS
C       ICLE=10  CAS DES JOINTS
C       ICLE=11  CAS DES POUTRES
C       ICLE=12  CAS DES TUYAUX
C       ICLE=13  CAS DES COQUES AVEC CISAILLEMENT
C       ICLE=14  CAS DES ELEMENTS MASSIFS EN 1D (UNID)
C
C****
C
C       ALFAH  COEFFICIENT MULTIPLICATEUR DE LA FLEXION DANS LES COQUES
C       COMIS  COEFFICIENT DES CONTRAINTES DANS LE VON MISES
C
C****
      GO TO (1,2,3,4,5,6,7,8,9,10,11,12,13,14),ICLE
  1   CONTINUE
      VNMS12=
     1      SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*SIGMA2(2)+SIGMA1(3)*
     1 SIGMA2(3)+
     1(-SIGMA1(1)*SIGMA2(2)-SIGMA1(2)*SIGMA2(3)-SIGMA1(3)*SIGMA2(1))*.5
     1+.5*(-SIGMA2(1)*SIGMA1(2)-SIGMA2(2)*SIGMA1(3)-SIGMA2(3)*SIGMA1(1))
     2+3.*(SIGMA1(4)*SIGMA2(4)+SIGMA1(5)*SIGMA2(5)+SIGMA1(6)*SIGMA2(6))
      RETURN
  2   VNMS12=(SIGMA1(4)*SIGMA2(4)+SIGMA1(5)*SIGMA2(5)-SIGMA1(4)*
     1SIGMA2(5)*.5-.5*SIGMA2(4)*SIGMA1(5)
     1 +3.*SIGMA1(6)*SIGMA2(6))*ALFAH+ SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*
     1SIGMA2(2)-.5*SIGMA1(2)*SIGMA2(1)
     2 -SIGMA1(1)*SIGMA2(2)*.5+3.*SIGMA1(3)*SIGMA2(3)
      RETURN
  3   VNMS12= SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*SIGMA2(2)-.5*
     1SIGMA1(1)*SIGMA2(2)-SIGMA1(2)*SIGMA2(1)*.5
     1 +3.D0*SIGMA1(3)*SIGMA2(3)
      RETURN
  4   VNMS12= SIGMA1(3)*SIGMA2(3)
      RETURN
  5   VNMS12= 0.5*((COMIS(2)+COMIS(3))*SIGMA1(1)*SIGMA2(1)
     1+(COMIS(1)+COMIS(3))*SIGMA1(2)*SIGMA2(2)+(COMIS(1)+COMIS(2))*
     1 SIGMA1(3)*SIGMA2(3))+.5*(
     1 -COMIS(1)*SIGMA1(2)*SIGMA2(3)-COMIS(2)*SIGMA1(1)*SIGMA2(3)
     1 -COMIS(3)*
     1 SIGMA1(1)*SIGMA2(2)
     1 -COMIS(1)*SIGMA2(2)*SIGMA1(3)-COMIS(2)*SIGMA2(1)*SIGMA1(3)
     1 -COMIS(3)*SIGMA2(1)*SIGMA1(2))
     1 +0.5*COMIS(4)*SIGMA1(4)*SIGMA2(4)+COMIS(5)*0.5*
     1 SIGMA1(5)*SIGMA2(5)+0.5*COMIS(6)*SIGMA1(6)*SIGMA2(6)
      RETURN
  6   VNMS12= SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*SIGMA2(2)-.5*
     1 (SIGMA1(1)*SIGMA2(2)+SIGMA2(1)*SIGMA1(2))
     1+3.*SIGMA1(4)*SIGMA2(4)
      GO TO 999
  7   VNMS12= SIGMA1(1)*SIGMA2(1)+ALFAH*(SIGMA1(4)*SIGMA2(4))
      GO TO 999
  8   VNMS12= SIGMA1(1)*SIGMA2(1)
      GO TO 999
C
C***  ELEMENT COQUE EPAISSE
C
  9   VNMS12= SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*SIGMA2(2)
     1                      +3.D0*(SIGMA1(4)*SIGMA2(4)+SIGMA1(5)*
     1                                                 SIGMA2(5)
     2            +SIGMA1(3)*SIGMA2(3))-.5*(SIGMA1(1)*SIGMA2(2)+
     3             SIGMA2(1)*SIGMA1(2))
      GO TO 999
 10   VNMS12= SIGMA1(1)*SIGMA2(1)+SIGMA1(3)*SIGMA2(3)
     *      +COMIS(1)*SIGMA1(2) + COMIS(2)
      GO TO 999
C
C  POUTRES  FORMULATION GLOBALE
C
 11   VNMS12=      SIGMA1(1)*SIGMA2(1)+
     .             SIGMA1(5)*SIGMA2(5)+
     .             SIGMA1(6)*SIGMA2(6)+
     .             SIGMA1(4)*SIGMA2(4)
      GO TO 999
C
C  TUYAUX  ( MEME CONVENTION QUE LES POUTRES  ET
C            PAS DE PRESSION POUR LE MOMENT )
C
 12   VNMS12=      SIGMA1(1)*SIGMA2(1)+
     .             SIGMA1(5)*SIGMA2(5)+
     .             SIGMA1(6)*SIGMA2(6)+
     .             SIGMA1(4)*SIGMA2(4)
      GO TO 999
C
C   COQUES AVEC CISAILLEMENT TRANSVERSE
C
 13   VNMS12=SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*SIGMA2(2)
     . -0.5D0*SIGMA1(1)*SIGMA2(2)-0.5D0*SIGMA1(2)*SIGMA2(1)
     . +3.*SIGMA1(4)*SIGMA2(4)+3.*SIGMA1(5)*SIGMA2(5)
     . +3.*SIGMA1(6)*SIGMA2(6)
      GO TO 999

C= Modes de calcul UNIDIMENSIONNELs (1D)
 14   VNMS12= SIGMA1(1)*SIGMA2(1)+SIGMA1(2)*SIGMA2(2)
     .       +SIGMA1(3)*SIGMA2(3)-0.5*(SIGMA1(1)*SIGMA2(2)
     .       +SIGMA2(1)*SIGMA1(2)+SIGMA1(2)*SIGMA2(3)
     .       +SIGMA2(2)*SIGMA1(3)+SIGMA1(3)*SIGMA2(1)
     .       +SIGMA2(3)*SIGMA1(1))
C**   GOTO 999
C
  999 RETURN
      END





