1 : C D2VPAS SOURCE CHAT 05/01/12 22:35:49 5004 2 : C DEVPAS SOURCE LAVARENN 96/10/30 21:18:39 2349 3 : SUBROUTINE D2VPAS(Q1,Q2,Q3,NA1,NPC1,XK,XASM,XM,XDT,NPAS,FTOTA, 4 : & FEXA,IFEXA,NPFEXA,NLIAA,NLSA,IPALA,IPLIA,XPALA,XVALA, 5 : & NLIAB,NLSB,NPLB,IDIMB,IPALB,IPLIB,JPLIB,XPALB,XVALB,FTOTB, 6 : & FTOTBA,XPTB,FEXPSM, 7 : & FINERT,IERRD,FTEST,FTOTA0,FTEST2,FTOTB0,WEXT,WINT, 8 : & XABSCI,XORDON,NIP,FTEXB,FEXB,RIGIDE,KTPHI,XCHPFB) 9 : IMPLICIT INTEGER(I-N) 10 : IMPLICIT REAL*8(A-H,O-Z) 11 : *--------------------------------------------------------------------* 12 : * * 13 : * Opérateur DYNE : algorithme de Fu - de Vogelaere * 14 : * ________________________________________________ * 15 : * * 16 : * Calcul d'un pas de temps, appel aux s-p spécifiques. * 17 : * * 18 : * Paramètres: * 19 : * * 20 : * es Q1(,) Vecteur des déplacements généralisés * 21 : * es Q2(,) Vecteur des vitesses généralisées * 22 : * es Q3(,) Vecteur des accélérations généralisées * 23 : * es NA1 Nombre total d'inconnues en base A * 24 : * es NPC1 Nombre de pas de calcul - 1 * 25 : * es XK Vecteur des raideurs généralisées * 26 : * es XASM Vecteur des amortissements généralisés * 27 : * es XM Vecteur des masses généralisées * 28 : * es XDT Valeurs des pas de temps * 29 : * es NPAS Numéro du pas de temps * 30 : * es FTOTA Forces extérieures totalisées, sur la base A * 31 : * es FEXA Evolution des forces extérieures en base A * 32 : * e FTEXB Evolution des forces extérieures en base B * 33 : * e FEXB Forces extérieures sur la base B, servant au calcul * 34 : * des moments pour les corps rigides. * 35 : * e RIGIDE Vrai si corps rigide, faux sinon * 36 : * es IFEXA Numéro du mode correspondant au point de chargement * 37 : * es NPFEXA Nombre de points de chargement * 38 : * e NLIAA Nombre de liaisons sur la base A * 39 : * e NLSA Nombre de liaisons A en sortie * 40 : * e IPALA Tableau renseignant sur le type de liaison (base A) * 41 : * e IPLIA Tableau contenant les numéros "DYNE" des points * 42 : * e XPALA Tableau contenant les paramètres des liaisons * 43 : * es XVALA Tableau contenant les variables internes de liaison A * 44 : * XPHILB Vecteur des deformees modales * 45 : * e NLIAB Nombre de liaisons sur la base B * 46 : * e NLSB Nombre de liaisons base B en sortie * 47 : * e NPLB Nombre total de points de liaisons (base B) * 48 : * e IDIMB Nombre de directions * 49 : * e IPALB Tableau renseignant sur le type de liaison * 50 : * e IPLIB Tableau contenant les numeros "DYNE" des points * 51 : * e JPLIB Tableau contenant les numeros "GIBI" des points * 52 : * e XPALB Tableau contenant les parametres des liaisons (base B) * 53 : * es XVALB Tableau contenant les variables internes de liaison B * 54 : * FTOTB Forces exterieures totalisees sur la base B * 55 : * e XABSCI Tableau contenant les abscisses de la loi plastique * 56 : * e XORDON Tableau contenant les ordonnees de la loi plastique * 57 : * e NIP Nbr de points dans l'evolution de la loi plastique * 58 : * FTOTBA Forces totales base B projetees base A * 59 : * XPTB Deplacements des points de liaison * 60 : * IBASB Appartenance des points de liaison a une sous-base * 61 : * IPLSB Position du point de liaison dans la sous-base * 62 : * INMSB Nombre de modes dans la sous-base * 63 : * IORSB Position du 1er mode de la sous-base dans ens. modes * 64 : * IAROTA Indique la position des modes de rotation * 65 : * NSB Nombre de sous-bases * 66 : * NPLSB Nombre de points de liaison par sous-base * 67 : * NA2 Nombre d'inconnues dans la sous-base * 68 : * FEXPSM Forces exterieures base B * 69 : * FINERT Forces d'inertie base B * 70 : * IERRD Indicateur d'erreur * 71 : * - FTEST Tableau local FTEST de la subroutine D2VLFA * 72 : * - FTOTA0 Tableau local FTOTA0 de la subroutine D2VLFA * 73 : * - FTEST2 Tableau local FTEST de la subroutine DEVLB1 * 74 : * - FTOTB0 Tableau local FTOTB0 de la subroutine DEVLB1 * 75 : * e,s WEXT travail des forces exterieures 76 : * e,s WINT travail des forces interieures (rigidite et 77 : * amortissement et forces de liaison ) 78 : * * 79 : * Auteur, date de création: * 80 : * * 81 : * Denis ROBERT-MOUGIN, le 26 mai 1989. * 82 : * * 83 : *--------------------------------------------------------------------* 84 : * 85 : SEGMENT,MTPHI 86 : INTEGER IBASB(NPLB),IPLSB(NPLB),INMSB(NSB),IORSB(NSB) 87 : INTEGER IAROTA(NSB) 88 : REAL*8 XPHILB(NSB,NPLSB,NA2,IDIMB) 89 : ENDSEGMENT 90 : * 91 : INTEGER IFEXA(*),IPALA(NLIAA,*),IPLIA(NLIAA,*) 92 : INTEGER IPALB(NLIAB,*),IPLIB(NLIAA,*),JPLIB(*) 93 : REAL*8 Q1(NA1,*),Q2(NA1,*),Q3(NA1,*) 94 : REAL*8 XVALA(NLIAA,4,*),XPALA(NLIAA,*),XM(*),XK(*) 95 : REAL*8 XPALB(NLIAB,*),XVALB(NLIAB,4,*),FEXPSM(NPLB,NPC1,2,*) 96 : REAL*8 XASM(*),XDT(*),FTOTA(NA1,*),FEXA(NPFEXA,NPC1,*) 97 : REAL*8 FTOTB(NPLB,*),FTOTBA(*),XPTB(NPLB,4,*),FINERT(NA1,*) 98 : REAL*8 WEXT(NA1,2),WINT(NA1,2) 99 : REAL*8 XABSCI(NLIAB,*),XORDON(NLIAB,*),FEXB(NPLB,2,*) 100 : REAL*8 FTEXB(NPLB,NPC1,2,*),XCHPFB(2,NLIAB,4,NPLB) 101 : * 102 : LOGICAL RIGIDE 103 : * 104 : MTPHI = KTPHI 105 : NSB = XPHILB(/1) 106 : NPLSB = XPHILB(/2) 107 : NA2 = XPHILB(/3) 108 : IVINIT = 0 109 : 110 : III = 1 111 : pdt = xdt(npas) 112 : * 113 : * Déplacements généralisés 114 : 115 : DO 1 I = 1,NA1 116 : q1(i,1) = q1(i,2) + q2(i,2)*pdt + q3(i,2)*pdt*pdt/2.d0 117 : 1 continue 118 : 119 : * 120 : * Totalisation des forces extérieures pour la base A 121 : * pour la fin du pas precedent 121 : CALL D2VFXA(FEXA,IFEXA,FTOTA,NPFEXA,NA1,NPC1,NPAS,FTEXB,FEXB, 122 : & NPLB,IDIMB,RIGIDE) 123 : 124 : * Ajout des forces de raideur 125 : * 125 : CALL DEVLK0(Q1,XK,XM,FTOTA,NA1,NPAS,III) 126 : 127 : * Ajout des forces de liaison 128 : * 129 : IF (NLIAA.NE.0) THEN 129 : CALL D2VLFA(Q1,Q2,FTOTA,XM,NA1,IPALA,IPLIA,XPALA,XVALA, 130 : & NLIAA,XDT,NPAS,III,FINERT,IVINIT,FTEST,FTOTA0) 131 : ENDIF 132 : IF (NLIAB.NE.0) THEN 132 : CALL D2VLFB(Q1,FTOTA,XM,NA1,IPALB,IPLIB,XPALB,XVALB,NLIAB, 133 : & XPHILB,JPLIB,NPLB,IDIMB,FTOTB,FTOTBA,XPTB,XDT, 134 : & NPAS,IBASB,IPLSB,INMSB,IORSB,NSB,NPLSB,NA2,III, 135 : & FEXPSM,NPC1,IERRD,FTEST2,FTOTB0, 136 : & XABSCI,XORDON,NIP,FEXB,RIGIDE,IAROTA,XCHPFB) 137 : IF (IERRD.NE.0) RETURN 138 : ENDIF 139 : 140 : * accelerations généralisées 141 : DO 2 I = 1,NA1 142 : UNSM = 1.D0 / ( XM(I) - FINERT(I,III) ) 143 : aux = (q1(i,1) - q1(i,2))/pdt 144 : Q3(I,1) = (FTOTA(I,III)*UNSM) - (XASM(I)*UNSM*aux) 145 : * Vitesses généralisées 146 : q2(i,1) = q2(i,2) + (q3(i,2) + q3(i,1))/2.d0*pdt 147 : 2 CONTINUE 148 : 149 : c calcul des travaux 150 : 150 : CALL D2VENE (NA1,III,NPAS,FEXA,Q1,Q2,FTOTA,WEXT,WINT, 151 : & XASM,NPC1) 152 : 153 : 154 : END 155 : 156 : 157 : 158 : 159 : 160 :
© Cast3M 2003 - All rights reserved.
Disclaimer