org.jblas
Class NativeBlas

java.lang.Object
  extended by org.jblas.NativeBlas

public class NativeBlas
extends java.lang.Object

Native BLAS and LAPACK functions.

The NativeBlas class contains the native BLAS and LAPACK functions. Each Fortran function is mapped to a static method of this class. For each array argument, an additional parameter is introduced which gives the offset from the beginning of the passed array. In C, you would be able to pass a different pointer, but in Java, you can only pass the whole array.

Note that due to the way the JNI is usually implemented, the arrays are first copied outside of the JVM before the function is called. This means that functions whose runtime is linear in the amount of memory do usually not run faster just because you are using a native implementation. This holds true for most Level 1 BLAS routines (like vector addition), and unfortunately also for most Level 2 BLAS routines (like matrix-vector multiplication). For these, there exists a class JavaBlas which contains Java implementations.

In LAPACK, there exist routines which require workspace to be allocated together with a standard procedure for computing the size of these workspaces. jblas automatically also generates wrappers for these routines with automatic workspace allocation. These routines have the same name, but the workspace arguments are removed.

Finally, an example: The fortran routine

 SUBROUTINE DAXPY(N,DA,DX,INCX,DY,INCY)
     DOUBLE PRECISION DA
     INTEGER INCX,INCY,N
     DOUBLE PRECISION DX(*),DY(*)
 
becomes
 public static native void daxpy(int n, double da, double[] dx, int dxIdx,
    int incx, double[] dy, int dyIdx, int incy);
 


Constructor Summary
NativeBlas()
           
 
Method Summary
static void caxpy(int n, ComplexFloat ca, float[] cx, int cxIdx, int incx, float[] cy, int cyIdx, int incy)
           
static void ccopy(int n, float[] cx, int cxIdx, int incx, float[] cy, int cyIdx, int incy)
           
static ComplexFloat cdotc(int n, float[] cx, int cxIdx, int incx, float[] cy, int cyIdx, int incy)
           
static ComplexFloat cdotu(int n, float[] cx, int cxIdx, int incx, float[] cy, int cyIdx, int incy)
           
static int cgeev(char jobvl, char jobvr, int n, float[] a, int aIdx, int lda, float[] w, int wIdx, float[] vl, int vlIdx, int ldvl, float[] vr, int vrIdx, int ldvr, float[] rwork, int rworkIdx)
           
static int cgeev(char jobvl, char jobvr, int n, float[] a, int aIdx, int lda, float[] w, int wIdx, float[] vl, int vlIdx, int ldvl, float[] vr, int vrIdx, int ldvr, float[] work, int workIdx, int lwork, float[] rwork, int rworkIdx)
           
static void cgemm(char transa, char transb, int m, int n, int k, ComplexFloat alpha, float[] a, int aIdx, int lda, float[] b, int bIdx, int ldb, ComplexFloat beta, float[] c, int cIdx, int ldc)
           
static void cgemv(char trans, int m, int n, ComplexFloat alpha, float[] a, int aIdx, int lda, float[] x, int xIdx, int incx, ComplexFloat beta, float[] y, int yIdx, int incy)
           
static void cgerc(int m, int n, ComplexFloat alpha, float[] x, int xIdx, int incx, float[] y, int yIdx, int incy, float[] a, int aIdx, int lda)
           
static void cgeru(int m, int n, ComplexFloat alpha, float[] x, int xIdx, int incx, float[] y, int yIdx, int incy, float[] a, int aIdx, int lda)
           
static int cgesvd(char jobu, char jobvt, int m, int n, float[] a, int aIdx, int lda, float[] s, int sIdx, float[] u, int uIdx, int ldu, float[] vt, int vtIdx, int ldvt, float[] rwork, int rworkIdx)
           
static int cgesvd(char jobu, char jobvt, int m, int n, float[] a, int aIdx, int lda, float[] s, int sIdx, float[] u, int uIdx, int ldu, float[] vt, int vtIdx, int ldvt, float[] work, int workIdx, int lwork, float[] rwork, int rworkIdx)
           
static void cscal(int n, ComplexFloat ca, float[] cx, int cxIdx, int incx)
           
static void csscal(int n, float sa, float[] cx, int cxIdx, int incx)
           
static void cswap(int n, float[] cx, int cxIdx, int incx, float[] cy, int cyIdx, int incy)
           
static double dasum(int n, double[] dx, int dxIdx, int incx)
           
static void daxpy(int n, double da, double[] dx, int dxIdx, int incx, double[] dy, int dyIdx, int incy)
           
static void dcopy(int n, double[] dx, int dxIdx, int incx, double[] dy, int dyIdx, int incy)
           
static double ddot(int n, double[] dx, int dxIdx, int incx, double[] dy, int dyIdx, int incy)
           
static int dgeev(char jobvl, char jobvr, int n, double[] a, int aIdx, int lda, double[] wr, int wrIdx, double[] wi, int wiIdx, double[] vl, int vlIdx, int ldvl, double[] vr, int vrIdx, int ldvr)
           
