1 : C DYCHPL2 SOURCE CHAT 05/01/12 23:06:26 5004
2 : C DYCHPL2 SOURCE LAVARENN 96/08/05 21:19:09 2237
3 : SUBROUTINE DYCHPL2(XDEP,XVIT,XDPLAS,XRAID,XJEU,XAMO,XSEUIL
4 : & ,XABSCI,XORDON,NIP,NLIAB,I,XFL,IPERM,iannul)
5 : IMPLICIT INTEGER(I-N)
6 : IMPLICIT REAL*8(A-H,O-Z)
7 : *--------------------------------------------------------------------*
8 : * *
9 : * Op{rateur DYNE : algorithme de Fu - de Vogelaere *
10 : * ________________________________________________ *
11 : * *
12 : * Calcul de la force de choc pour un choc {l{mentaire point-plan
13 : * elastoplastique, la force restant toujours positive
14 : * *
15 : * Param}tres: *
16 : * *
17 : * e XDEP Valeur du d{placement. *
18 : * e XVIT Valeur de la vitesse normale
19 : * e XJEU Valeur de la limite de force elastique (positive)
20 : * e XAMO Valeur de l'amortissement
21 : * e XABSCI Abscisses loi elastique *
22 : * e XORDON Ordonnees loi elastique *
23 : * e XSEUIL Valeur de la force plastique
24 : * e IPERM =1 si liaison permanente *
25 : * es XDPLAS Valeur du deplacement plastique (du pas precedent
26 : * en entree, du pas actuel en sortie)
27 : * s XFL Valeur de la force de choc. *
28 : * *
29 : * *
30 : * Auteur, date de cr{ation: *
31 : * *
32 : * Bruno FONTAINE, le 26/02/98 *
33 : * *
34 : *--------------------------------------------------------------------*
35 : REAL*8 XABSCI(NLIAB,*),XORDON(NLIAB,*)
36 :
37 : XFL = 0.D0
38 : XVAL = XDEP - XJEU - XDPLAS
39 : IF (IPERM.EQ.1) THEN
40 : IF (iannul.EQ.0) THEN
40 : CALL LIRANG(XSEUIL,XORDON,XABSCI,I,NLIAB,NRG,XPENTE,NIP)
41 : XE = XABSCI(I,NRG) + XPENTE*(XSEUIL-XORDON(I,NRG))
41 : CALL LIRANG(XVAL,XABSCI,XORDON,I,NLIAB,NRG,XPENTE,NIP)
42 : XFLR = XORDON(I,NRG) + XPENTE*(XVAL-XABSCI(I,NRG))
43 : IF (XFLR.LT.0) XCRIT=-XSEUIL
44 : IF (XFLR.GE.0) XCRIT= XSEUIL
45 :
46 : DXFLP = XFLR - XCRIT
47 : IF (ABS(XFLR).LE.ABS(XCRIT)) THEN
48 : XFL = XFLR
49 : ELSE
50 : XFL = XCRIT
51 : XDPLAS = XDEP - XJEU - XCRIT/XRAID
52 : ENDIF
53 : XFL = - XFL - XAMO*XVIT
54 :
55 : ENDIF
56 : ELSE
57 : IF ((XVAL .GE. 0.D0).AND.(iannul.EQ.0)) THEN
57 : CALL LIRANG(XSEUIL,XORDON,XABSCI,I,NLIAB,NRG,XPENTE,NIP)
58 : XE = XABSCI(I,NRG) + XPENTE*(XSEUIL-XORDON(I,NRG))
58 : CALL LIRANG(XVAL,XABSCI,XORDON,I,NLIAB,NRG,XPENTE,NIP)
59 : XFLR = - (XORDON(I,NRG) + XPENTE*(XVAL-XABSCI(I,NRG)))
60 : DXFLP = XSEUIL - (ABS (XFLR))
61 : IF (DXFLP.LE.0.D0) THEN
62 : XDPLAS = XDEP - XJEU - XE
63 : XFLR = - XSEUIL
64 : ENDIF
65 : XFL = XFLR - XAMO*XVIT
66 : IF (XFL.GT.0.D0) XFL = 0.D0
67 : ELSE
68 : XFL = 0.D0
69 : ENDIF
70 : ENDIF
71 :
72 : END
73 :
74 :
75 :
76 :
77 :
78 :
79 :
© Cast3M 2003 - All rights reserved.
Disclaimer