Download dynech.eso

Back to the list

   1 : C DYNECH    SOURCE    CHAT      05/01/12    23:18:06     5004           
   2 :       SUBROUTINE DYNECH(IPCHAR,TINI,DT,NPAS,MMATRX,NDDL,ICHT2,ICHT3)
   3 :       IMPLICIT INTEGER(I-N)
   4 :       IMPLICIT REAL*8(A-H,O-Z)
   5 : ************************************************************************
   6 : *
   7 : *                             D Y N E C H
   8 : *                             -----------
   9 : *
  10 : * FONCTION:
  11 : * ---------
  12 : *     UTILITAIRE DE L'OPERATEUR "DYNE"
  13 : *     OBTENTION D'UN VECTEUR ET D'UNE LISTE DE COEFFICIENTS AFIN DE
  14 : *     REPRESENTER L'OBJET CHARGEMENT DES FORCES EXTERIEURES
  15 : *
  16 : * PARAMETRES:   (E)=ENTREE   (S)=SORTIE   (+ = CONTENU DANS UN COMMUN)
  17 : * -----------
  18 : *
  19 : *     IPCHAR  (E)  POINTEUR SUR UN OBJET CHARGEMENT
  20 : *     TINI    (E)  VALEUR DU TEMPS INITIAL ( = 0. PAR DEFAUT )
  21 : *     DT      (E)  PAS DE TEMPS
  22 : *     NPAS    (E)  NOMBRE DE PAS DE CALCUL
  23 : *     MMATRX  (E)  POINTEUR SUR UN SEGMENT MMATRI ( ACTIF )
  24 : *     NDDL    (E)  NOMBRE DE DEGRES DE LIBERTE
  25 : *     VEC     (S)  VECTEUR CONTENANT LES VALEURS DU CHPOINT ISSU DU
  26 : *                  CHARGEMENT
  27 : *     COEF    (S)  LISTE DE COEFFICIENTS A APPLIQUER AU VECTEUR POUR
  28 : *                  OBTENIR LA CONTRIBUTION DU CHARGEMENT AU PAS DESIRE
  29 : *
  30 : * REMARQUE:
  31 : * ---------
  32 : *     LES OBJETS CHARGEMENTS SONT DONNES DU PAS 0 AU PAS NPAS + 1.
  33 : *     ON SUPPOSE QUE LE CHARGEMENT NE CONTIENT QU'UN SEUL CHARGEMENT
  34 : *     ELEMENTAIRE; ON POURRA CREER AUTANT DE VECTEURS ET DE LISTES DE
  35 : *     COEFFICIENTS QUE DE CHARGEMENTS ELEMENTAIRES, PUIS ON EN FERA LA
  36 : *     COMBINAISON LINEAIRE.
  37 : *
  38 : * AUTEUR, DATE DE CREATION:
  39 : * -------------------------
  40 : *     DENIS ROBERT, LE 8 NOVEMBRE 1988.
  41 : *     REVU ET CORRIGE DECEMBRE 89 MP
  42 : *
  43 : * LANGAGE:
  44 : * --------
  45 : *     ESOPE + FORTRAN77
  46 : *
  47 : ************************************************************************
  48 : *
  49 : * MODULES UTILISES:
  50 : *
  51 : -INC CCOPTIO
  52 : -INC SMCHARG
  53 : -INC SMLREEL
  54 : *
  55 :       SEGMENT,MCHT2
  56 :          REAL*8 VCC2(NDDL)
  57 :       ENDSEGMENT
  58 : *
  59 :       SEGMENT,MCHT3
  60 :          REAL*8 COE1(LCOE)
  61 :       ENDSEGMENT
  62 :       POINTEUR MCHT32.MCHT3
  63 : *
  64 : *     REAL*8 VEC(*),COEF(*)
  65 :       PARAMETER ( EPS=1.E-3 )
  66 : *
  67 :       MCHT2=ICHT2
  68 :       MCHT3=ICHT3
  69 :       EPSI=DT/EPS
  70 :       T=TINI+(DT*(NPAS+1))
  71 :       MCHARG=IPCHAR
  72 :       SEGACT,MCHARG
  73 :       NCHAR=KCHARG(/1)
  74 :       IFOI=0
  75 : *+*   ON SUPPOSE QUE LA STRUCTURE DU CHARGEMENT EST TELLE QUE NCHAR=1
  76 :       IF (NCHAR.GT.1) THEN
  76 :         CALL ERREUR(512)
  77 :         SEGDES,MCHARG
  78 :         RETURN
  79 :       ENDIF
  80 : *     DO 10 IC=1,NCHAR
  81 :       IC=1
  82 :       IFOI=IFOI+1
  83 :       ICHARG=KCHARG(IC)
  84 :       SEGACT,ICHARG
  85 :       IF(CHATYP.NE.'CHPOINT '.OR.CHAMOB(IC).NE.'STAT'
  86 :      & .OR.CHALIE(IC).NE.'LIE ') THEN
  87 :          SEGDES ICHARG
  88 :          SEGDES MCHARG
  88 :          CALL ERREUR(696)
  89 :          RETURN
  90 :       ENDIF
  91 :       MLREEL=ICHPO2
  92 :       SEGACT,MLREEL
  93 :       NF=PROG(/1)
  94 : *     IF (PROG(1).GT.T.OR.PROG(NF).LT.T) THEN
  95 :       IF ((PROG(1)-EPSI).GT.T.OR.(PROG(NF)+EPSI).LT.T) THEN
  96 :          IPCHPO=0
  97 :          DO 20 I=1,IFOI
  98 :             ICHARG=KCHARG(I)
  99 :             SEGDES,ICHARG
 100 :  20         CONTINUE
 101 : *        END DO
 102 :          SEGDES,MLREEL,MCHARG
 103 :          RETURN
 104 :       ENDIF
 105 : *
 106 : *---  ON RANGE LES VALEURS DU CHPOINT DANS UN VECTEUR
 107 : *
 108 :       IPCHPO=ICHPO1
 108 :       CALL DYNE04(MMATRX,IPCHPO,ICHT2,NDDL,'DUAL')
 109 :       IF (IERR.NE.0) RETURN
 110 : *
 111 :       ICHATX=ICHPO2
 112 :       ICHAFX=ICHPO3
 113 : *
 114 : *---  LISTE DE COEFFICIENTS LIES AUX PAS DE CALCUL
 115 : *
 115 :       CALL DYNEIN(ICHATX,ICHAFX,TINI,DT,NPAS,ICHT3)
 116 :       IF (IERR.NE.0) RETURN
 117 : *
 118 :       SEGDES,MLREEL,ICHARG
 119 : *10   CONTINUE
 120 : *     END DO
 121 :       SEGDES,MCHARG
 122 : *
 123 :       END
 124 :  
 125 :  

© Cast3M 2003 - All rights reserved.
Disclaimer