mama
C MAMA SOURCE GOUNAND 05/12/21 21:34:01 5281 $ COPER, $ MA2,NI2,NJ2, $ IMPR,IRET) IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : MAMA C DESCRIPTION : Implémentation d'opérations matrice -> matrice C C C C LANGAGE : ESOPE C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF) C mél : gounand@semt2.smts.cea.fr C*********************************************************************** C APPELES : C APPELES (E/S) : C APPELES (BLAS) : C APPELES (CALCUL) : C APPELE PAR : C*********************************************************************** C SYNTAXE GIBIANE : C ENTREES : C ENTREES/SORTIES : C SORTIES : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé C*********************************************************************** C VERSION : v1, 27/09/2005, version initiale C HISTORIQUE : v1, 27/09/2005, 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 * REAL*8 MA1(NI1,NJ1) CHARACTER*8 COPER * INTEGER IMPR,IRET * * Executable statements * IF (IMPR.GT.2) WRITE(IOIMP,*) 'Entrée dans mama.eso' IF (COPER.EQ.'COPIE ') THEN GOTO 9999 ENDIF DO IJ=1,NJ1 DO II=1,NI1 MA2(II,IJ)=MA1(II,IJ) ENDDO ENDDO ELSEIF (COPER.EQ.'TRANSPOS') THEN GOTO 9999 ENDIF DO IJ=1,NJ1 DO II=1,NI1 MA2(IJ,II)=MA1(II,IJ) ENDDO ENDDO ELSEIF (COPER.EQ.'JJT ') THEN GOTO 9999 ENDIF DO IJ=1,NI1 DO II=1,NI1 XX=0.D0 DO IK=1,NJ1 XX=XX+MA1(II,IK)*MA1(IJ,IK) ENDDO MA2(II,IJ)=XX ENDDO ENDDO ELSEIF (COPER.EQ.'JTJ ') THEN GOTO 9999 ENDIF DO IJ=1,NJ2 XX=0.D0 DO IK=1,NI1 XX=XX+MA1(IK,II)*MA1(IK,IJ) ENDDO MA2(II,IJ)=XX ENDDO ENDDO ELSE WRITE(IOIMP,*) 'Operation ',COPER,' unknown' GOTO 9999 ENDIF * * Normal termination * IRET=0 RETURN * * Format handling * * * Error handling * * 9999 CONTINUE IRET=1 WRITE(IOIMP,*) 'An error was detected in subroutine mama' RETURN * * End of subroutine MAMA * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales