gsvj1#
Functions
-
void sgsvj1(const char *jobv, const INT m, const INT n, const INT n1, 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)#
SGSVJ1 is called from SGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as SGESVJ does, but it targets only particular pivots and it does not check convergence (stopping criterion).
SGSVJ1 applies few sweeps of Jacobi rotations in the column space of the input M-by-N matrix A. The pivot pairs are taken from the (1,2) off-diagonal block in the corresponding N-by-N Gram matrix A^T * A.
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.
inn1First n1 columns are rotated against remaining n-n1.
inoutAArray (lda, n). On entry, M-by-N matrix. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDArray (n). Scaling factors.
inoutSVAArray (n). Euclidean norms of columns.
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVArray (ldv, n). Accumulates rotations if requested.
inldvLeading dimension of V.
inepsMachine epsilon.
insfminSafe minimum.
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps.
outworkWorkspace of dimension lwork.
inlworklwork >= m.
outinfo= 0: success. < 0: illegal argument.
void sgsvj1(
const char* jobv,
const INT m,
const INT n,
const INT n1,
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 dgsvj1(const char *jobv, const INT m, const INT n, const INT n1, 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)#
DGSVJ1 is called from DGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as DGESVJ does, but it targets only particular pivots and it does not check convergence (stopping criterion).
DGSVJ1 applies few sweeps of Jacobi rotations in the column space of the input M-by-N matrix A. The pivot pairs are taken from the (1,2) off-diagonal block in the corresponding N-by-N Gram matrix A^T * A.
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.
inn1First n1 columns are rotated against remaining n-n1.
inoutAArray (lda, n). On entry, M-by-N matrix. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDArray (n). Scaling factors.
inoutSVAArray (n). Euclidean norms of columns.
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVArray (ldv, n). Accumulates rotations if requested.
inldvLeading dimension of V.
inepsMachine epsilon.
insfminSafe minimum.
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps.
outworkWorkspace of dimension lwork.
inlworklwork >= m.
outinfo= 0: success. < 0: illegal argument.
void dgsvj1(
const char* jobv,
const INT m,
const INT n,
const INT n1,
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 cgsvj1(const char *jobv, const INT m, const INT n, const INT n1, 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)#
CGSVJ1 is called from CGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as CGESVJ does, but it targets only particular pivots and it does not check convergence (stopping criterion).
CGSVJ1 applies few sweeps of Jacobi rotations in the column space of the input M-by-N matrix A. The pivot pairs are taken from the (1,2) off-diagonal block in the corresponding N-by-N Gram matrix A^H * A.
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.
inn1First n1 columns are rotated against remaining n-n1.
inoutAComplex*16 array (lda, n). On entry, M-by-N matrix. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDComplex*16 array (n). Scaling factors.
inoutSVASingle precision array (n). Euclidean norms of columns.
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVComplex*16 array (ldv, n). Accumulates rotations if requested.
inldvLeading dimension of V.
inepsMachine epsilon.
insfminSafe minimum.
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps.
outworkComplex*16 workspace of dimension lwork.
inlworklwork >= m.
outinfo= 0: success. < 0: illegal argument.
void cgsvj1(
const char* jobv,
const INT m,
const INT n,
const INT n1,
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 zgsvj1(const char *jobv, const INT m, const INT n, const INT n1, 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)#
ZGSVJ1 is called from ZGESVJ as a pre-processor.
It applies Jacobi rotations in the same way as ZGESVJ does, but it targets only particular pivots and it does not check convergence (stopping criterion).
ZGSVJ1 applies few sweeps of Jacobi rotations in the column space of the input M-by-N matrix A. The pivot pairs are taken from the (1,2) off-diagonal block in the corresponding N-by-N Gram matrix A^H * A.
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.
inn1First n1 columns are rotated against remaining n-n1.
inoutAComplex*16 array (lda, n). On entry, M-by-N matrix. On exit, post-multiplied by rotations.
inldaLeading dimension of A. lda >= max(1,m).
inoutDComplex*16 array (n). Scaling factors.
inoutSVADouble precision array (n). Euclidean norms of columns.
inmvIf jobv=’A’, number of rows of V to post-multiply.
inoutVComplex*16 array (ldv, n). Accumulates rotations if requested.
inldvLeading dimension of V.
inepsMachine epsilon.
insfminSafe minimum.
intolThreshold for Jacobi rotations.
innsweepNumber of sweeps.
outworkComplex*16 workspace of dimension lwork.
inlworklwork >= m.
outinfo= 0: success. < 0: illegal argument.
void zgsvj1(
const char* jobv,
const INT m,
const INT n,
const INT n1,
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
);