C MSHEA2    SOURCE    CHAT      05/01/13    01:52:58     5004
      SUBROUTINE MSHEA2(DEP,ETRANP,ETRANM,FCINI,FCAMP,KCINE,ICAS,
     )                  ALPHP,ALPHM)
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
C
C======================================================================
C       calcul de ALPHP et ALPHM
C======================================================================
C=======================================================================
C
C LISTE D'ECHANGE
C ---------------
C
C DEP          = Deplacement
C ETRANP       = zone de transition effective (sens positif)
C ETRANM       =                              (sens négatif)
C FCINI        = Force de reference pour la surface cinematique
C FCAMP        = Taille de la surface cinematique
C KCINE        = Raideur de la surface cinematique
C ICAS         = Numero de la branche (3 ou 6)
C
C ALPHP        = Valeur de alpha +
C ALPHM        = Valeur de alpha -
C
C Warning: valable pour ICAS=3 ou 6
C Warning: on prend comme deplacement celui du centre de la surface elastique
C
C=======================================================================
      REAL*8 KCINE,KCINEP,KCINEM
      PARAMETER (XZER=0.D0,UN=1.D0)
C
      IF(ICAS.EQ.3)THEN
        DEPP=DEP+FCAMP/2/KCINE
      ELSE
        DEPP=DEP-FCAMP/2/KCINE
      ENDIF
C     DEPP=DEP-FCINI/KCINE
      IF (ETRANP.GT.ETRANM)THEN
        ALPHP=(DEPP-ETRANM)/(ETRANP-ETRANM)
        ALPHP=MAX(XZER,ALPHP)
        ALPHP=MIN(UN  ,ALPHP)
        ALPHM=UN-ALPHP
      ELSE
        IF(DEPP.GE.ETRANP)THEN
          ALPHP=UN
        ELSE
          ALPHP=XZER
        ENDIF
        IF(DEPP.LE.ETRANM)THEN
          ALPHM=UN
        ELSE
          ALPHM=XZER
        ENDIF
      ENDIF
C
      RETURN
      END