static int dgeev(char jobvl, char jobvr, int n, double[] a, int aIdx, int lda, double[] wr, int wrIdx, double[] wi, int wiIdx, double[] vl, int vlIdx, int ldvl, double[] vr, int vrIdx, int ldvr, double[] work, int workIdx, int lwork)
           
static void dgemm(char transa, char transb, int m, int n, int k, double alpha, double[] a, int aIdx, int lda, double[] b, int bIdx, int ldb, double beta, double[] c, int cIdx, int ldc)
           
static void dgemv(char trans, int m, int n, double alpha, double[] a, int aIdx, int lda, double[] x, int xIdx, int incx, double beta, double[] y, int yIdx, int incy)
           
static void dger(int m, int n, double alpha, double[] x, int xIdx, int incx, double[] y, int yIdx, int incy, double[] a, int aIdx, int lda)
           
static int dgesv(int n, int nrhs, double[] a, int aIdx, int lda, int[] ipiv, int ipivIdx, double[] b, int bIdx, int ldb)
           
static int dgesvd(char jobu, char jobvt, int m, int n, double[] a, int aIdx, int lda, double[] s, int sIdx, double[] u, int uIdx, int ldu, double[] vt, int vtIdx, int ldvt)
           
static int dgesvd(char jobu, char jobvt, int m, int n, double[] a, int aIdx, int lda, double[] s, int sIdx, double[] u, int uIdx, int ldu, double[] vt, int vtIdx, int ldvt, double[] work, int workIdx, int lwork)
           
static int dgetrf(int m, int n, double[] a, int aIdx, int lda, int[] ipiv, int ipivIdx)
           
static double dnrm2(int n, double[] x, int xIdx, int incx)
           
static int dposv(char uplo, int n, int nrhs, double[] a, int aIdx, int lda, double[] b, int bIdx, int ldb)
           
static int dpotrf(char uplo, int n, double[] a, int aIdx, int lda)
           
static void dscal(int n, double da, double[] dx, int dxIdx, int incx)
           
static void dswap(int n, double[] dx, int dxIdx, int incx, double[] dy, int dyIdx, int incy)
           
static int dsyev(char jobz, char uplo, int n, double[] a, int aIdx, int lda, double[] w, int wIdx)
           
static int dsyev(char jobz, char uplo, int n, double[] a, int aIdx, int lda, double[] w, int wIdx, double[] work, int workIdx, int lwork)
           
static int dsyevd(char jobz, char uplo, int n, double[] a, int aIdx, int lda, double[] w, int wIdx)
           
static int dsyevd(char jobz, char uplo, int n, double[] a, int aIdx, int lda, double[] w, int wIdx, double[] work, int workIdx, int lwork, int[] iwork, int iworkIdx, int liwork)
           
static int dsyevr(char jobz, char range, char uplo, int n, double[] a, int aIdx, int lda, double vl, double vu, int il, int iu, double abstol, int[] m, int mIdx, double[] w, int wIdx, double[] z, int zIdx, int ldz, int[] isuppz, int isuppzIdx)
           
static int dsyevr(char jobz, char range, char uplo, int n, double[] a, int aIdx, int lda, double vl, double vu, int il, int iu, double abstol, int[] m, int mIdx, double[] w, int wIdx, double[] z, int zIdx, int ldz, int[] isuppz, int isuppzIdx, double[] work, int workIdx, int lwork, int[] iwork, int iworkIdx, int liwork)
           
static int dsyevx(char jobz, char range, char uplo, int n, double[] a, int aIdx, int lda, double vl, double vu, int il, int iu, double abstol, int[] m, int mIdx, double[] w, int wIdx, double[] z, int zIdx, int ldz, double[] work, int workIdx, int lwork, int[] iwork, int iworkIdx, int[] ifail, int ifailIdx)
           
static int dsyevx(char jobz, char range, char uplo, int n, double[] a, int aIdx, int lda, double vl, double vu, int il, int iu, double abstol, int[] m, int mIdx, double[] w, int wIdx, double[] z, int zIdx, int ldz, int[] iwork, int iworkIdx, int[] ifail, int ifailIdx)
           
static int dsysv(char uplo, int n, int nrhs, double[] a, int aIdx, int lda, int[] ipiv, int ipivIdx, double[] b, int bIdx, int ldb)
           
static int dsysv(char uplo, int n, int nrhs, double[] a, int aIdx, int lda, int[] ipiv, int ipivIdx, double[] b, int bIdx, int ldb, double[] work, int workIdx, int lwork)
           
static double dzasum(int n, double[] zx, int zxIdx, int incx)
           
static double dznrm2(int n, double[] x, int xIdx, int incx)
           
static int icamax(int n, float[] cx, int cxIdx, int incx)
           
static int idamax(int n, double[] dx, int dxIdx, int incx)
           
