1 : C DEVEQ1 SOURCE CHAT 05/01/12 22:44:55 5004
2 : SUBROUTINE DEVEQ1(Q1,Q2,NA1,XK,XASM,XM,XDT,NPAS,FTOTA,FINERT)
3 : IMPLICIT INTEGER(I-N)
4 : IMPLICIT REAL*8(A-H,O-Z)
5 : *--------------------------------------------------------------------*
6 : * *
7 : * Op{rateur DYNE : algorithme de FU - de Vogelaere *
8 : * ________________________________________________ *
9 : * *
10 : * Calcul des d{placements g{n{ralis{s pour le premier demi-pas *
11 : * de temps. *
12 : * *
13 : * Param}tres: *
14 : * *
15 : * es Q1(.,.) Vecteur des d{placements g{n{ralis{s *
16 : * es Q2(.,.) Vecteur des vitesses g{n{ralis{es *
17 : * e NA1 Nombre total d'inconnues dans la base A *
18 : * e XK Vecteur des raideurs g{n{ralis{es *
19 : * e XASM Vecteur des amortissements g{n{ralis{s *
20 : * e XM Vecteur des masses g{n{ralis{es *
21 : * e XDT Valeurs des pas de temps *
22 : * e NPAS Num{ro du pas de temps consid{r{ *
23 : * e FTOTA Forces ext{rieures totalis{es, sur la base A *
24 : * *
25 : * Auteur, date de cr{ation: *
26 : * *
27 : * Denis ROBERT-MOUGIN, le 19 mai 1989. *
28 : * *
29 : *--------------------------------------------------------------------*
30 : REAL*8 Q1(NA1,*),Q2(NA1,*),FINERT(NA1,*)
31 : REAL*8 XK(*),XASM(*),XM(*),XDT(*),FTOTA(NA1,*)
32 : *
33 : PDT = XDT(NPAS)
34 : PDTS2 = PDT * 0.5D0
35 : AUX4 = PDT * PDT / 24.D0
36 : *
37 : * . 2
38 : * Q = Q + h/2 Q + h /24 ( 4 G - G
39 : * i,m+1/2 i,m i,m i,m i,m-1/2
40 : * . .
41 : * - A ( 4 Q - Q ) )
42 : * i i,m i,m-1/2
43 : *
44 : *
45 : * Boucle sur les inconnues de la base A
46 : *
47 : DO 10 IA = 1,NA1
48 : UNSM3 = 1.D0 / ( XM(IA) - FINERT(IA,3) )
49 : UNSM4 = 1.D0 / ( XM(IA) - FINERT(IA,4) )
50 : AUX1 = XASM(IA) * ( ( 4.D0 * Q2(IA,3) * UNSM3 )
51 : & - ( Q2(IA,4) * UNSM4 ) )
52 : AUX2 = (4.D0*FTOTA(IA,3)*UNSM3) - (FTOTA(IA,4)*UNSM4)
53 : AUX3 = PDTS2 * Q2(IA,3)
54 : Q1(IA,2) = Q1(IA,3) + AUX3 + ( AUX4 * ( AUX2 - AUX1) )
55 : 10 CONTINUE
56 : * end do
57 : *
58 : END
59 :
© Cast3M 2003 - All rights reserved.
Disclaimer