![]() |
Hex
2.2
Hydrogen-electron collision solver
|
#include <GMGPreconditioner.h>


Public Member Functions | |
| preconditionerRunTimeSelectionDefinitions (GMGPreconditioner, "GMG") GMGPreconditioner(CommandLine const &cmd | |
| GMGPreconditioner (CommandLine const &cmd, InputFile const &inp, Parallel const &par, AngularBasis const &ang, Bspline const &bspline_x_inner, Bspline const &bspline_x_full, Bspline const &bspline_y_inner, Bspline const &bspline_y_full, int level) | |
| virtual | ~GMGPreconditioner () |
| virtual std::string | description () const |
| Description of the preconditioner. More... | |
| virtual void | setup () |
| Initialize the preconditioner. More... | |
| virtual void | update (Real E) |
| Update the preconditioner for the next energy. More... | |
| virtual void | precondition (BlockArray< Complex > const &r, BlockArray< Complex > &z) const |
| Precondition the equation. More... | |
Public Member Functions inherited from NoPreconditioner | |
| preconditionerRunTimeSelectionDefinitions (NoPreconditioner, "none") NoPreconditioner() | |
| NoPreconditioner (CommandLine const &cmd, InputFile const &inp, Parallel const &par, AngularBasis const &ang, Bspline const &bspline_inner, Bspline const &bspline_full, Bspline const &bspline_panel_x, Bspline const &bspline_panel_y) | |
| ~NoPreconditioner () | |
| virtual std::pair< int, int > | bstates (Real E, int l1, int l2) const |
| Get the number of allowed bound states. More... | |
| virtual void | finish () |
| Clean up memory etc. More... | |
| virtual void | rhs (BlockArray< Complex > &chi, int ienergy, int instate) const |
| Calculate the right-hand side. More... | |
| virtual void | multiply (BlockArray< Complex > const &p, BlockArray< Complex > &q, MatrixSelection::Selection tri=MatrixSelection::Both) const |
| Multiply by the matrix equation. More... | |
| BlockSymBandMatrix< Complex > | calc_A_block (int ill, int illp, bool twoel=true) const |
| RadialIntegrals const & | rad_inner () const |
| RadialIntegrals const & | rad_full () const |
| RadialIntegrals const & | rad_panel () const |
Public Member Functions inherited from PreconditionerBase | |
| baseClassRunTimeSelectionDefinitions (PreconditionerBase,(CommandLine const &cmd, InputFile const &inp, Parallel const &par, AngularBasis const &ang, Bspline const &bspline_inner, Bspline const &bspline_full, Bspline const &bspline_panel_x, Bspline const &bspline_panel_y)) PreconditionerBase() | |
| Dummy default constructor needed by the run-time selection. More... | |
| virtual | ~PreconditionerBase () |
| Virtual destructor. More... | |
| virtual void | verbose (bool b) |
| Set verbosity level. More... | |
Data Fields | |
| InputFile const & | inp |
| InputFile const Parallel const & | par |
| InputFile const Parallel const AngularBasis const & | ang |
| InputFile const Parallel const AngularBasis const Bspline const & | bspline_x_inner |
| InputFile const Parallel const AngularBasis const Bspline const Bspline const & | bspline_x_full |
| InputFile const Parallel const AngularBasis const Bspline const Bspline const Bspline const & | bspline_y_inner |
| InputFile const Parallel const AngularBasis const Bspline const Bspline const Bspline const Bspline const & | bspline_y_full |
Additional Inherited Members | |
Protected Attributes inherited from NoPreconditioner | |
| Real | E_ |
| CommandLine const * | cmd_ |
| Parallel const * | par_ |
| InputFile const * | inp_ |
| AngularBasis const * | ang_ |
| std::vector< BlockSymBandMatrix< Complex > > | A_blocks_ |
| std::vector< std::vector< SymBandMatrix< Complex > > > | B1_blocks_ |
| std::vector< std::vector< SymBandMatrix< Complex > > > | B2_blocks_ |
| std::vector< CooMatrix< LU_int_t, Complex > > | Cu_blocks_ |
| std::vector< CooMatrix< LU_int_t, Complex > > | Cl_blocks_ |
| std::vector< BlockSymBandMatrix< Complex > > | E_blocks_ |
| std::vector< CooMatrix< LU_int_t, Complex > > | Fu_blocks_ |
| std::vector< CooMatrix< LU_int_t, Complex > > | Fl_blocks_ |
| int | max_n_ |
| std::vector< std::pair< int, int > > | Nchan_ |
| RadialIntegrals * | rad_inner_ |
| RadialIntegrals * | rad_full_ |
| RadialIntegrals * | rad_panel_ |
| std::array< Array< cArrays >, 2 > | Xp_ |
| std::array< Array< cArrays >, 2 > | Sp_ |
| std::array< cArrays, 2 > | Eb_ |
| std::array< std::vector< HlData >, 2 > | Hl_ |
| std::shared_ptr< LUft > | luS_ |
Protected Attributes inherited from PreconditionerBase | |
| bool | verbose_ |
| GMGPreconditioner::GMGPreconditioner | ( | CommandLine const & | cmd, |
| InputFile const & | inp, | ||
| Parallel const & | par, | ||
| AngularBasis const & | ang, | ||
| Bspline const & | bspline_x_inner, | ||
| Bspline const & | bspline_x_full, | ||
| Bspline const & | bspline_y_inner, | ||
| Bspline const & | bspline_y_full, | ||
| int | level | ||
| ) |
|
virtual |
|
virtual |
Simple documentation of the preconditioner.
Reimplemented from NoPreconditioner.
|
virtual |
This function preconditions the equation, solving the preconditioner equation
\[ \mathbf{M}\mathbf{z} = \mathbf{r} \ . \]
It may use the MPI environment.
VERIFY
Reimplemented from NoPreconditioner.
| GMGPreconditioner::preconditionerRunTimeSelectionDefinitions | ( | GMGPreconditioner | , |
| "GMG" | |||
| ) | const & |
|
virtual |
This function contains all computation intensive preparations for the preconditioner, e.g. computation of radial integrals. It may use only SMP environment.
Reimplemented from NoPreconditioner.
|
virtual |
This function updates the preconditioner for another right hand side. It may use the MPI environment. The energy is in Ry.
Reimplemented from NoPreconditioner.
| InputFile const Parallel const AngularBasis const& GMGPreconditioner::ang |
| InputFile const Parallel const AngularBasis const Bspline const Bspline const& GMGPreconditioner::bspline_x_full |
| InputFile const Parallel const AngularBasis const Bspline const& GMGPreconditioner::bspline_x_inner |
| InputFile const Parallel const AngularBasis const Bspline const Bspline const Bspline const Bspline const& GMGPreconditioner::bspline_y_full |
| InputFile const Parallel const AngularBasis const Bspline const Bspline const Bspline const& GMGPreconditioner::bspline_y_inner |
| InputFile const& GMGPreconditioner::inp |
1.8.13