1 : C DEVEQ4 SOURCE CHAT 05/01/12 22:45:07 5004
2 : SUBROUTINE DEVEQ4(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 vitesses g{n{ralis{es pour le second demi-pas *
11 : * de temps. *
12 : * *
13 : * Param}tres: *
14 : * *
15 : * es Q2(.,.) Vecteur des vitesses g{n{ralis{es *
16 : * e NA1 Nombre total d'inconnues dans la base A *
17 : * e XK Vecteur des raideurs g{n{ralis{es *
18 : * e XASM Vecteur des amortissements g{n{ralis{s *
19 : * e XM Vecteur des masses g{n{ralis{es *
20 : * e XDT Valeurs des pas de temps *
21 : * e NPAS Num{ro du pas de temps *
22 : * e FTOTA Forces ext{rieures totalis{es, sur la base A *
23 : * *
24 : * Auteur, date de cr{ation: *
25 : * *
26 : * Denis ROBERT-MOUGIN, le 19 mai 1989. *
27 : * *
28 : *--------------------------------------------------------------------*
29 : REAL*8 Q2(NA1,*),FINERT(NA1,*)
30 : REAL*8 XK(*),XASM(*),XM(*),XDT(*),FTOTA(NA1,*)
31 : *
32 : PDT = XDT(NPAS)
33 : PDTS6 = PDT / 6.D0
34 : *
35 : * . 6 .
36 : * Q = ________ ( Q + h/6 ( G + 4 G + G
37 : * i,m+1 6 + A h i,m i,m+1 i,m+1/2 i,m
38 : * i
39 : * . .
40 : * - A ( 4 Q + Q ) ) )
41 : * i i,m+1/2 i,m
42 : *
43 : *
44 : * Boucle sur les inconnues de la base A
45 : *
46 : DO 10 IA = 1,NA1
47 : UNSM1 = 1.D0 / ( XM(IA) - FINERT(IA,1) )
48 : UNSM2 = 1.D0 / ( XM(IA) - FINERT(IA,2) )
49 : UNSM3 = 1.D0 / ( XM(IA) - FINERT(IA,3) )
50 : AUX1 = 6.D0 / ( 6.D0 + ( XASM(IA) * PDT * UNSM1 ) )
51 : AUX2 = (FTOTA(IA,1)*UNSM1) + ( 4.D0 * FTOTA(IA,2) * UNSM2 )
52 : & + ( FTOTA(IA,3) * UNSM3 )
53 : AUX3 = XASM(IA) * ( ( 4.D0 * Q2(IA,2) * UNSM2 )
54 : & + ( Q2(IA,3) * UNSM3 ) )
55 : AUX4 = Q2(IA,3) + ( PDTS6 * ( AUX2 - AUX3 ) )
56 : Q2(IA,1) = AUX1 * AUX4
57 : 10 CONTINUE
58 : * end do
59 : *
60 : END
61 :
© Cast3M 2003 - All rights reserved.
Disclaimer