org.jblas
Class NativeBlas
java.lang.Object
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);
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 |
dsygvd(int itype,
char jobz,
char uplo,
int n,
double[] a,
int aIdx,
int lda,
double[] b,
int bIdx,
int ldb,
double[] w,
int wIdx)
|
static int |
dsygvd(int itype,
char jobz,
char uplo,
int n,
double[] a,
int aIdx,
int lda,
double[] b,
int bIdx,
int ldb,
double[] w,
int wIdx,
double[] work,
int workIdx,
int lwork,
int[] iwork,
int iworkIdx,
int liwork)
|
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 |
ssygvd(int itype,
char jobz,
char uplo,
int n,
float[] a,
int aIdx,
int lda,
float[] b,
int bIdx,
int ldb,
float[] w,
int wIdx)
|
static int |
ssygvd(int itype,
char jobz,
char uplo,
int n,
float[] a,
int aIdx,
int lda,
float[] b,
int bIdx,
int ldb,
float[] w,
int wIdx,
float[] work,
int workIdx,
int lwork,
int[] iwork,
int iworkIdx,
int liwork)
|
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 |
NativeBlas
public NativeBlas()
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)
dsygvd
public static int dsygvd(int itype,
char jobz,
char uplo,
int n,
double[] a,
int aIdx,
int lda,
double[] b,
int bIdx,
int ldb,
double[] w,
int wIdx,
double[] work,
int workIdx,
int lwork,
int[] iwork,
int iworkIdx,
int liwork)
dsygvd
public static int dsygvd(int itype,
char jobz,
char uplo,
int n,
double[] a,
int aIdx,
int lda,
double[] b,
int bIdx,
int ldb,
double[] w,
int wIdx)
ssygvd
public static int ssygvd(int itype,
char jobz,
char uplo,
int n,
float[] a,
int aIdx,
int lda,
float[] b,
int bIdx,
int ldb,
float[] w,
int wIdx,
float[] work,
int workIdx,
int lwork,
int[] iwork,
int iworkIdx,
int liwork)
ssygvd
public static int ssygvd(int itype,
char jobz,
char uplo,
int n,
float[] a,
int aIdx,
int lda,
float[] b,
int bIdx,
int ldb,
float[] w,
int wIdx)
© 2008-2010 by Mikio L. Braun and contributors