static int isamax(int n, float[] sx, int sxIdx, int incx)
           
static int izamax(int n, double[] zx, int zxIdx, int incx)
           
static float sasum(int n, float[] sx, int sxIdx, int incx)
           
static void saxpy(int n, float sa, float[] sx, int sxIdx, int incx, float[] sy, int syIdx, int incy)
           
static float scasum(int n, float[] cx, int cxIdx, int incx)
           
static float scnrm2(int n, float[] x, int xIdx, int incx)
           
static void scopy(int n, float[] sx, int sxIdx, int incx, float[] sy, int syIdx, int incy)
           
static float sdot(int n, float[] sx, int sxIdx, int incx, float[] sy, int syIdx, int incy)
           
static int sgeev(char jobvl, char jobvr, int n, float[] a, int aIdx, int lda, float[] wr, int wrIdx, float[] wi, int wiIdx, float[] vl, int vlIdx, int ldvl, float[] vr, int vrIdx, int ldvr)
           
static int sgeev(char jobvl, char jobvr, int n, float[] a, int aIdx, int lda, float[] wr, int wrIdx, float[] wi, int wiIdx, float[] vl, int vlIdx, int ldvl, float[] vr, int vrIdx, int ldvr, float[] work, int workIdx, int lwork)
           
static void sgemm(char transa, char transb, int m, int n, int k, float alpha, float[] a, int aIdx, int lda, float[] b, int bIdx, int ldb, float beta, float[] c, int cIdx, int ldc)
           
static void sgemv(char trans, int m, int n, float alpha, float[] a, int aIdx, int lda, float[] x, int xIdx, int incx, float beta, float[] y, int yIdx, int incy)
           
static void sger(int m, int n, float alpha, float[] x, int xIdx, int incx, float[] y, int yIdx, int incy, float[] a, int aIdx, int lda)
           
static int sgesv(int n, int nrhs, float[] a, int aIdx, int lda, int[] ipiv, int ipivIdx, float[] b, int bIdx, int ldb)
           
static int sgesvd(char jobu, char jobvt, int m, int n, float[] a, int aIdx, int lda, float[] s, int sIdx, float[] u, int uIdx, int ldu, float[] vt, int vtIdx, int ldvt)
           
static int sgesvd(char jobu, char jobvt, int m, int n, float[] a, int aIdx, int lda, float[] s, int sIdx, float[] u, int uIdx, int ldu, float[] vt, int vtIdx, int ldvt, float[] work, int workIdx, int lwork)
           
static int sgetrf(int m, int n, float[] a, int aIdx, int lda, int[] ipiv, int ipivIdx)
           
static float snrm2(int n, float[] x, int xIdx, int incx)
           
static int sposv(char uplo, int n, int nrhs, float[] a, int aIdx, int lda, float[] b, int bIdx, int ldb)
           
static int spotrf(char uplo, int n, float[] a, int aIdx, int lda)
           
static void sscal(int n, float sa, float[] sx, int sxIdx, int incx)
           
static void sswap(int n, float[] sx, int sxIdx, int incx, float[] sy, int syIdx, int incy)
           
static int ssyev(char jobz, char uplo, int n, float[] a, int aIdx, int lda, float[] w, int wIdx)
           
static int ssyev(char jobz, char uplo, int n, float[] a, int aIdx, int lda, float[] w, int wIdx, float[] work, int workIdx, int lwork)
           
static int ssyevd(char jobz, char uplo, int n, float[] a, int aIdx, int lda, float[] w, int wIdx)
           
static int ssyevd(char jobz, char uplo, int n, float[] a, int aIdx, int lda, float[] w, int wIdx, float[] work, int workIdx, int lwork, int[] iwork, int iworkIdx, int liwork)
           
static int ssyevr(char jobz, char range, char uplo, int n, float[] a, int aIdx, int lda, float vl, float vu, int il, int iu, float abstol, int[] m, int mIdx, float[] w, int wIdx, float[] z, int zIdx, int ldz, int[] isuppz, int isuppzIdx)
           
static int ssyevr(char jobz, char range, char uplo, int n, float[] a, int aIdx, int lda, float vl, float vu, int il, int iu, float abstol, int[] m, int mIdx, float[] w, int wIdx, float[] z, int zIdx, int ldz, int[] isuppz, int isuppzIdx, float[] work, int workIdx, int lwork, int[] iwork, int iworkIdx, int liwork)
           
static int ssyevx(char jobz, char range, char uplo, int n, float[] a, int aIdx, int lda, float vl, float vu, int il, int iu, float abstol, int[] m, int mIdx, float[] w, int wIdx, float[] z, int zIdx, int ldz, float[] work, int workIdx, int lwork, int[] iwork, int iworkIdx, int[] ifail, int ifailIdx)
           
static int ssyevx(char jobz, char range, char uplo, int n, float[] a, int aIdx, int lda, float vl, float vu, int il, int iu, float abstol, int[] m, int mIdx, float[] w, int wIdx, float[] z, int zIdx, int ldz, int[] iwork, int iworkIdx, int[] ifail, int ifailIdx)
           
static int ssysv(char uplo, int n, int nrhs, float[] a, int aIdx, int lda, int[] ipiv, int ipivIdx, float[] b, int bIdx, int ldb)
           
static int ssysv(char uplo, int n, int nrhs, float[] a, int aIdx, int lda, int[] ipiv, int ipivIdx, float[] b, int bIdx, int ldb, float[] work, int workIdx, int lwork)
           
static void zaxpy(int n, ComplexDouble za, double[] zx, int zxIdx, int incx, double[] zy, int zyIdx, int incy)
           
static void zcopy(int n, double[] zx, int zxIdx, int incx, double[] zy, int zyIdx, int incy)
           
static ComplexDouble zdotc(int n, double[] zx, int zxIdx, int incx, double[] zy, int zyIdx, int incy)
           
static ComplexDouble zdotu(int n, double[] zx, int zxIdx, int incx, double[] zy, int zyIdx, int incy)
           
static void zdscal(int n, double da, double[] zx, int zxIdx, int incx)
           
static int zgeev(char jobvl, char jobvr, int n, double[] a, int aIdx, int lda, double[] w, int wIdx, double[] vl, int vlIdx, int ldvl, double[] vr, int vrIdx, int ldvr, double[] rwork, int rworkIdx)
           
static int zgeev(char jobvl, char jobvr, int n, double[] a, int aIdx, int lda, double[] w, int wIdx, double[] vl, int vlIdx, int ldvl, double[] vr, int vrIdx, int ldvr, double[] work, int workIdx, int lwork, double[] rwork, int rworkIdx)
           
static void zgemm(char transa, char transb, int m, int n, int k, ComplexDouble alpha, double[] a, int aIdx, int lda, double[] b, int bIdx, int ldb, ComplexDouble beta, double[] c, int cIdx, int ldc)
           
static void zgemv(char trans, int m, int n, ComplexDouble alpha, double[] a, int aIdx, int lda, double[] x, int xIdx, int incx, ComplexDouble beta, double[] y, int yIdx, int incy)
           
static void zgerc(int m, int n, ComplexDouble alpha, double[] x, int xIdx, int incx, double[] y, int yIdx, int incy, double[] a, int aIdx, int lda)
           
static void zgeru(int m, int n, ComplexDouble alpha, double[] x, int xIdx, int incx, double[] y, int yIdx, int incy, double[] a, int aIdx, int lda)
           
static int zgesvd(char jobu, char jobvt, int m, int n, double[] a, int aIdx, int lda, double[] s, int sIdx, double[] u, int uIdx, int ldu, double[] vt, int vtIdx, int ldvt, double[] rwork, int rworkIdx)
           
static int zgesvd(char jobu, char jobvt, int m, int n, double[] a, int aIdx, int lda, double[] s, int sIdx, double[] u, int uIdx, int ldu, double[] vt, int vtIdx, int ldvt, double[] work, int workIdx, int lwork, double[] rwork, int rworkIdx)
           
static void zscal(int n, ComplexDouble za, double[] zx, int zxIdx, int incx)
           
static void zswap(int n, double[] zx, int zxIdx, int incx, double[] zy, int zyIdx, int incy)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NativeBlas

public NativeBlas()
Method Detail

ccopy

public static void ccopy(int n,
                         float[] cx,
                         int cxIdx,
                         int incx,
                         float[] cy,
                         int cyIdx,
                         int incy)

dcopy

public static void dcopy(int n,
                         double[] dx,
                         int dxIdx,
                         int incx,
                         double[] dy,
                         int dyIdx,
                         int incy)

scopy

public static void scopy(int n,
                         float[] sx,
                         int sxIdx,
                         int incx,
                         float[] sy,
                         int syIdx,
                         int incy)

zcopy

public static void zcopy(int n,
                         double[] zx,
                         int zxIdx,
                         int incx,
                         double[] zy,
                         int zyIdx,
                         int incy)

cswap

public static void cswap(int n,
                         float[] cx,
                         int cxIdx,
                         int incx,
                         float[] cy,
                         int cyIdx,
                         int incy)

dswap

public static void dswap(int n,
                         double[] dx,
                         int dxIdx,
                         int incx,
                         double[] dy,
                         int dyIdx,
                         int incy)

sswap

public static void sswap(int n,
                         float[] sx,
                         int sxIdx,
                         int incx,
                         float[] sy,
                         int syIdx,
                         int incy)

zswap

public static void zswap(int n,
                         double[] zx,
                         int zxIdx,
                         int incx,
                         double[] zy,
                         int zyIdx,
                         int incy)

caxpy

public static void caxpy(int n,
                         ComplexFloat ca,
                         float[] cx,
                         int cxIdx,
                         int incx,
                         float[] cy,
                         int cyIdx,
                         int incy)

