Type for Chebyshev iteration using TreeAMG matvec.
More...
|
| procedure, pass(this) | init (this, n, lvl, max_iter) |
| | Initialization of chebyshev.
|
| |
| procedure, pass(this) | solve (this, x, f, n, amg, zero_init) |
| | Chebyshev smoother From Saad's iterative methods textbook.
|
| |
| procedure, pass(this) | comp_eig (this, amg, n) |
| | Power method to approximate largest eigenvalue.
|
| |
| procedure, pass(this) | device_solve (this, x, f, x_d, f_d, n, amg, zero_init) |
| | Chebyshev smoother From Saad's iterative methods textbook.
|
| |
| procedure, pass(this) | device_comp_eig (this, amg, n) |
| | Power method to approximate largest eigenvalue.
|
| |
Definition at line 72 of file tree_amg_smoother.f90.
◆ comp_eig()
◆ device_comp_eig()
◆ device_solve()
| procedure, pass(this) tree_amg_smoother::amg_cheby_t::device_solve |
( |
class(amg_cheby_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
x, |
|
|
real(kind=rp), dimension(n), intent(inout) |
f, |
|
|
type(c_ptr) |
x_d, |
|
|
type(c_ptr) |
f_d, |
|
|
integer, intent(in) |
n, |
|
|
class(tamg_hierarchy_t), intent(inout) |
amg, |
|
|
logical, intent(in), optional |
zero_init |
|
) |
| |
- Parameters
-
| x | The solution to be returned |
| f | The right-hand side |
| n | Number of dofs |
| amg | The TreeAMG object |
Definition at line 89 of file tree_amg_smoother.f90.
◆ init()
- Parameters
-
| n | Number of dofs |
| lvl | The tamg hierarchy level on which the iterations are to be applied |
| max_iter | The number of iterations (chebyshev degree) |
Definition at line 86 of file tree_amg_smoother.f90.
◆ solve()
| procedure, pass(this) tree_amg_smoother::amg_cheby_t::solve |
( |
class(amg_cheby_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
x, |
|
|
real(kind=rp), dimension(n), intent(inout) |
f, |
|
|
integer, intent(in) |
n, |
|
|
class(tamg_hierarchy_t), intent(inout) |
amg, |
|
|
logical, intent(in), optional |
zero_init |
|
) |
| |
- Parameters
-
| x | The solution to be returned |
| f | The right-hand side |
| n | Number of dofs |
| amg | The TreeAMG object |
Definition at line 87 of file tree_amg_smoother.f90.
◆ d_d
| type(c_ptr) tree_amg_smoother::amg_cheby_t::d_d = C_NULL_PTR |
◆ dlt
| real(kind=rp) tree_amg_smoother::amg_cheby_t::dlt |
◆ lvl
| integer tree_amg_smoother::amg_cheby_t::lvl |
◆ max_iter
| integer tree_amg_smoother::amg_cheby_t::max_iter = 10 |
| integer tree_amg_smoother::amg_cheby_t::n |
◆ power_its
| integer tree_amg_smoother::amg_cheby_t::power_its = 250 |
◆ r_d
| type(c_ptr) tree_amg_smoother::amg_cheby_t::r_d = C_NULL_PTR |
◆ recompute_eigs
| logical tree_amg_smoother::amg_cheby_t::recompute_eigs = .true. |
◆ tha
| real(kind=rp) tree_amg_smoother::amg_cheby_t::tha |
◆ w_d
| type(c_ptr) tree_amg_smoother::amg_cheby_t::w_d = C_NULL_PTR |
The documentation for this type was generated from the following file: