kopidk
C KOPIDK SOURCE PV 20/09/26 21:18:07 10724 C C************************************************************************ C C PROJET : CASTEM 2000 C C NOM : KOPIDK C C DESCRIPTION : Cette subroutine cree la matrice identité C sous la forme des objets elementaires de type C MATRIK C C LANGAGE : FORTRAN 77 + ESOPE 2000 (avec extensions CISI) C C AUTEUR : A. BECCANTINI, DRN/DMT/SEMT/TTMF C C************************************************************************ C C C APPELES (Outils) : C C APPELES (Calcul) : C C C************************************************************************ C C PHRASE D'APPELLE GIBIANE C C MAT1 = 'KOPS' 'MATIDE' LMOT1 GEO1 'MATRIK' ; C C ENTREES : LMOT1 : objet de type LISTMOTS des variables primales (et C duales) C C GEO1 : objet de type MAILLAGE, des variables primales C (et duales) C C SORTIES: MAT1 : objet de type MATRIK, qui contient la matrice C identité C C************************************************************************ C C HISTORIQUE (Anomalies et modifications éventuelles) C C HISTORIQUE : Cree le 23-8-2000 C C************************************************************************ C C**** Les includes C IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER(I-N) -INC PPARAM -INC CCOPTIO -INC SMMATRIK -INC SMLMOTS -INC SMELEME C C C**** On controle que le MELEME soit de type POI1 C Si non changer C MELEME = IGEOM SEGACT MELEME NBSOUS = MELEME.LISOUS(/1) NTYP = MELEME.ITYPEL C IF ((NBSOUS.NE.0).OR.(NTYP.NE.1)) THEN * In CHANGE : SEGINI MELEME IPT1 = IGEOM SEGDES IPT1 IF (IERR.NE.0) GOTO 9999 ENDIF C NRIGE = 7 NMATRI = 1 NKID = 9 NKMT = 7 C SEGINI MATRIK C C**** Pointeurs sur les maillages primale et duale C MATRIK.IRIGEL(1,1)=MELEME MATRIK.IRIGEL(2,1)=MELEME C C**** La matrice est diagonale. C MATRIK.IRIGEL(7,1)=5 C C**** MATRIK.IRIGEL(4,1) contient le pointeur sur IMATRI C MLMOTS = LPRIM SEGACT MLMOTS NBSOUS = 1 SEGINI IMATRI MATRIK.IRIGEL(4,1) = IMATRI SEGDES MATRIK DO ICON = 1, NBME, 1 ENDDO SEGDES MLMOTS C C**** On rempli la matrice identité C NP = 1 MP = 1 DO ICON = 1, NBME , 1 SEGINI IZAFM IMATRI.LIZAFM(1,ICON) = IZAFM IZAFM.AM(IELEM,1,1) = 1.0D0 ENDDO SEGDES IZAFM ENDDO C SEGDES IMATRI SEGDES MELEME C 9999 RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales