Commits

Karl Rupp committed 7121bf1

Added custom FORTRAN stubs for MatCreateAIJViennaCL and MatCreateSeqAIJViennaCL

Comments (0)

Files changed (4)

src/mat/impls/aij/mpi/mpiviennacl/ftn-custom/makefile

+
+#requiresdefine   'PETSC_HAVE_FORTRAN'
+ALL: lib
+CFLAGS   =
+FFLAGS   =
+SOURCEC  = zmpiaijviennaclf.c
+SOURCEF  =
+SOURCEH  =
+DIRS     =
+LIBBASE  = libpetscmat
+LOCDIR   = src/mat/impls/aij/mpi/mpiviennacl/ftn-custom/
+
+include ${PETSC_DIR}/conf/variables
+include ${PETSC_DIR}/conf/rules
+include ${PETSC_DIR}/conf/test

src/mat/impls/aij/mpi/mpiviennacl/ftn-custom/zmpiaijviennaclf.c

+#include <petsc-private/fortranimpl.h>
+#include <petscmat.h>
+
+#if defined(PETSC_HAVE_FORTRAN_CAPS)
+#define matcreateaijviennacl_                 MATCREATEAIJVIENNACL
+#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
+#define matcreateaijviennacl_                 matcreateaijviennacl
+#endif
+
+PETSC_EXTERN void PETSC_STDCALL matcreateaijviennacl_(MPI_Comm *comm,PetscInt *m,PetscInt *n,PetscInt *M,PetscInt *N,PetscInt *d_nz,PetscInt *d_nnz,PetscInt *o_nz,PetscInt *o_nnz,Mat *newmat,PetscErrorCode *ierr)
+{
+  CHKFORTRANNULLINTEGER(d_nnz);
+  CHKFORTRANNULLINTEGER(o_nnz);
+
+  *ierr = MatCreateAIJViennaCL(MPI_Comm_f2c(*(MPI_Fint*)&*comm),*m,*n,*M,*N,*d_nz,d_nnz,*o_nz,o_nnz,newmat);
+}
+

src/mat/impls/aij/seq/seqviennacl/ftn-custom/makefile

+
+#requiresdefine   'PETSC_HAVE_FORTRAN'
+ALL: lib
+CFLAGS   =
+FFLAGS   =
+SOURCEC  = zaijviennaclf.c
+SOURCEF  =
+SOURCEH  =
+DIRS     =
+LIBBASE  = libpetscmat
+LOCDIR   = src/mat/impls/aij/seq/seqviennacl/ftn-custom/
+
+include ${PETSC_DIR}/conf/variables
+include ${PETSC_DIR}/conf/rules
+include ${PETSC_DIR}/conf/test

src/mat/impls/aij/seq/seqviennacl/ftn-custom/zaijviennaclf.c

+#include <petsc-private/fortranimpl.h>
+#include <petscmat.h>
+
+#if defined(PETSC_HAVE_FORTRAN_CAPS)
+#define matcreateseqaijviennacl_                 MATCREATESEQAIJVIENNACL
+#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
+#define matcreateseqaijviennacl_                 matcreateseqaijviennacl
+#endif
+
+PETSC_EXTERN void PETSC_STDCALL matcreateseqaijviennacl_(MPI_Comm *comm,PetscInt *m,PetscInt *n,PetscInt *nz,PetscInt *nnz,Mat *newmat,PetscErrorCode *ierr)
+{
+  CHKFORTRANNULLINTEGER(nnz);
+  *ierr = MatCreateSeqAIJViennaCL(MPI_Comm_f2c(*(MPI_Fint*)&*comm),*m,*n,*nz,nnz,newmat);
+}
+
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.