MAGMA  2.3.0
Matrix Algebra for GPU and Multicore Architectures
 All Classes Files Functions Friends Groups Pages
single-complex precision

Functions

magma_int_t magma_cbaiter (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU. More...
 
magma_int_t magma_cbaiter_overlap (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU. More...
 
magma_int_t magma_cbicg (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cbicgstab (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cbicgstab_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cbicgstab_merge2 (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cbicgstab_merge3 (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cbombard (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex general matrix A. More...
 
magma_int_t magma_cbombard_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex general matrix A. More...
 
magma_int_t magma_ccgs (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 
magma_int_t magma_cfgmres (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory. More...
 
magma_int_t magma_citerref (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More...
 
magma_int_t magma_cjacobi (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More...
 
magma_int_t magma_cjacobidomainoverlap (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A. More...
 
magma_int_t magma_clsqr (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A*X=B for X if A is consistent, otherwise it attempts to solve the least squares solution X that minimizes norm(B-A*X). More...
 
magma_int_t magma_cpbicg (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cpbicgstab (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex N-by-N general matrix. More...
 
magma_int_t magma_cpbicgstab_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general matrix. More...
 
magma_int_t magma_cpcgs (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 
magma_int_t magma_cpcgs_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 
magma_int_t magma_cpqmr (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general complex matrix A. More...
 
magma_int_t magma_cpqmr_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general complex matrix A. More...
 
magma_int_t magma_cptfqmr_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_c_preconditioner *precond_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 
magma_int_t magma_cqmr (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a general complex matrix A. More...
 
magma_int_t magma_cqmr_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex general matrix A. More...
 
magma_int_t magma_ctfqmr (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 
magma_int_t magma_ctfqmr_merge (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 
magma_int_t magma_ctfqmr_unrolled (magma_c_matrix A, magma_c_matrix b, magma_c_matrix *x, magma_c_solver_par *solver_par, magma_queue_t queue)
 Solves a system of linear equations A * X = B where A is a complex matrix A. More...
 

Detailed Description

Function Documentation

magma_int_t magma_cbaiter ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbaiter_overlap ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * x = b via the block asynchronous iteration method on GPU.

It used restricted additive Schwarz overlap in top-down direction.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbicg ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the Biconjugate Gradient method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbicgstab ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the Biconjugate Gradient Stabilized method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbicgstab_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the Biconjugate Gradient Stabilized method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbicgstab_merge2 ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the Biconjugate Gradient Stabilized method. The difference to magma_cbicgstab is that we use specifically designed kernels merging multiple operations into one kernel.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbicgstab_merge3 ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the Biconjugate Gradient Stabilized method. The difference to magma_cbicgstab is that we use specifically designed kernels merging multiple operations into one kernel.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbombard ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex general matrix A.

This is a GPU implementation of the iterative bombardment suggested in Barrett et al. ''Algorithmic bombardment for the iterative solution of linear systems: A poly-iterative approach'' using BiCGSTAB, CGS and MQR. At this point, it only works for symmetric A.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cbombard_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex general matrix A.

This is a GPU implementation of the iterative bombardment suggested in Barrett et al. ''Algorithmic bombardment for the iterative solution of linear systems: A poly-iterative approach'' using BiCGSTAB, CGS and MQR. At this point, it only works for symmetric A.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ccgs ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the Conjugate Gradient Squared (CGS) method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cfgmres ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex sparse matrix stored in the GPU memory.

X and B are complex vectors stored on the GPU memory. This is a GPU implementation of the right-preconditioned flexible GMRES.

Parameters
[in]Amagma_c_matrix descriptor for matrix A
[in]bmagma_c_matrix RHS b vector
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_citerref ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.

This is a GPU implementation of the Iterative Refinement method. The inner solver is passed via the preconditioner argument.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in,out]precond_parmagma_c_preconditioner* inner solver
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cjacobi ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.

This is a GPU implementation of the Jacobi method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cjacobidomainoverlap ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex Hermitian N-by-N positive definite matrix A.

This is a GPU implementation of the Jacobi method allowing for domain overlap.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_clsqr ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A*X=B for X if A is consistent, otherwise it attempts to solve the least squares solution X that minimizes norm(B-A*X).

The N-by-P coefficient matrix A need not be square but the right hand side column vector B must have length N.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in,out]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpbicg ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the preconditioned Biconjugate Gradient method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in,out]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpbicgstab ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex N-by-N general matrix.

This is a GPU implementation of the preconditioned Biconjugate Gradient Stabelized method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpbicgstab_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general matrix.

This is a GPU implementation of the preconditioned Biconjugate Gradient Stabelized method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpcgs ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the preconditioned Conjugate Gradient Squared (CGS) method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpcgs_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the preconditioned Conjugate Gradient Squared (CGS) method.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpqmr ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general complex matrix A.

This is a GPU implementation of the preconditioned Quasi-Minimal Residual method (QMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cpqmr_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general complex matrix A.

This is a GPU implementation of the preconditioned Quasi-Minimal Residual method (QMR) using custom-designed kernels.

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cptfqmr_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_c_preconditioner *  precond_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the preconditioned transpose-free Quasi-Minimal Residual method (TFQMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in,out]precond_parmagma_c_preconditioner* preconditioner
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cqmr ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a general complex matrix A.

This is a GPU implementation of the Quasi-Minimal Residual method (QMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_cqmr_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex general matrix A.

This is a GPU implementation of the Quasi-Minimal Residual method (QMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ctfqmr ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the transpose-free Quasi-Minimal Residual method (TFQMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ctfqmr_merge ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the transpose-free Quasi-Minimal Residual method (TFQMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_ctfqmr_unrolled ( magma_c_matrix  A,
magma_c_matrix  b,
magma_c_matrix *  x,
magma_c_solver_par *  solver_par,
magma_queue_t  queue 
)

Solves a system of linear equations A * X = B where A is a complex matrix A.

This is a GPU implementation of the transpose-free Quasi-Minimal Residual method (TFQMR).

Parameters
[in]Amagma_c_matrix input matrix A
[in]bmagma_c_matrix RHS b
[in,out]xmagma_c_matrix* solution approximation
[in,out]solver_parmagma_c_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.