gsvj0#
Functions
-
void sgsvj0(const char *jobv, const INT m, const INT n, f32 *restrict A, const INT lda, f32 *restrict D, f32 *restrict SVA, const INT mv, f32 *restrict V, const INT ldv, const f32 eps, const f32 sfmin, const f32 tol, const INT nsweep, f32 *restrict work, const INT lwork, INT *info)#
SGSVJ0 is called from SGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as SGESVJ does, but it does not check convergence (stopping criterion). Few tuning parameters are available for the implementer.
Parameters
injobv= ‘V’: accumulate rotations by postmultiplying N-by-N V. = ‘A’: accumulate rotations by postmultiplying MV-by-N V. = ‘N’: do not accumulate rotations.
inmNumber of rows of A. m >= 0.
innNumber of columns of A. m >= n >= 0.
inoutAArray (lda, n). On entry, M-by-N matrix such that A*diag(D) represents the input. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDArray (n). Scaling factors from fast scaled Jacobi rotations.
inoutSVAArray (n). Euclidean norms of columns of A*diag(D).
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVArray (ldv, n). Accumulates rotations if jobv=’V’ or ‘A’.
inldvLeading dimension of V.
inepsMachine epsilon (slamch(‘E’)).
insfminSafe minimum (slamch(‘S’)).
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps of Jacobi rotations.
outworkWorkspace array of dimension lwork.
inlworkDimension of work. lwork >= m.
outinfo= 0: success. < 0: illegal argument.
void sgsvj0(
const char* jobv,
const INT m,
const INT n,
f32* restrict A,
const INT lda,
f32* restrict D,
f32* restrict SVA,
const INT mv,
f32* restrict V,
const INT ldv,
const f32 eps,
const f32 sfmin,
const f32 tol,
const INT nsweep,
f32* restrict work,
const INT lwork,
INT* info
);
Functions
-
void dgsvj0(const char *jobv, const INT m, const INT n, f64 *restrict A, const INT lda, f64 *restrict D, f64 *restrict SVA, const INT mv, f64 *restrict V, const INT ldv, const f64 eps, const f64 sfmin, const f64 tol, const INT nsweep, f64 *restrict work, const INT lwork, INT *info)#
DGSVJ0 is called from DGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as DGESVJ does, but it does not check convergence (stopping criterion). Few tuning parameters are available for the implementer.
Parameters
injobv= ‘V’: accumulate rotations by postmultiplying N-by-N V. = ‘A’: accumulate rotations by postmultiplying MV-by-N V. = ‘N’: do not accumulate rotations.
inmNumber of rows of A. m >= 0.
innNumber of columns of A. m >= n >= 0.
inoutAArray (lda, n). On entry, M-by-N matrix such that A*diag(D) represents the input. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDArray (n). Scaling factors from fast scaled Jacobi rotations.
inoutSVAArray (n). Euclidean norms of columns of A*diag(D).
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVArray (ldv, n). Accumulates rotations if jobv=’V’ or ‘A’.
inldvLeading dimension of V.
inepsMachine epsilon (dlamch(‘E’)).
insfminSafe minimum (dlamch(‘S’)).
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps of Jacobi rotations.
outworkWorkspace array of dimension lwork.
inlworkDimension of work. lwork >= m.
outinfo= 0: success. < 0: illegal argument.
void dgsvj0(
const char* jobv,
const INT m,
const INT n,
f64* restrict A,
const INT lda,
f64* restrict D,
f64* restrict SVA,
const INT mv,
f64* restrict V,
const INT ldv,
const f64 eps,
const f64 sfmin,
const f64 tol,
const INT nsweep,
f64* restrict work,
const INT lwork,
INT* info
);
Functions
-
void cgsvj0(const char *jobv, const INT m, const INT n, c64 *restrict A, const INT lda, c64 *restrict D, f32 *restrict SVA, const INT mv, c64 *restrict V, const INT ldv, const f32 eps, const f32 sfmin, const f32 tol, const INT nsweep, c64 *restrict work, const INT lwork, INT *info)#
CGSVJ0 is called from CGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as CGESVJ does, but it does not check convergence (stopping criterion). Few tuning parameters are available for the implementer.
Parameters
injobv= ‘V’: accumulate rotations by postmultiplying N-by-N V. = ‘A’: accumulate rotations by postmultiplying MV-by-N V. = ‘N’: do not accumulate rotations.
inmNumber of rows of A. m >= 0.
innNumber of columns of A. m >= n >= 0.
inoutAComplex*16 array (lda, n). On entry, M-by-N matrix such that A*diag(D) represents the input. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDComplex*16 array (n). Scaling factors from complex scaled Jacobi rotations.
inoutSVASingle precision array (n). Euclidean norms of columns of A*diag(D).
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVComplex*16 array (ldv, n). Accumulates rotations if jobv=’V’ or ‘A’.
inldvLeading dimension of V.
inepsMachine epsilon (slamch(‘E’)).
insfminSafe minimum (slamch(‘S’)).
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps of Jacobi rotations.
outworkComplex*16 workspace array of dimension lwork.
inlworkDimension of work. lwork >= m.
outinfo= 0: success. < 0: illegal argument.
void cgsvj0(
const char* jobv,
const INT m,
const INT n,
c64* restrict A,
const INT lda,
c64* restrict D,
f32* restrict SVA,
const INT mv,
c64* restrict V,
const INT ldv,
const f32 eps,
const f32 sfmin,
const f32 tol,
const INT nsweep,
c64* restrict work,
const INT lwork,
INT* info
);
Functions
-
void zgsvj0(const char *jobv, const INT m, const INT n, c128 *restrict A, const INT lda, c128 *restrict D, f64 *restrict SVA, const INT mv, c128 *restrict V, const INT ldv, const f64 eps, const f64 sfmin, const f64 tol, const INT nsweep, c128 *restrict work, const INT lwork, INT *info)#
ZGSVJ0 is called from ZGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as ZGESVJ does, but it does not check convergence (stopping criterion). Few tuning parameters are available for the implementer.
Parameters
injobv= ‘V’: accumulate rotations by postmultiplying N-by-N V. = ‘A’: accumulate rotations by postmultiplying MV-by-N V. = ‘N’: do not accumulate rotations.
inmNumber of rows of A. m >= 0.
innNumber of columns of A. m >= n >= 0.
inoutAComplex*16 array (lda, n). On entry, M-by-N matrix such that A*diag(D) represents the input. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDComplex*16 array (n). Scaling factors from complex scaled Jacobi rotations.
inoutSVADouble precision array (n). Euclidean norms of columns of A*diag(D).
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVComplex*16 array (ldv, n). Accumulates rotations if jobv=’V’ or ‘A’.
inldvLeading dimension of V.
inepsMachine epsilon (dlamch(‘E’)).
insfminSafe minimum (dlamch(‘S’)).
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps of Jacobi rotations.
outworkComplex*16 workspace array of dimension lwork.
inlworkDimension of work. lwork >= m.
outinfo= 0: success. < 0: illegal argument.
void zgsvj0(
const char* jobv,
const INT m,
const INT n,
c128* restrict A,
const INT lda,
c128* restrict D,
f64* restrict SVA,
const INT mv,
c128* restrict V,
const INT ldv,
const f64 eps,
const f64 sfmin,
const f64 tol,
const INT nsweep,
c128* restrict work,
const INT lwork,
INT* info
);