amor
C AMOR SOURCE CB215821 19/07/31 21:15:25 10277 SUBROUTINE AMOR C C*********************************************************************** C * C Premiere option : * C * C FABRICATION DE LA MATRICE D'AMORTISSEMENT MODAL * C SYNTAXE : AMO1= AMOR BASE PROG ; * C AMO1 MATRICE D'AMORTISSEMENT * C BASE OBJET DE TYPE BASE MODALE * C PROG OBJET DE TYPE MLREEL LISTE DES * C COEFFICIENTS D'AMORTISSEMENT REDUITS (%) * C CREATION : 26/11/86 * C PROGRAMMEUR : GUILBAUD * C * C______________________________________________________________________* C * C Deuxieme option : calcule la matrice d'amortissement visqueux * C associee a la frontiere d'un maillage * C * C Syntaxe : * C -------- * C * C RIG1 = AMOR MODL1 MAT1 GEO1 ; * C * C RIG1 : matrice d'amortissement construite (TYPE rigidite) * C MODL1: objet MMODEL, modele du sol ou du fluide a modeliser * C MAT1 : objet MCHAML, caracteristiques materiau * C GEO1 : objet MELEME, maillage de la frontiere * C * C date de creation : 26/02/98 * C "programmeur" : Olivier ROCHET * C * C______________________________________________________________________* C * C Troisieme option : calcule la matrice d'amortissement * C d'un materiau viscoelastique * C * C Syntaxe : * C -------- * C * C RIG1 (RIG2) = AMOR MODL1 MAT1 ('COROTATIF') ; * C * C RIG1 : matrice d'amortissement construite (TYPE rigidite) * C MODL1: objet MMODEL, modele du sol ou du fluide a modeliser * C MAT1 : objet MCHAML, caracteristiques materiau * C L'option COROTATIF permet de calculer la matrice de rigidite * C antisymetrique d'un arbre tournant (elements de poutre uniquement) * C * C date de creation : 07/07/03 * C "programmeur" : Didier COMBESCURE * C * C*********************************************************************** C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC PPARAM -INC CCOPTIO * PARAMETER (NPARAM = 1) LOGICAL BASMUL CHARACTER*8 CTYP CHARACTER*4 LPARAM(NPARAM) * DATA LPARAM / 'CORO' / * iretou = 0 * IF (IERR.NE.0) RETURN * * ----- * Cas 1 - Amortissement modal * ----- IF (iretou.EQ.1) THEN * ICAS = 1 IPRIG = 0 * IBASE = 0 ITBAS = 0 BASMUL = .FALSE. * IF (IERR.NE.0) RETURN IF (CTYP(1:8).EQ.'TABLE ') THEN IF (IERR.NE.0) RETURN IF (iretou.EQ.0) THEN IF (IERR.NE.0) RETURN BASMUL = .TRUE. ENDIF ELSE IF (IERR.NE.0) RETURN ENDIF * IF (IERR.NE.0 .OR. IPRIG.LE.0) RETURN * * * ---------- * Cas 2 et 3 - Frontieres absorbantes et amortissement visqueux * ---------- ELSE * IPMODL = 0 IPCHE1 = 0 IPMAIL = 0 IPRIG = 0 IPRIG2 = 0 C C lecture du modele C IF (IERR.NE.0) RETURN C C lecture du mchaml de caracteristiques materiau C IF (IERR.NE.0) RETURN IF(IERR .NE. 0) RETURN C C lecture du maillage de la frontiere C IF (IERR.NE.0) RETURN * IF (iretou.NE.0) THEN ICAS = 2 ELSE ICAS = 3 IF (IERR.NE.0) RETURN IF (iretou.EQ.1) ICAS = 4 ENDIF C IF (ICAS.EQ.2) THEN C IF (IERR.NE.0 .OR. IPRIG.LE.0) RETURN C ELSE IF (ICAS.EQ.3) THEN C IF (IERR.NE.0 .OR. IPRIG.LE.0) RETURN C ELSE IF (ICAS.EQ.4) THEN C IF (IERR.NE.0 .OR. IPRIG.LE.0) RETURN C IF (IERR.NE.0 .OR. IPRIG2.LE.0) RETURN ENDIF C C ENDIF END
© Cast3M 2003 - Tous droits réservés.
Mentions légales