Download coga1.eso

Back to the list

   1 : C COGA1     SOURCE    GOUNAND   05/12/21    21:17:12     5281           
   2 :       SUBROUTINE COGA1(NDLIG,NDCOL,NDNOEU,NDPOGO,NDELEM,
   3 :      $     JCOEF,FNPG,
   4 :      $     JCOEFG,
   5 :      $     IMPR,IRET)
   6 :       IMPLICIT REAL*8 (A-H,O-Z)
   7 :       IMPLICIT INTEGER (I-N)
   8 : C***********************************************************************
   9 : C NOM         : COGA1
  10 : C PROJET      : Noyau linéaire NLIN
  11 : C DESCRIPTION : Calcul du coefficient aux points de Gauss d'un élément
  12 : C               de référence pour chaque élément réel.
  13 : C               Le coefficient peut être scalaire, vectoriel ou 
  14 : C               tensoriel. Les fonctions d'interpolation seront les
  15 : C               mêmes pour chaque composante du vecteur ou chaque
  16 : C               coefficient des matrices. 
  17 : C               Les valeurs nodales devront être exprimées par rapport
  18 : C               aux coordonnées de l'espace de référence (par exemple,
  19 : C               s'il y a des dérivées, elles devront être exprimées par
  20 : C               rapport à ksi, eta...) 
  21 : C               Si les valeurs sont des variables généralisées, il n'y
  22 : C               a peut-être rien à faire. (?)
  23 : C
  24 : C    Ceci ressemble à un produit tensoriel (cf. geoli1)
  25 : C             
  26 : C LANGAGE     : Fortran 77 (sauf E/S)
  27 : C AUTEUR      : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  28 : C               mél : gounand@semt2.smts.cea.fr
  29 : C***********************************************************************
  30 : C APPELES          : -
  31 : C APPELE PAR       : COGAU
  32 : C***********************************************************************
  33 : C ENTREES            : * NDLIG (type entier) : nb. de lignes du
  34 : C                        coefficient tensoriel.
  35 : C                      * NDCOL (type entier) : nb. de colonnes du
  36 : C                        coefficient tensoriel.
  37 : C                      * NDNOEU (type entier) : nombre de ddl (par
  38 : C                        élément) de la transformation géométrique.
  39 : C                      * NDPOGO (type entier) : nombre de points
  40 : C                        d'intégration.
  41 : C                      * NDELEM (type entier) : nombre d'éléments du
  42 : C                        maillage élémentaire courant.
  43 : C                      * JCOEF  (type réel)   : valeurs des ddl du
  44 : C                        coefficient tensoriel sur le maillage
  45 : C                        élémentaire courant. 
  46 : C                      * FNPG (type réel)     : valeurs des fonctions
  47 : C                        d'interpolation pour le coefficient aux points
  48 : C                        de gauss sur l'élément de référence. 
  49 : C ENTREES/SORTIES    : * JCOEFG (type réel)   : valeurs du coefficient
  50 : C                        tensoriel aux points de Gauss sur le maillage
  51 : C                        élémentaire. 
  52 : C SORTIES            : -
  53 : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  54 : C***********************************************************************
  55 : C VERSION    : v1, 17/08/99, version initiale
  56 : C HISTORIQUE : v1, 17/08/99, création
  57 : C HISTORIQUE :
  58 : C HISTORIQUE :
  59 : C***********************************************************************
  60 : C Prière de PRENDRE LE TEMPS de compléter les commentaires
  61 : C en cas de modification de ce sous-programme afin de faciliter
  62 : C la maintenance !
  63 : C***********************************************************************
  64 : -INC CCOPTIO      
  65 :       INTEGER NDLIG,NDCOL,NDNOEU,NDPOGO,NDELEM
  66 :       REAL*8 JCOEF (NDNOEU,NDLIG,NDCOL,NDELEM)
  67 :       REAL*8 FNPG  (NDNOEU,NDPOGO)
  68 :       REAL*8 JCOEFG(NDLIG,NDCOL,NDPOGO,NDELEM)
  69 : *
  70 :       INTEGER IMPR,IRET
  71 :       INTEGER IELEM,IPOGO,INOEUD,ICOL,ILIG
  72 : *     
  73 : * Executable statements
  74 : *
  75 :       IF (IMPR.GT.1) WRITE(IOIMP,*) 'Entrée dans coga1'
  76 :       DO 1 IELEM=1,NDELEM
  77 :          DO 12 IPOGO=1,NDPOGO
  78 :             DO 122 ICOL=1,NDCOL
  79 :                DO 1222 ILIG=1,NDLIG
  80 :                   DO 12222 INOEUD=1,NDNOEU
  81 :                      JCOEFG(ILIG,ICOL,IPOGO,IELEM)=
  82 :      $                    JCOEFG(ILIG,ICOL,IPOGO,IELEM)
  83 :      $                    + (JCOEF(INOEUD,ILIG,ICOL,IELEM)
  84 :      $                       *FNPG(INOEUD,IPOGO))
  85 : 12222             CONTINUE
  86 :  1222          CONTINUE
  87 :  122        CONTINUE
  88 :  12      CONTINUE
  89 :  1    CONTINUE
  90 : 
  91 : *
  92 : * Normal termination
  93 : *
  94 :       IRET=0
  95 :       RETURN
  96 : *
  97 : * Format handling
  98 : *
  99 : *
 100 : * Error handling
 101 : *
 102 :  9999 CONTINUE
 103 :       IRET=1
 104 :       WRITE(IOIMP,*) 'An error was detected in subroutine coga1'
 105 :       RETURN
 106 : *
 107 : * End of subroutine COGA1
 108 : *
 109 :       END
 110 : 
 111 :  

© Cast3M 2003 - All rights reserved.
Disclaimer