Download gpocrq.eso

Back to the list

   1 : C GPOCRQ    SOURCE    GOUNAND   06/12/19    21:15:15     5612           
   2 :       SUBROUTINE GPOCRQ(NDIM,
   3 :      $     MYBPOL,
   4 :      $     IMPR,IRET)
   5 :       IMPLICIT REAL*8 (A-H,O-Z)
   6 :       IMPLICIT INTEGER (I-N)
   7 : C***********************************************************************
   8 : C NOM         : GPOCRQ
   9 : C DESCRIPTION : Génère les polynômes pour les éléments de 
  10 : C               Crouzeix-Raviart P1 non conforme de dimension
  11 : C               NDIM et l'ajoute à la liste de polynômes.
  12 : C
  13 : C LANGAGE     : ESOPE
  14 : C AUTEUR      : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  15 : C               mél : gounand@semt2.smts.cea.fr
  16 : C***********************************************************************
  17 : C APPELES          : ISET
  18 : C APPELE PAR       : INELQU, INELCU
  19 : C***********************************************************************
  20 : C ENTREES            : NDIM
  21 : C ENTREES/SORTIES    : MYBPOL
  22 : C SORTIES            : -
  23 : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  24 : C***********************************************************************
  25 : C VERSION    : v1, 18/10/2006, version initiale
  26 : C HISTORIQUE : v1, 18/10/2006, création
  27 : C HISTORIQUE :
  28 : C HISTORIQUE :
  29 : C***********************************************************************
  30 : C Prière de PRENDRE LE TEMPS de compléter les commentaires
  31 : C en cas de modification de ce sous-programme afin de faciliter
  32 : C la maintenance !
  33 : C***********************************************************************
  34 : -INC CCOPTIO
  35 : CBEGININCLUDE SPOLYNO
  36 :       SEGMENT POLYNO
  37 :       REAL*8  COEMON(NBMON)
  38 :       INTEGER EXPMON(NDIML,NBMON)
  39 :       ENDSEGMENT 
  40 :       SEGMENT POLYNS
  41 :       POINTEUR LIPOLY(NBPOLY).POLYNO
  42 :       ENDSEGMENT
  43 : CENDINCLUDE SPOLYNO
  44 :       INTEGER NBMON,NDIML
  45 :       POINTEUR MYBPOL.POLYNS
  46 :       POINTEUR POCRQ.POLYNO
  47 : *
  48 :       INTEGER NDIM
  49 :       INTEGER IMPR,IRET
  50 : *
  51 :       REAL*8 UN
  52 :       PARAMETER(UN=1.D0)
  53 :       INTEGER IMON
  54 : *     
  55 : * Executable statements
  56 : *
  57 :       IF (IMPR.GT.2) WRITE(IOIMP,*) 'Entrée dans gpocrq.eso' 
  58 : * On génère un polynôme du type :
  59 : * x_i^2 - x_{i+1}^2 avec i variant de 1 à NDIM-1
  60 :       SEGACT MYBPOL*MOD
  61 :       DO IBPOLY=1,NDIM-1
  62 :          NDIML=NDIM
  63 :          NBMON=2
  64 :          SEGINI POCRQ
  65 :          POCRQ.COEMON(1)=UN
  66 :          POCRQ.EXPMON(IBPOLY,1)=2
  67 :          POCRQ.COEMON(2)=-UN
  68 :          POCRQ.EXPMON(IBPOLY+1,2)=2
  69 :          SEGDES POCRQ
  70 :          MYBPOL.LIPOLY(**)=POCRQ
  71 :       ENDDO
  72 :       SEGDES MYBPOL
  73 : *     
  74 : * Normal termination
  75 : *
  76 :       IRET=0
  77 :       RETURN
  78 : *
  79 : * Format handling
  80 : *
  81 : *
  82 : * Error handling
  83 : *
  84 :  9999 CONTINUE
  85 :       IRET=1
  86 :       WRITE(IOIMP,*) 'An error was detected in subroutine gpocrq'
  87 :       RETURN
  88 : *
  89 : * End of subroutine GPOCRQ
  90 : *
  91 :       END
  92 : 
  93 :  
  94 :  
  95 :  

© Cast3M 2003 - All rights reserved.
Disclaimer