daxpy

public static void daxpy(int n,
                         double da,
                         double[] dx,
                         int dxIdx,
                         int incx,
                         double[] dy,
                         int dyIdx,
                         int incy)

saxpy

public static void saxpy(int n,
                         float sa,
                         float[] sx,
                         int sxIdx,
                         int incx,
                         float[] sy,
                         int syIdx,
                         int incy)

zaxpy

public static void zaxpy(int n,
                         ComplexDouble za,
                         double[] zx,
                         int zxIdx,
                         int incx,
                         double[] zy,
                         int zyIdx,
                         int incy)

cscal

public static void cscal(int n,
                         ComplexFloat ca,
                         float[] cx,
                         int cxIdx,
                         int incx)

dscal

public static void dscal(int n,
                         double da,
                         double[] dx,
                         int dxIdx,
                         int incx)

sscal

public static void sscal(int n,
                         float sa,
                         float[] sx,
                         int sxIdx,
                         int incx)

zscal

public static void zscal(int n,
                         ComplexDouble za,
                         double[] zx,
                         int zxIdx,
                         int incx)

csscal

public static void csscal(int n,
                          float sa,
                          float[] cx,
                          int cxIdx,
                          int incx)

zdscal

public static void zdscal(int n,
                          double da,
                          double[] zx,
                          int zxIdx,
                          int incx)

cdotc

public static ComplexFloat cdotc(int n,
                                 float[] cx,
                                 int cxIdx,
                                 int incx,
                                 float[] cy,
                                 int cyIdx,
                                 int incy)

cdotu

public static ComplexFloat cdotu(int n,
                                 float[] cx,
                                 int cxIdx,
                                 int incx,
                                 float[] cy,
                                 int cyIdx,
                                 int incy)

ddot

public static double ddot(int n,
                          double[] dx,
                          int dxIdx,
                          int incx,
                          double[] dy,
                          int dyIdx,
                          int incy)

sdot

public static float sdot(int n,
                         float[] sx,
                         int sxIdx,
                         int incx,
                         float[] sy,
                         int syIdx,
                         int incy)

zdotc

public static ComplexDouble zdotc(int n,
                                  double[] zx,
                                  int zxIdx,
                                  int incx,
                                  double[] zy,
                                  int zyIdx,
                                  int incy)

zdotu

public static ComplexDouble zdotu(int n,
                                  double[] zx,
                                  int zxIdx,
                                  int incx,
                                  double[] zy,
                                  int zyIdx,
                                  int incy)

dnrm2

public static double dnrm2(int n,
                           double[] x,
                           int xIdx,
                           int incx)

dznrm2

public static double dznrm2(int n,
                            double[] x,
                            int xIdx,
                            int incx)

scnrm2

public static float scnrm2(int n,
                           float[] x,
                           int xIdx,
                           int incx)

snrm2

public static float snrm2(int n,
                          float[] x,
                          int xIdx,
                          int incx)

dasum

public static double dasum(int n,
                           double[] dx,
                           int dxIdx,
                           int incx)

dzasum

public static double dzasum(int n,
                            double[] zx,
                            int zxIdx,
                            int incx)

sasum

public static float sasum(int n,
                          float[] sx,
                          int sxIdx,
                          int incx)

scasum

public static float scasum(int n,
                           float[] cx,
                           int cxIdx,
                           int incx)

icamax

public static int icamax(int n,
                         float[] cx,
                         int cxIdx,
                         int incx)

idamax

public static int idamax(int n,
                         double[] dx,
                         int dxIdx,
                         int incx)

isamax

public static int isamax(int n,
                         float[] sx,
                         int sxIdx,
                         int incx)

izamax

public static int izamax(int n,
                         double[] zx,
                         int zxIdx,
                         int incx)

cgemv

public static void cgemv(char trans,
                         int m,
                         int n,
                         ComplexFloat alpha,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] x,
                         int xIdx,
                         int incx,
                         ComplexFloat beta,
                         float[] y,
                         int yIdx,
                         int incy)

dgemv

public static void dgemv(char trans,
                         int m,
                         int n,
                         double alpha,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] x,
                         int xIdx,
                         int incx,
                         double beta,
                         double[] y,
                         int yIdx,
                         int incy)

sgemv

public static void sgemv(char trans,
                         int m,
                         int n,
                         float alpha,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] x,
                         int xIdx,
                         int incx,
                         float beta,
                         float[] y,
                         int yIdx,
                         int incy)

zgemv

public static void zgemv(char trans,
                         int m,
                         int n,
                         ComplexDouble alpha,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] x,
                         int xIdx,
                         int incx,
                         ComplexDouble beta,
                         double[] y,
                         int yIdx,
                         int incy)

cgerc

public static void cgerc(int m,
                         int n,
                         ComplexFloat alpha,
                         float[] x,
                         int xIdx,
                         int incx,
                         float[] y,
                         int yIdx,
                         int incy,
                         float[] a,
                         int aIdx,
                         int lda)

