From 5cd639f1cc497c8efbf992d4c069a34d445b809d Mon Sep 17 00:00:00 2001 From: eschnett Date: Tue, 30 Dec 2014 18:40:12 +0000 Subject: Add some interfaces for BLAS routines git-svn-id: http://svn.cactuscode.org/projects/ExternalLibraries/BLAS/trunk@53 53307013-940b-43fa-b11d-2c2b05dfe90d --- src/blas.F90 | 40 ++++++++++++++++++++++++++++++++++++++++ src/make.code.defn | 2 +- 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 src/blas.F90 diff --git a/src/blas.F90 b/src/blas.F90 new file mode 100644 index 0000000..86364b7 --- /dev/null +++ b/src/blas.F90 @@ -0,0 +1,40 @@ +module blas + implicit none + + integer, parameter :: izero = 0 + integer, parameter :: blas_integer_kind = kind(izero) + + interface gemm + SUBROUTINE SGEMM(TRANSA,TRANSB,M,N,K,ALPHA,A,LDA,B,LDB,BETA,C,LDC) + IMPLICIT NONE + REAL ALPHA,BETA + INTEGER K,LDA,LDB,LDC,M,N + CHARACTER TRANSA,TRANSB + REAL A(LDA,*),B(LDB,*),C(LDC,*) + END SUBROUTINE SGEMM + + SUBROUTINE DGEMM(TRANSA,TRANSB,M,N,K,ALPHA,A,LDA,B,LDB,BETA,C,LDC) + IMPLICIT NONE + DOUBLE PRECISION ALPHA,BETA + INTEGER K,LDA,LDB,LDC,M,N + CHARACTER TRANSA,TRANSB + DOUBLE PRECISION A(LDA,*),B(LDB,*),C(LDC,*) + END SUBROUTINE DGEMM + + SUBROUTINE CGEMM(TRANSA,TRANSB,M,N,K,ALPHA,A,LDA,B,LDB,BETA,C,LDC) + IMPLICIT NONE + COMPLEX ALPHA,BETA + INTEGER K,LDA,LDB,LDC,M,N + CHARACTER TRANSA,TRANSB + COMPLEX A(LDA,*),B(LDB,*),C(LDC,*) + END SUBROUTINE CGEMM + + SUBROUTINE ZGEMM(TRANSA,TRANSB,M,N,K,ALPHA,A,LDA,B,LDB,BETA,C,LDC) + COMPLEX*16 ALPHA,BETA + INTEGER K,LDA,LDB,LDC,M,N + CHARACTER TRANSA,TRANSB + COMPLEX*16 A(LDA,*),B(LDB,*),C(LDC,*) + END SUBROUTINE ZGEMM + end interface gemm + +end module blas diff --git a/src/make.code.defn b/src/make.code.defn index f907740..0dd6be3 100644 --- a/src/make.code.defn +++ b/src/make.code.defn @@ -1,7 +1,7 @@ # Main make.code.defn file for thorn BLAS # Source files in this directory -SRCS = +SRCS = blas.F90 # Subdirectories containing source files SUBDIRS = -- cgit v1.2.3