1 : C SIMUL0 SOURCE PV 11/02/18 21:15:21 6875 2 : SUBROUTINE SIMUL0 3 : ************************************************************************ 4 : * 5 : * S I M U L 0 6 : * ----------- 7 : * 8 : * FONCTION: 9 : * --------- 10 : * 11 : * INITIALISATION D'OBJETS 12 : * (CALCUL DE VIBRATIONS - METHODE "SIMULTANE") 13 : * 14 : * MODE D'APPEL: 15 : * ------------- 16 : * 16 : * CALL SIMUL0 17 : * 18 : * PARAMETRES: (E)=ENTREE (S)=SORTIE 19 : * ----------- 20 : * 21 : * IPTTA ENTIER (S) ) 22 : * IPTTB ENTIER (S) ) 23 : * IPTABV ENTIER (S) ) 24 : * IPVV ENTIER (S) )) VOIR LES DEFINITIONS DES COMMUNS. 25 : * IPVTKV ENTIER (S) ) 26 : * IPKVV ENTIER (S) ) 27 : * 28 : * COMMUN "CLANCZ": 29 : * ---------------- 30 : * 31 : * NB: LES NOMBRES "0", "1" ET "2" REPRESENTENT LES NUMEROS DE TROIS 32 : * ITERATIONS CONSECUTIVES: 33 : * "1" INDICE COURANT, "0" INDICE PRECEDENT, "2" INDICE SUIVANT". 34 : * 35 : * CI-DESSOUS, |K| DESIGNE LA MATRICE DE RIGIDITE, |M| LA MATRICE 36 : * MASSE, ET "V" UN VECTEUR DE LANCZOS. 37 : * 38 : * A1 REEL DP 1ER COEFFICIENT DE LA FORMULE DE LANCZOS 39 : * (SOUVENT APPELE "ALPHA") 40 : * = V1.|M|.V1 41 : * B1 REEL DP 2EME COEFFICIENT DE LA FORMULE DE LANCZOS 42 : * (SOUVENT APPELE "BETA") 43 : * = V0.|M|.V1 44 : * IPKVV ENTIER POINTEUR SUR LA LISTE DES PRODUITS "|K|.V" 45 : * (OBJET 'LISTCHPO'). 46 : * IPMV1 ENTIER POINTEUR SUR LE 'CHPOINT' |M|.V1 47 : * IPV1 ENTIER POINTEUR SUR LE VECTEUR DE LANCZOS "V1" 48 : * D'INDICE "NUMV" (OBJET 'CHPOINT'). 49 : * IPV0 ENTIER POINTEUR SUR LE VECTEUR DE LANCZOS "V0" 50 : * CALCULE JUSTE AVANT "V1" (OBJET 'CHPOINT'). 51 : * IPVTKV ENTIER POINTEUR SUR LA LISTE DES PRODUITS "V.|K|.V" 52 : * (OBJET 'LISTREEL'). 53 : * IPVV ENTIER POINTEUR SUR LA LISTE DES VECTEURS DE LANCZOS 54 : * CREES (OBJET 'LISTCHPO'). 55 : * NOMBRV ENTIER NOMBRE DE VECTEURS DE LANCZOS "V" QUE L'ON VEUT 56 : * CALCULER, EN FONCTION DU NOMBRE DE MODES PROPRES 57 : * DEMANDES PAR L'UTILISATEUR. 58 : * NUMV ENTIER NUMERO DU VECTEUR DE LANCZOS "V" QUE L'ON EST 59 : * EN TRAIN DE CALCULER. 60 : * NUMV1 ENTIER = NUMV - 1 61 : * S1 REEL DP SIGNE DE "V1.|K|.V1". 62 : * S0 REEL DP SIGNE DE "V0.|K|.V0". 63 : * 64 : * COMMUN "CSIMUL": 65 : * ---------------- 66 : * 67 : * IPDIAG ENTIER POINTEUR SUR LA 'RIGIDITE' REPRESENTANT LA 68 : * MATRICE DIAGONALE DES SIGNES. 69 : * IPTABV ENTIER POINTEUR SUR LA TABLE DES VECTEURS DE LANCZOS 70 : * INDICES PAR DES POINTS. 71 : * IPTRID ENTIER POINTEUR SUR LA 'RIGIDITE' REPRESENTANT LA 72 : * MATRICE TRIDIAGONALE SYMETRISEE. 73 : * IPTTA ENTIER POINTEUR DU 'LISTREEL' CONTENANT LA DIAGONALE 74 : * DE LA MATRICE TRIDIAGONALE NON SYMETRIQUE ISSUE 75 : * DE L'ALGORITHME DE LANCZOS. 76 : * IPTTB ENTIER POINTEUR DU 'LISTREEL' CONTENANT LA 77 : * SOUS-DIAGONALE DE LA MATRICE TRIDIAGONALE NON 78 : * SYMETRIQUE. 79 : * W2SHIF REEL DP PULSATION AU CARRE DE DECALAGE DE LA MATRICE DE 80 : * RIGIDITE DANS TOUT LE DEROULEMENT DE LA METHODE 81 : * "SIMULTANE". 82 : * 83 : * AUTEUR, DATE DE CREATION: 84 : * ------------------------- 85 : * 86 : * PASCAL MANIGOT 19 AVRIL 1985 87 : * 88 : * LANGAGE: 89 : * -------- 90 : * 91 : * ESOPE + FORTRAN77 92 : * 93 : ************************************************************************ 94 : * 95 : IMPLICIT INTEGER(I-N) 96 : IMPLICIT REAL*8(A-H,O-Z) 97 : -INC SMLREEL 98 : -INC SMLCHPO 99 : -INC SMTABLE 100 : * 101 : * REGOUPEMENT DE RENSEIGNEMENTS POUR LES SOUS-PROGRAMMES "LANCZ.": 102 : COMMON/CLANCZ/ A1,B1,S0,S1,NOMBRV,NUMV,NUMV1,IPV0,IPV1 103 : & ,IPMV1,IPVV,IPKVV,IPVTKV,IPLMOX,IPLMOY, 104 : & IVEV1, IVEMV1,ivev0,ipla,iplb,iplc 105 : REAL*8 A1,B1,S0,S1 106 : * 107 : * REGROUPEMENT D'INFORMATIONS POUR LES SOUS-PROGRAMMES "SIMUL.": 108 : COMMON/CSIMUL/ W2SHIF,IPTTA,IPTTB,IPTABV,IPTRID,IPDIAG 109 : REAL*8 W2SHIF 110 : * 111 : * SUITE DES "V": 112 : N1 = 0 113 : SEGINI,MLCHPO 114 : IPVV = MLCHPO 115 : SEGDES,MLCHPO 116 : * SUITE DES "VT.K.V": 117 : JG=0 118 : SEGINI,MLREEL 119 : IPVTKV = MLREEL 120 : SEGDES,MLREEL 121 : * SUITE DES "K.V": 122 : N1 = 0 123 : SEGINI,MLCHPO 124 : IPKVV = MLCHPO 125 : SEGDES,MLCHPO 126 : * 127 : * DIAGONALE DE LA MATRICE TRIDIAGONALE NON SYMETRIQUE: 128 : JG=0 129 : SEGINI,MLREEL 130 : IPTTA = MLREEL 131 : SEGDES,MLREEL 132 : * SOUS-DIAGONALE DE LA MATRICE TRIDIAGONALE NON SYMETRIQUE: 133 : JG=0 134 : SEGINI,MLREEL 135 : IPTTB = MLREEL 136 : SEGDES,MLREEL 137 : * 138 : * TABLE DES "V" INDICES PAR DES POINTS: 138 : CALL CRTABL(MTABLE) 139 : IPTABV = MTABLE 140 : SEGDES,MTABLE 141 : * 142 : END 143 : 144 : 145 :
© Cast3M 2003 - All rights reserved.
Disclaimer