C DYCHEL SOURCE BP208322 20/09/18 21:16:19 10718 SUBROUTINE DYCHEL(XDEP,XRAID,XJEU,ETA,XFL,DFDX,iannul) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) *--------------------------------------------------------------------* * operateurs DYn* : calcul de la force d'un CHoc ELementaire * *--------------------------------------------------------------------* * * * Parametres: * * * * e XDEP Valeur du deplacement. * * e XRAID Valeur de la raideur. * * e XJEU Valeur du jeu. * * e ETA Parametre de regularisation. * * s XFL Valeur de la force de choc. * * s DFDX Derivee de la force de choc. * * * *--------------------------------------------------------------------* XFL = 0.D0 DFDX = 0.D0 * * Contact strict IF (ETA.EQ.0.D0) THEN IF ((XDEP.GE.XJEU).AND.(iannul.EQ.0)) THEN XVAL = XDEP - XJEU XFL = -XRAID * XVAL DFDX = -XRAID ENDIF * Contact regularise ELSE XFLR = XRAID*(XDEP - XJEU) XAUX = SQRT(XFLR**2 + 4.*XRAID*ETA) XFL = -0.5*(XFLR + XAUX) DFDX = -0.5*XRAID*(1.+XFLR/XAUX) ENDIF * END