cgeru

public static void cgeru(int m,
                         int n,
                         ComplexFloat alpha,
                         float[] x,
                         int xIdx,
                         int incx,
                         float[] y,
                         int yIdx,
                         int incy,
                         float[] a,
                         int aIdx,
                         int lda)

dger

public static void dger(int m,
                        int n,
                        double alpha,
                        double[] x,
                        int xIdx,
                        int incx,
                        double[] y,
                        int yIdx,
                        int incy,
                        double[] a,
                        int aIdx,
                        int lda)

sger

public static void sger(int m,
                        int n,
                        float alpha,
                        float[] x,
                        int xIdx,
                        int incx,
                        float[] y,
                        int yIdx,
                        int incy,
                        float[] a,
                        int aIdx,
                        int lda)

zgerc

public static void zgerc(int m,
                         int n,
                         ComplexDouble alpha,
                         double[] x,
                         int xIdx,
                         int incx,
                         double[] y,
                         int yIdx,
                         int incy,
                         double[] a,
                         int aIdx,
                         int lda)

zgeru

public static void zgeru(int m,
                         int n,
                         ComplexDouble alpha,
                         double[] x,
                         int xIdx,
                         int incx,
                         double[] y,
                         int yIdx,
                         int incy,
                         double[] a,
                         int aIdx,
                         int lda)

cgemm

public static void cgemm(char transa,
                         char transb,
                         int m,
                         int n,
                         int k,
                         ComplexFloat alpha,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] b,
                         int bIdx,
                         int ldb,
                         ComplexFloat beta,
                         float[] c,
                         int cIdx,
                         int ldc)

dgemm

public static void dgemm(char transa,
                         char transb,
                         int m,
                         int n,
                         int k,
                         double alpha,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] b,
                         int bIdx,
                         int ldb,
                         double beta,
                         double[] c,
                         int cIdx,
                         int ldc)

sgemm

public static void sgemm(char transa,
                         char transb,
                         int m,
                         int n,
                         int k,
                         float alpha,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] b,
                         int bIdx,
                         int ldb,
                         float beta,
                         float[] c,
                         int cIdx,
                         int ldc)

zgemm

public static void zgemm(char transa,
                         char transb,
                         int m,
                         int n,
                         int k,
                         ComplexDouble alpha,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] b,
                         int bIdx,
                         int ldb,
                         ComplexDouble beta,
                         double[] c,
                         int cIdx,
                         int ldc)

dgesv

public static int dgesv(int n,
                        int nrhs,
                        double[] a,
                        int aIdx,
                        int lda,
                        int[] ipiv,
                        int ipivIdx,
                        double[] b,
                        int bIdx,
                        int ldb)

sgesv

public static int sgesv(int n,
                        int nrhs,
                        float[] a,
                        int aIdx,
                        int lda,
                        int[] ipiv,
                        int ipivIdx,
                        float[] b,
                        int bIdx,
                        int ldb)

dsysv

public static int dsysv(char uplo,
                        int n,
                        int nrhs,
                        double[] a,
                        int aIdx,
                        int lda,
                        int[] ipiv,
                        int ipivIdx,
                        double[] b,
                        int bIdx,
                        int ldb,
                        double[] work,
                        int workIdx,
                        int lwork)

dsysv

public static int dsysv(char uplo,
                        int n,
                        int nrhs,
                        double[] a,
                        int aIdx,
                        int lda,
                        int[] ipiv,
                        int ipivIdx,
                        double[] b,
                        int bIdx,
                        int ldb)

ssysv

public static int ssysv(char uplo,
                        int n,
                        int nrhs,
                        float[] a,
                        int aIdx,
                        int lda,
                        int[] ipiv,
                        int ipivIdx,
                        float[] b,
                        int bIdx,
                        int ldb,
                        float[] work,
                        int workIdx,
                        int lwork)

ssysv

public static int ssysv(char uplo,
                        int n,
                        int nrhs,
                        float[] a,
                        int aIdx,
                        int lda,
                        int[] ipiv,
                        int ipivIdx,
                        float[] b,
                        int bIdx,
                        int ldb)

dsyev

public static int dsyev(char jobz,
                        char uplo,
                        int n,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] w,
                        int wIdx,
                        double[] work,
                        int workIdx,
                        int lwork)

dsyev

public static int dsyev(char jobz,
                        char uplo,
                        int n,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] w,
                        int wIdx)

ssyev

public static int ssyev(char jobz,
                        char uplo,
                        int n,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] w,
                        int wIdx,
                        float[] work,
                        int workIdx,
                        int lwork)

ssyev

public static int ssyev(char jobz,
                        char uplo,
                        int n,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] w,
                        int wIdx)

dsyevd

public static int dsyevd(char jobz,
                         char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] w,
                         int wIdx,
                         double[] work,
                         int workIdx,
                         int lwork,
                         int[] iwork,
                         int iworkIdx,
                         int liwork)

