dcogaf
C DCOGAF SOURCE GOUNAND 21/06/02 21:15:44 11022 $ JDCOFG, $ IMPR,IRET) IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : DCOGAF C PROJET : Noyau linéaire NLIN C DESCRIPTION : C C C LANGAGE : ESOPE C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF) C mél : gounand@semt2.smts.cea.fr C*********************************************************************** C APPELES : C APPELE PAR : C*********************************************************************** C ENTREES : C C ENTREES/SORTIES : - C SORTIES : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé C*********************************************************************** C VERSION : v1, 03/10/03, version initiale C HISTORIQUE : v1, 03/10/03, création C HISTORIQUE : C HISTORIQUE : C*********************************************************************** C Prière de PRENDRE LE TEMPS de compléter les commentaires C en cas de modification de ce sous-programme afin de faciliter C la maintenance ! C*********************************************************************** -INC PPARAM -INC CCOPTIO -INC TNLIN *-INC SFACTIV *-INC SMCHAEL INTEGER NBLIG,NBCOL,N2LIG,N2COL,NBPOI,NBELM POINTEUR JCOEFF.MCHEVA POINTEUR JDCOFG.MCHEVA * Valeurs des fns d'interpolation du coeff. aux points de Gauss POINTEUR JDFFPG.MCHEVA * INTEGER IMPR,IRET * * Executable statements * IF (IMPR.GT.1) WRITE(IOIMP,*) 'Entrée dans dcogaf' IESREL=IDIM SEGACT SSFACT NBELFV=SSFACT.LFACTI(/1) NBELEV=SSFACT.LFACTI(/2) SEGACT JCOEFF NDLIG =JCOEFF.WELCHE(/1) NDCOL =JCOEFF.WELCHE(/2) N2DLIG=JCOEFF.WELCHE(/3) N2DCOL=JCOEFF.WELCHE(/4) NDNOEU=JCOEFF.WELCHE(/5) NBELEM=JCOEFF.WELCHE(/6) IF (NDLIG.NE.1.OR.N2DLIG.NE.1.OR.N2DCOL.NE.1 $ .OR.NDNOEU.NE.1 $ .OR.(NBELEM.NE.1.AND.NBELEM.NE.NBELEV)) THEN WRITE(IOIMP,*) 'Erreur dims JCOEFF' GOTO 9999 ENDIF NDDL=NDCOL NLVCOF=NBELEM SEGACT JDFFPG NDLIG =JDFFPG.WELCHE(/1) NDCOL =JDFFPG.WELCHE(/2) N2DLIG=JDFFPG.WELCHE(/3) N2DCOL=JDFFPG.WELCHE(/4) NDNOEU=JDFFPG.WELCHE(/5) NBELEM=JDFFPG.WELCHE(/6) IF (NDLIG.NE.1.OR.NDCOL.NE.NDDL $ .OR.N2DLIG.NE.1.OR.N2DCOL.NE.IESREL $ .OR.NBELEM.NE.NBELEF) THEN WRITE(IOIMP,*) 'Erreur dims JDFFPG' GOTO 9999 ENDIF NBPOGO=NDNOEU * * Initialisations... * NBLIG=1 NBCOL=1 N2LIG=1 N2COL=IESREL NBPOI=NBPOGO NBELM=NBELEF SEGINI JDCOFG * * On effectue le calcul du coefficient aux points de Gauss * $ NLVCOF, $ JCOEFF.WELCHE,JDFFPG.WELCHE,SSFACT.LFACTI, $ JDCOFG.WELCHE, $ IMPR,IRET) IF (IRET.NE.0) GOTO 9999 SEGDES JDCOFG SEGDES SSFACT SEGDES JCOEFF SEGDES JDFFPG * * Normal termination * IRET=0 RETURN * * Format handling * * * Error handling * 9999 CONTINUE IRET=1 WRITE(IOIMP,*) 'An error was detected in subroutine dcogaf' RETURN * * End of subroutine DCOGAF * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales