Download gcpasy.eso

Back to the list

   1 : C GCPASY    SOURCE    GOUNAND   05/12/21    21:24:56     5281           
   2 :       SUBROUTINE GCPASY(PGCOUR,NOPG,DIMSRF,XCOR,POIDS,
   3 :      $     IMPR,IRET)
   4 :       IMPLICIT REAL*8 (A-H,O-Z)
   5 :       IMPLICIT INTEGER (I-N)
   6 : C***********************************************************************
   7 : C NOM         : GCPASY
   8 : C PROJET      : Noyau linéaire NLIN
   9 : C DESCRIPTION : Rajoute un point et son image par une symétrie par 
  10 : C               rapport à l'axe des x en 2D dans une méthode 
  11 : C               d'intégration type Gauss (PGCOUR).
  12 : C               Domaine de type [ Fully symmetric region ]
  13 : C                       i.e. segment, carré et cube pour nous.
  14 : C               Générateur de type [ Partial symmetry ].
  15 : C
  16 : C LANGAGE     : ESOPE
  17 : C AUTEUR      : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  18 : C               mél : gounand@semt2.smts.cea.fr
  19 : C***********************************************************************
  20 : C APPELES          : -
  21 : C APPELE PAR       : INGAQU
  22 : C***********************************************************************
  23 : C ENTREES            : DIMSRF, XCOR, POIDS
  24 : C ENTREES/SORTIES    : PGCOUR (actif en *MOD), NOPG
  25 : C SORTIES            : MYPGS
  26 : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  27 : C***********************************************************************
  28 : C VERSION    : v1, 20/10/99, version initiale
  29 : C HISTORIQUE : v1, 20/10/99, création
  30 : C HISTORIQUE :
  31 : C HISTORIQUE :
  32 : C***********************************************************************
  33 : C Prière de PRENDRE LE TEMPS de compléter les commentaires
  34 : C en cas de modification de ce sous-programme afin de faciliter
  35 : C la maintenance !
  36 : C***********************************************************************
  37 : -INC CCOPTIO
  38 : CBEGININCLUDE SPOGAU
  39 :       SEGMENT POGAU
  40 :       CHARACTER*(LNNPG)  NOMPG
  41 :       CHARACTER*(LNTPG)  TYPMPG
  42 :       CHARACTER*(LNFPG)  FORLPG
  43 :       INTEGER NORDPG
  44 :       REAL*8 XCOPG(NDLPG,NBPG)
  45 :       REAL*8 XPOPG(NBPG)
  46 :       ENDSEGMENT
  47 :       SEGMENT POGAUS
  48 :       POINTEUR LISPG(0).POGAU
  49 :       ENDSEGMENT
  50 : CENDINCLUDE SPOGAU
  51 :       POINTEUR PGCOUR.POGAU
  52 : *
  53 :       INTEGER NOPG,DIMSRF
  54 :       REAL*8 XCOR(DIMSRF)
  55 :       REAL*8 POIDS
  56 :       INTEGER IMPR,IRET
  57 : *     
  58 : * Executable statements
  59 : *
  60 :       IF (IMPR.GT.6) WRITE(IOIMP,*) 'Entrée dans gcpasy'
  61 :       IF (DIMSRF.NE.2) THEN
  62 :          WRITE(IOIMP,*) 'DIMSRF doit etre égal à 2...'
  63 :          GOTO 9999
  64 :       ENDIF
  65 : *
  66 : * On ajoute le point...
  67 : *
  68 :       NOPG=NOPG+1
  69 :       PGCOUR.XCOPG(1,NOPG)= XCOR(1)
  70 :       PGCOUR.XCOPG(2,NOPG)= XCOR(2)
  71 :       PGCOUR.XPOPG(NOPG)=POIDS
  72 : *
  73 : * ...et son image par la symétrie / à l'axe des x
  74 : *
  75 :       NOPG=NOPG+1
  76 :       PGCOUR.XCOPG(1,NOPG)= XCOR(1)
  77 :       PGCOUR.XCOPG(2,NOPG)=-XCOR(2)
  78 :       PGCOUR.XPOPG(NOPG)=POIDS
  79 : *
  80 : * Normal termination
  81 : *
  82 :       IRET=0
  83 :       RETURN
  84 : *
  85 : * Format handling
  86 : *
  87 : *
  88 : * Error handling
  89 : *
  90 :  9999 CONTINUE
  91 :       IRET=1
  92 :       WRITE(IOIMP,*) 'An error was detected in subroutine gcpasy'
  93 :       RETURN
  94 : *
  95 : * End of subroutine GCPASY
  96 : *
  97 :       END
  98 : 
  99 :  
 100 :  

© Cast3M 2003 - All rights reserved.
Disclaimer