dsyevd

public static int dsyevd(char jobz,
                         char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] w,
                         int wIdx)

dsyevr

public static int dsyevr(char jobz,
                         char range,
                         char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double vl,
                         double vu,
                         int il,
                         int iu,
                         double abstol,
                         int[] m,
                         int mIdx,
                         double[] w,
                         int wIdx,
                         double[] z,
                         int zIdx,
                         int ldz,
                         int[] isuppz,
                         int isuppzIdx,
                         double[] work,
                         int workIdx,
                         int lwork,
                         int[] iwork,
                         int iworkIdx,
                         int liwork)

dsyevr

public static int dsyevr(char jobz,
                         char range,
                         char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double vl,
                         double vu,
                         int il,
                         int iu,
                         double abstol,
                         int[] m,
                         int mIdx,
                         double[] w,
                         int wIdx,
                         double[] z,
                         int zIdx,
                         int ldz,
                         int[] isuppz,
                         int isuppzIdx)

dsyevx

public static int dsyevx(char jobz,
                         char range,
                         char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double vl,
                         double vu,
                         int il,
                         int iu,
                         double abstol,
                         int[] m,
                         int mIdx,
                         double[] w,
                         int wIdx,
                         double[] z,
                         int zIdx,
                         int ldz,
                         double[] work,
                         int workIdx,
                         int lwork,
                         int[] iwork,
                         int iworkIdx,
                         int[] ifail,
                         int ifailIdx)

dsyevx

public static int dsyevx(char jobz,
                         char range,
                         char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double vl,
                         double vu,
                         int il,
                         int iu,
                         double abstol,
                         int[] m,
                         int mIdx,
                         double[] w,
                         int wIdx,
                         double[] z,
                         int zIdx,
                         int ldz,
                         int[] iwork,
                         int iworkIdx,
                         int[] ifail,
                         int ifailIdx)

ssyevd

public static int ssyevd(char jobz,
                         char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] w,
                         int wIdx,
                         float[] work,
                         int workIdx,
                         int lwork,
                         int[] iwork,
                         int iworkIdx,
                         int liwork)

ssyevd

public static int ssyevd(char jobz,
                         char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] w,
                         int wIdx)

ssyevr

public static int ssyevr(char jobz,
                         char range,
                         char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float vl,
                         float vu,
                         int il,
                         int iu,
                         float abstol,
                         int[] m,
                         int mIdx,
                         float[] w,
                         int wIdx,
                         float[] z,
                         int zIdx,
                         int ldz,
                         int[] isuppz,
                         int isuppzIdx,
                         float[] work,
                         int workIdx,
                         int lwork,
                         int[] iwork,
                         int iworkIdx,
                         int liwork)

ssyevr

public static int ssyevr(char jobz,
                         char range,
                         char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float vl,
                         float vu,
                         int il,
                         int iu,
                         float abstol,
                         int[] m,
                         int mIdx,
                         float[] w,
                         int wIdx,
                         float[] z,
                         int zIdx,
                         int ldz,
                         int[] isuppz,
                         int isuppzIdx)

ssyevx

public static int ssyevx(char jobz,
                         char range,
                         char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float vl,
                         float vu,
                         int il,
                         int iu,
                         float abstol,
                         int[] m,
                         int mIdx,
                         float[] w,
                         int wIdx,
                         float[] z,
                         int zIdx,
                         int ldz,
                         float[] work,
                         int workIdx,
                         int lwork,
                         int[] iwork,
                         int iworkIdx,
                         int[] ifail,
                         int ifailIdx)

ssyevx

public static int ssyevx(char jobz,
                         char range,
                         char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float vl,
                         float vu,
                         int il,
                         int iu,
                         float abstol,
                         int[] m,
                         int mIdx,
                         float[] w,
                         int wIdx,
                         float[] z,
                         int zIdx,
                         int ldz,
                         int[] iwork,
                         int iworkIdx,
                         int[] ifail,
                         int ifailIdx)

dposv

public static int dposv(char uplo,
                        int n,
                        int nrhs,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] b,
                        int bIdx,
                        int ldb)

sposv

public static int sposv(char uplo,
                        int n,
                        int nrhs,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] b,
                        int bIdx,
                        int ldb)

cgeev

public static int cgeev(char jobvl,
                        char jobvr,
                        int n,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] w,
                        int wIdx,
                        float[] vl,
                        int vlIdx,
                        int ldvl,
                        float[] vr,
                        int vrIdx,
                        int ldvr,
                        float[] work,
                        int workIdx,
                        int lwork,
                        float[] rwork,
                        int rworkIdx)

cgeev

public static int cgeev(char jobvl,
                        char jobvr,
                        int n,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] w,
                        int wIdx,
                        float[] vl,
                        int vlIdx,
                        int ldvl,
                        float[] vr,
                        int vrIdx,
                        int ldvr,
                        float[] rwork,
                        int rworkIdx)

