kgra
C KGRA SOURCE CB215821 20/11/25 13:31:27 10792
IMPLICIT INTEGER(I-N)
IMPLICIT REAL*8 (A-H,O-Z)
C*************************************************************************
C Operateur KGRA
C
C Objet : determine le GRADIENT d un CHAMPOINT SOMMET
C
C SYNTAXE : CHGR =KOPS CHPS 'GRAD' TABDOM ;
C TABDOM : Table DOMAINE contenant le support geometrique de CHPC
C CHPS : CHAMPOINT SOMMET
C CHGR : CHAMPOINT CENTRE
C
C*************************************************************************
-INC SMTABLE
POINTEUR MTABD.MTABLE
-INC SMELEME
POINTEUR MELEMS.MELEME,MELEMC.MELEME,IGEOM1.MELEME
-INC PPARAM
-INC CCOPTIO
-INC SMCOORD
-INC CCGEOME
-INC SMCHPOI
POINTEUR IZB.MCHPOI,IZBB.MPOVAL
POINTEUR IZD.MCHPOI,IZDD.MPOVAL
POINTEUR IZV.MCHPOI,IZVV.MPOVAL
-INC SMLENTI
POINTEUR IZIPAD.MLENTI
-INC SIZFFB
REAL*8 HRT(24),RPGJ(9),XYZI(8)
CHARACTER*8 TYPE,TYPC,NOM0
C***
C write(6,*)' On est dans KGRA '
IAXI=0
IF(IFOMOD.EQ.0)IAXI=2
NC=MPOVA1.VPOCHA(/2)
NPT=MPOVA1.VPOCHA(/1)
IF(NC.NE.1)THEN
WRITE(6,*)' Opérateur KOPS option GRAD '
WRITE(6,*)' Le Champoint a plus d''une composante ',nc
RETURN
ENDIF
TYPE=' '
IF(IRET.NE.0)THEN
C% Indice %m1:8 : L'objet %m9:16 n'a pas le bon support géométrique
MOTERR(1: 8) = 'TETA1'
MOTERR(9:16) = 'CHPOINT '
WRITE(IOIMP,*)'Operateur : KOPS GRAD'
RETURN
ENDIF
TYPE=' '
TYPE='CENTRE'
TYPE=' '
SEGACT MELEME
NBSOUS=LISOUS(/1)
IF(NBSOUS.EQ.0)NBSOUS=1
KK=0
DO 1 L=1,NBSOUS
IPT1=MELEME
IF(NBSOUS.NE.1)IPT1=LISOUS(L)
SEGACT IPT1
NP=IPT1.NUM(/1)
NEL=IPT1.NUM(/2)
NOM0=NOMS(IPT1.ITYPEL)//' '
IF(IZFFM.EQ.0)GO TO 90
SEGACT IZFFM*MOD
IZHR=KZHR(1)
SEGACT IZHR*MOD
NPG=FN(/2)
NES=GR(/1)
DO 10 K=1,NEL
KK=KK+1
DO 9 I=1,NP
J=IPT1.NUM(I,K)
DO 12 N=1,IDIM
XYZ(N,I)=XCOOR((J-1)*(IDIM+1) +N)
12 CONTINUE
9 CONTINUE
*IDIM,NP,NPG,IAXI,AIRE)
DO 36 N=1,IDIM
UU=0.D0
DO 35 I=1,NP
IU = IZIPAD.LECT(IPT1.NUM(I,K))
UU= UU + MPOVA1.VPOCHA(IU,1)*HR(N,I,1)
35 CONTINUE
VPOCHA(KK,N)=UU
36 CONTINUE
10 CONTINUE
SEGDES IPT1
1 CONTINUE
SEGDES MPOVA1,MPOVAL
SEGDES MCHPO1,MCHPOI
SEGDES MELEME,IGEOM1,MELEMS
C
SEGSUP IZIPAD,IZFFM,IZHR
RETURN
90 CONTINUE
WRITE(6,*)'Interruption anormale de KOPS option GRAD '
RETURN
1001 FORMAT(20(1X,I5))
1008 FORMAT(10(1X,A8))
1002 FORMAT(10(1X,1PE11.4))
END
					© Cast3M 2003 - Tous droits réservés.
					Mentions légales