dyne
C DYNE SOURCE PV 22/04/27 21:15:03 11344 SUBROUTINE DYNE IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) *--------------------------------------------------------------------* * * * Sous-programme de l'operateur DYNE * * __________________________________ * * * * Calcul d'une reponse dynamique a l'aide d'algorithmes * * explicites pour les forces non-lineaire: * * * * 1. algorithme de Fu - de Vogelaere * * 2. algorithme des differences centrees * * 3. algorithme de Newmark (implicite sauf pour les forces NL * * * * auteurs: Denis ROBERT-MOUGIN & Lionel VIVAN ,le 19 mai 1989. * * derniere modif: BP, 2018-01-16 * * * *--------------------------------------------------------------------* -INC PPARAM -INC CCOPTIO * CHARACTER*6 MOPLEX CHARACTER*20 MODEVO,MOALG,MODIFF,MORK4 CHARACTER*20 MONEWM(2) DATA MOPLEX /'PLEXUS'/ DATA MODEVO /'DE_VOGELAERE'/ DATA MODIFF /'DIFFERENCES_CENTREES'/ DATA MONEWM /'ACCELERATION_MOYENNE','FOX_GOODWIN'/ c 12345678901234567890 12345678901 DATA MORK4 /'RUNGE_KUTTA_4'/ * * Quel algorithme a-t-on choisi ? * MOALG=' ' IF (IRET.EQ.0) RETURN * * Algorithme de Plexus * on s'en sert plus. Il ne figure pas dans la notice IF (MOALG(1:6).EQ.MOPLEX) THEN c CALL DYNPLX RETURN * Algorithme de Fu - de Vogelaere ELSE IF (MOALG(1:12).EQ.MODEVO) THEN CALL DYNDEV RETURN * Algorithme des differences centrees (le meme que plexus) ELSE IF (MOALG(1:20).EQ.MODIFF) THEN RETURN * Algorithmes implicites de Newmark ELSE IF (MOALG(1:20).EQ.MONEWM(1)) THEN RETURN ELSE IF (MOALG(1:11).EQ.MONEWM(2)) THEN RETURN * Erreur dans le choix de l'algorithme ELSE RETURN ENDIF * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales