C DEVEQ1 SOURCE CHAT 05/01/12 22:44:55 5004 SUBROUTINE DEVEQ1(Q1,Q2,NA1,XK,XASM,XM,XDT,NPAS,FTOTA,FINERT) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) *--------------------------------------------------------------------* * * * Op{rateur DYNE : algorithme de FU - de Vogelaere * * ________________________________________________ * * * * Calcul des d{placements g{n{ralis{s pour le premier demi-pas * * de temps. * * * * Param}tres: * * * * es Q1(.,.) Vecteur des d{placements g{n{ralis{s * * es Q2(.,.) Vecteur des vitesses g{n{ralis{es * * e NA1 Nombre total d'inconnues dans la base A * * e XK Vecteur des raideurs g{n{ralis{es * * e XASM Vecteur des amortissements g{n{ralis{s * * e XM Vecteur des masses g{n{ralis{es * * e XDT Valeurs des pas de temps * * e NPAS Num{ro du pas de temps consid{r{ * * e FTOTA Forces ext{rieures totalis{es, sur la base A * * * * Auteur, date de cr{ation: * * * * Denis ROBERT-MOUGIN, le 19 mai 1989. * * * *--------------------------------------------------------------------* REAL*8 Q1(NA1,*),Q2(NA1,*),FINERT(NA1,*) REAL*8 XK(*),XASM(*),XM(*),XDT(*),FTOTA(NA1,*) * PDT = XDT(NPAS) PDTS2 = PDT * 0.5D0 AUX4 = PDT * PDT / 24.D0 * * . 2 * Q = Q + h/2 Q + h /24 ( 4 G - G * i,m+1/2 i,m i,m i,m i,m-1/2 * . . * - A ( 4 Q - Q ) ) * i i,m i,m-1/2 * * * Boucle sur les inconnues de la base A * DO 10 IA = 1,NA1 UNSM3 = 1.D0 / ( XM(IA) - FINERT(IA,3) ) UNSM4 = 1.D0 / ( XM(IA) - FINERT(IA,4) ) AUX1 = XASM(IA) * ( ( 4.D0 * Q2(IA,3) * UNSM3 ) & - ( Q2(IA,4) * UNSM4 ) ) AUX2 = (4.D0*FTOTA(IA,3)*UNSM3) - (FTOTA(IA,4)*UNSM4) AUX3 = PDTS2 * Q2(IA,3) Q1(IA,2) = Q1(IA,3) + AUX3 + ( AUX4 * ( AUX2 - AUX1) ) 10 CONTINUE * end do * END