mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-21 07:19:46 +08:00
28539e7597
the modifications to initial code follow: * changed build system from plain makefiles to cmake * added eigen2 (4 versions: vec/novec and fixed/dynamic), GMM++, MTL4 interfaces * added "transposed matrix * vector" product action * updated blitz interface to use condensed products instead of hand coded loops * removed some deprecated interfaces * changed default storage order to column major for all libraries * new generic bench timer strategy which is supposed to be more accurate * various code clean-up
37 lines
994 B
Plaintext
37 lines
994 B
Plaintext
|
|
SUBROUTINE DMXM(A,N,B,M,C,L)
|
|
**
|
|
** C = A * B
|
|
** A ET B MATRICES A(N,M) B(M,L) ==> C(N,L)
|
|
**
|
|
*>A PREMIERE MATRICE
|
|
*>N PREMIERE DIMENSION DE A ET DE C
|
|
*>B DEUXIEME MATRICE
|
|
*>M DEUXIEME DIMENSION DE A ET PERMIERE DE B
|
|
*<C MATRICE PRODUIT DE A ET DE B
|
|
*>L DEUXIEME DIMENSION DE B ET DE C
|
|
*A R. SANCHEZ ( EARLY WINTER 1987 )
|
|
*V M.F. ROBEAU
|
|
*M AM BAUDRON - AVRIL 94
|
|
*: ERREUR DANS L'APPEL A L'UTILITAIRE SGEMM
|
|
*: APPEL A L'UTILITAIRE SGEMM DE LA LIBRAIRIE BLAS SUR HP
|
|
*M AM BAUDRON - NOVEMBRE 1991
|
|
*: ERREUR ( SOMME SUR LES TERMES PAS FAITE )
|
|
*: APPEL A L'UTILITAIRE SGEMM DE LA LIBRAIRIE BLAS SUR RISC
|
|
*M AM BAUDRON - MAI 1993
|
|
*: CHANGEMENT DES %IF LOCAL SUN MIPS SUITE A INTRODUCTION VERSION IBM
|
|
REAL*8 A(N,M),B(M,L),C(N,L),R
|
|
DO 5 J=1,L
|
|
DO 5 I=1,N
|
|
C(I,J)=0.
|
|
5 CONTINUE
|
|
DO 10 K=1,M
|
|
DO 20 J=1,L
|
|
R=B(K,J)
|
|
DO 20 I=1,N
|
|
C(I,J)=C(I,J)+A(I,K)*R
|
|
20 CONTINUE
|
|
10 CONTINUE
|
|
RETURN
|
|
END
|