MAGMA  2.0.0
Matrix Algebra for GPU and Multicore Architectures
double-complex precision

Functions

magma_int_t magma_zjacobisetup_matrix (magma_z_matrix A, magma_z_matrix *M, magma_z_matrix *d, magma_queue_t queue)
 Prepares the Matrix M for the Jacobi Iteration according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k. More...
 
magma_int_t magma_zjacobisetup_diagscal (magma_z_matrix A, magma_z_matrix *d, magma_queue_t queue)
 It returns a vector d containing the inverse diagonal elements. More...
 
magma_int_t magma_zjacobisetup_vector (magma_z_matrix b, magma_z_matrix d, magma_z_matrix *c, magma_queue_t queue)
 Prepares the Jacobi Iteration according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k. More...
 
magma_int_t magma_zjacobisetup (magma_z_matrix A, magma_z_matrix b, magma_z_matrix *M, magma_z_matrix *c, magma_queue_t queue)
 Prepares the Jacobi Iteration according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k. More...
 
magma_int_t magma_zjacobiiter (magma_z_matrix M, magma_z_matrix c, magma_z_matrix *x, magma_z_solver_par *solver_par, magma_queue_t queue)
 Iterates the solution approximation according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k. More...
 
magma_int_t magma_zjacobiiter_precond (magma_z_matrix M, magma_z_matrix *x, magma_z_solver_par *solver_par, magma_z_preconditioner *precond, magma_queue_t queue)
 Iterates the solution approximation according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k. More...
 
magma_int_t magma_zjacobiiter_sys (magma_z_matrix A, magma_z_matrix b, magma_z_matrix d, magma_z_matrix t, magma_z_matrix *x, magma_z_solver_par *solver_par, magma_queue_t queue)
 Iterates the solution approximation according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k. More...
 
magma_int_t magma_sparse_matrix_zlag2c (magma_z_matrix A, magma_c_sparse_matrix *B, magma_queue_t queue)
 convertes magma_z_matrix from Z to C More...
 

Detailed Description

Function Documentation

magma_int_t magma_sparse_matrix_zlag2c ( magma_z_matrix  A,
magma_c_sparse_matrix *  B,
magma_queue_t  queue 
)

convertes magma_z_matrix from Z to C

Parameters
Amagma_z_matrix input matrix descriptor
Bmagma_c_sparse_matrix* output matrix descriptor
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobiiter ( magma_z_matrix  M,
magma_z_matrix  c,
magma_z_matrix *  x,
magma_z_solver_par *  solver_par,
magma_queue_t  queue 
)

Iterates the solution approximation according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k.

This routine takes the iteration matrix M as input.

Parameters
[in]Mmagma_z_matrix input matrix M = D^(-1) * (L+U)
[in]cmagma_z_matrix c = D^(-1) * b
[in,out]xmagma_z_matrix* iteration vector x
[in,out]solver_parmagma_z_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobiiter_precond ( magma_z_matrix  M,
magma_z_matrix *  x,
magma_z_solver_par *  solver_par,
magma_z_preconditioner *  precond,
magma_queue_t  queue 
)

Iterates the solution approximation according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k.

Parameters
[in]Mmagma_z_matrix input matrix M = D^(-1) * (L+U)
[in,out]xmagma_z_matrix* iteration vector x
[in,out]solver_parmagma_z_solver_par* solver parameters
[in]precondmagma_z_precond_par* precond parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobiiter_sys ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_matrix  d,
magma_z_matrix  t,
magma_z_matrix *  x,
magma_z_solver_par *  solver_par,
magma_queue_t  queue 
)

Iterates the solution approximation according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k.

This routine takes the system matrix A and the RHS b as input.

Parameters
[in]Amagma_z_matrix input matrix M = D^(-1) * (L+U)
[in]bmagma_z_matrix input RHS b
[in]dmagma_z_matrix input matrix diagonal elements diag(A)
[in]tmagma_z_matrix temporary vector
[in,out]xmagma_z_matrix* iteration vector x
[in,out]solver_parmagma_z_solver_par* solver parameters
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobisetup ( magma_z_matrix  A,
magma_z_matrix  b,
magma_z_matrix *  M,
magma_z_matrix *  c,
magma_queue_t  queue 
)

Prepares the Jacobi Iteration according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k.

Parameters
[in]Amagma_z_matrix input matrix A
[in]bmagma_z_matrix RHS b
[in]Mmagma_z_matrix* M = D^(-1) * (L+U)
[in]cmagma_z_matrix* c = D^(-1) * b
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobisetup_diagscal ( magma_z_matrix  A,
magma_z_matrix *  d,
magma_queue_t  queue 
)

It returns a vector d containing the inverse diagonal elements.

Parameters
[in]Amagma_z_matrix input matrix A
[in,out]dmagma_z_matrix* vector with diagonal elements
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobisetup_matrix ( magma_z_matrix  A,
magma_z_matrix *  M,
magma_z_matrix *  d,
magma_queue_t  queue 
)

Prepares the Matrix M for the Jacobi Iteration according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k.

It returns the preconditioner Matrix M and a vector d containing the diagonal elements.

Parameters
[in]Amagma_z_matrix input matrix A
[in]Mmagma_z_matrix* M = D^(-1) * (L+U)
[in,out]dmagma_z_matrix* vector with diagonal elements of A
[in]queuemagma_queue_t Queue to execute in.
magma_int_t magma_zjacobisetup_vector ( magma_z_matrix  b,
magma_z_matrix  d,
magma_z_matrix *  c,
magma_queue_t  queue 
)

Prepares the Jacobi Iteration according to x^(k+1) = D^(-1) * b - D^(-1) * (L+U) * x^k x^(k+1) = c - M * x^k.

Returns the vector c

Parameters
[in]bmagma_z_matrix RHS b
[in]dmagma_z_matrix vector with diagonal entries
[in]cmagma_z_matrix* c = D^(-1) * b
[in]queuemagma_queue_t Queue to execute in.