dgeev

public static int dgeev(char jobvl,
                        char jobvr,
                        int n,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] wr,
                        int wrIdx,
                        double[] wi,
                        int wiIdx,
                        double[] vl,
                        int vlIdx,
                        int ldvl,
                        double[] vr,
                        int vrIdx,
                        int ldvr,
                        double[] work,
                        int workIdx,
                        int lwork)

dgeev

public static int dgeev(char jobvl,
                        char jobvr,
                        int n,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] wr,
                        int wrIdx,
                        double[] wi,
                        int wiIdx,
                        double[] vl,
                        int vlIdx,
                        int ldvl,
                        double[] vr,
                        int vrIdx,
                        int ldvr)

sgeev

public static int sgeev(char jobvl,
                        char jobvr,
                        int n,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] wr,
                        int wrIdx,
                        float[] wi,
                        int wiIdx,
                        float[] vl,
                        int vlIdx,
                        int ldvl,
                        float[] vr,
                        int vrIdx,
                        int ldvr,
                        float[] work,
                        int workIdx,
                        int lwork)

sgeev

public static int sgeev(char jobvl,
                        char jobvr,
                        int n,
                        float[] a,
                        int aIdx,
                        int lda,
                        float[] wr,
                        int wrIdx,
                        float[] wi,
                        int wiIdx,
                        float[] vl,
                        int vlIdx,
                        int ldvl,
                        float[] vr,
                        int vrIdx,
                        int ldvr)

zgeev

public static int zgeev(char jobvl,
                        char jobvr,
                        int n,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] w,
                        int wIdx,
                        double[] vl,
                        int vlIdx,
                        int ldvl,
                        double[] vr,
                        int vrIdx,
                        int ldvr,
                        double[] work,
                        int workIdx,
                        int lwork,
                        double[] rwork,
                        int rworkIdx)

zgeev

public static int zgeev(char jobvl,
                        char jobvr,
                        int n,
                        double[] a,
                        int aIdx,
                        int lda,
                        double[] w,
                        int wIdx,
                        double[] vl,
                        int vlIdx,
                        int ldvl,
                        double[] vr,
                        int vrIdx,
                        int ldvr,
                        double[] rwork,
                        int rworkIdx)

dgetrf

public static int dgetrf(int m,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         int[] ipiv,
                         int ipivIdx)

sgetrf

public static int sgetrf(int m,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         int[] ipiv,
                         int ipivIdx)

dpotrf

public static int dpotrf(char uplo,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda)

spotrf

public static int spotrf(char uplo,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda)

cgesvd

public static int cgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] s,
                         int sIdx,
                         float[] u,
                         int uIdx,
                         int ldu,
                         float[] vt,
                         int vtIdx,
                         int ldvt,
                         float[] work,
                         int workIdx,
                         int lwork,
                         float[] rwork,
                         int rworkIdx)

cgesvd

public static int cgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] s,
                         int sIdx,
                         float[] u,
                         int uIdx,
                         int ldu,
                         float[] vt,
                         int vtIdx,
                         int ldvt,
                         float[] rwork,
                         int rworkIdx)

dgesvd

public static int dgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] s,
                         int sIdx,
                         double[] u,
                         int uIdx,
                         int ldu,
                         double[] vt,
                         int vtIdx,
                         int ldvt,
                         double[] work,
                         int workIdx,
                         int lwork)

dgesvd

public static int dgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] s,
                         int sIdx,
                         double[] u,
                         int uIdx,
                         int ldu,
                         double[] vt,
                         int vtIdx,
                         int ldvt)

sgesvd

public static int sgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] s,
                         int sIdx,
                         float[] u,
                         int uIdx,
                         int ldu,
                         float[] vt,
                         int vtIdx,
                         int ldvt,
                         float[] work,
                         int workIdx,
                         int lwork)

sgesvd

public static int sgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         float[] a,
                         int aIdx,
                         int lda,
                         float[] s,
                         int sIdx,
                         float[] u,
                         int uIdx,
                         int ldu,
                         float[] vt,
                         int vtIdx,
                         int ldvt)

zgesvd

public static int zgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] s,
                         int sIdx,
                         double[] u,
                         int uIdx,
                         int ldu,
                         double[] vt,
                         int vtIdx,
                         int ldvt,
                         double[] work,
                         int workIdx,
                         int lwork,
                         double[] rwork,
                         int rworkIdx)

zgesvd

public static int zgesvd(char jobu,
                         char jobvt,
                         int m,
                         int n,
                         double[] a,
                         int aIdx,
                         int lda,
                         double[] s,
                         int sIdx,
                         double[] u,
                         int uIdx,
                         int ldu,
                         double[] vt,
                         int vtIdx,
                         int ldvt,
                         double[] rwork,
                         int rworkIdx)


© 2008-2010 by Mikio L. Braun and contributors