Download inctyp.eso

Back to the list

   1 : C INCTYP    SOURCE    GOUNAND   11/07/21    21:15:20     7046           
   2 :       SUBROUTINE INCTYP(MATRIK,
   3 :      $     ATYP,
   4 :      $     IMPR,IRET)
   5 :       IMPLICIT INTEGER(I-N)
   6 :       IMPLICIT REAL*8 (A-H,O-Z)
   7 : C***********************************************************************
   8 : C NOM         : INCTYP
   9 : C DESCRIPTION :
  10 : C     Ce sp initialise le vecteur inconnue primale 
  11 : C     (i.e. x de Ax=b) avec un chpoint d'inconnues primales.
  12 : C     On a en vue une méthode itérative de résolution.
  13 : C
  14 : C     Ce sp est quasiment identique à mesmbr.eso.
  15 : C     C'est une interface à ch2vec.
  16 : C
  17 : C
  18 : C LANGAGE     : ESOPE
  19 : C AUTEUR      : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/TTMF)
  20 : C               mél : gounand@semt2.smts.cea.fr
  21 : C***********************************************************************
  22 : C APPELE  : CH2VEC
  23 : C***********************************************************************
  24 : C ENTREES            : MATRIK, MCHINI, IMPR
  25 : C ENTREES/SORTIES    : -
  26 : C SORTIES            : INCX, IRET
  27 : C CODE RETOUR (IRET) : 0 si ok
  28 : C                     <0 si problème
  29 : C     MATRIK : pointeur sur segment MATRIK de l'include SMMATRIK
  30 : C              on pioche dedans les informations nécessaires
  31 : C              (numérotations, inconnues, support géométriques)
  32 : C              pour effectuer la conversion MCHINI->INCX.
  33 : C     MCHINI : pointeur sur segment MCHPOI de l'include SMCHPOI
  34 : C              chpoint d'initialisation du vecteur INCX
  35 : C     IMPR   : niveau d'impression
  36 : C     INCX   : pointeur sur segment IZA de l'include SMMATRIK
  37 : C              vecteur x initial pour la résolution de Ax=b.
  38 : C              Il est initialisé à 0 si MCHINI est nul
  39 : C              sinon les valeurs non nulles de MCHINI 
  40 : C              correspondant à des inconnues primales sont
  41 : C              chargées dans INCX.
  42 : C              Les valeurs non nulles de MCHINI NE correspondant
  43 : C              PAS à des inconnues primales donnent lieu à
  44 : C              l'émission d'un warning (cf. CH2VEC).
  45 : C***********************************************************************
  46 : C VERSION    : v1, 01/04/98, version initiale
  47 : C HISTORIQUE : v1, 01/04/98, création
  48 : C HISTORIQUE :
  49 : C HISTORIQUE :
  50 : C***********************************************************************
  51 : C Prière de PRENDRE LE TEMPS de compléter les commentaires
  52 : C en cas de modification de ce sous-programme afin de faciliter
  53 : C la maintenance !
  54 : C***********************************************************************
  55 : -INC CCOPTIO
  56 : -INC SMMATRIK
  57 :       POINTEUR INCX.IZA
  58 : -INC SMLENTI
  59 :       POINTEUR ATYP.MLENTI
  60 : C
  61 :       IRET=0
  62 :       SEGACT MATRIK
  63 : C Initialisation de l'inconnue à 0
  64 :       JG=KNTTP
  65 :       SEGINI ATYP
  66 :       NBVA=KNTTP
  67 :       MINC=KMINCP
  68 :       SEGACT MINC
  69 :       NBI=LISINC(/2)
  70 :       NPT=NPOS(/1)-1
  71 :       IDMAT=KIDMAT(1)
  72 :       SEGACT IDMAT
  73 :       DO IBI=1,NBI
  74 :          DO IPT=1,NPT
  75 :             IF (MPOS(IPT,IBI).NE.0) THEN
  76 :                ATYP.LECT(NUAN(NPOS(IPT)+
  77 :      $              MPOS(IPT,IBI)-1))=IBI
  78 :             ENDIF
  79 :          ENDDO
  80 :       ENDDO
  81 :       SEGDES IDMAT
  82 :       SEGDES MINC
  83 : C
  84 :       IF (IMPR.GT.5) THEN
  85 :          WRITE(IOIMP,*) 'inctyp.eso : création du pointeur ATYP=',ATYP
  86 :          IF (IMPR.GT.7) THEN
  87 :             WRITE(IOIMP,*) 'ATYP(1..',JG,')= '
  88 :             WRITE(IOIMP,1002)(ATYP.LECT(II),II=1,JG)
  89 :          ENDIF
  90 :       ENDIF
  91 : C
  92 :       SEGDES ATYP
  93 :       SEGDES MATRIK
  94 : *
  95 : *     Normal termination
  96 : *
  97 :       RETURN
  98 : *
  99 : * Format handling
 100 : *
 101 :  1002 FORMAT(10(1X,I7))
 102 : *
 103 : * Error handling
 104 : *
 105 :  9999 CONTINUE
 106 :       WRITE(IOIMP,*) 'An error was detected in inctyp.eso'
 107 :       RETURN
 108 : *
 109 : * End of INCTYP
 110 : *
 111 :       END
 112 : 
 113 : 
 114 : 
 115 :  
 116 :  
 117 :  
 118 :  
 119 :  
 120 :  
 121 :  

© Cast3M 2003 - All rights reserved.
Disclaimer