BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
belfem::SolverParameters Class Reference

Configuration for a Solver. More...

#include <cl_SolverParameters.hpp>

Public Member Functions

 SolverParameters (const SolverType aType)
 SolverParameters (const input::Section *aInput)
 SolverParameters (const SolverParameters &aOther)
 SolverParameters (SolverParameters &&aOther)=delete
SolverParametersoperator= (SolverParameters &&aOther)=delete
 ~SolverParameters ()=default
void set_distributed_matrix_type (const DistributedMatrixType aType)
void set_preconditioner (const Preconditioner aPreconditioner)
void set_krylov_method (const KrylovMethod aKrylovMethod)
void set_reordering_method (const ReorderingMethod aReorderingMethod)
void set_compression_method (const CompressionMethod aCompressionMethod)
void set_relative_tolerance (const real aEpsilon)
void set_absolute_tolerance (const real aEpsilon)
void set_use_initial_guess (const bool aUse)
void set_matrix_matching (const bool aUse)
SolverType type () const
DistributedMatrixType distributed_matrix_type () const
Preconditioner preconditioner () const
KrylovMethod krylov_method () const
ReorderingMethod reordering_method () const
CompressionMethod compression_method () const
real relative_tolerance () const
real absolute_tolerance () const
bool have_relative_tolerance () const
bool have_absolute_tolerance () const
uint max_iterations () const
 deck-stated Krylov iteration budget; 0 = library default
void set_compression_cutoff (const real aCutoff)
bool have_compression_cutoff () const
 true if the cutoff was stated rather than inherited
real compression_cutoff () const
void set_memory_budget (const uint aMegaBytes)
bool have_memory_budget () const
 true if the deck ( or a caller ) stated a budget
uint memory_budget () const
 MB per process; 0 when not stated.
bool use_initial_guess () const
bool use_matrix_matching () const
bool use_metis_nodendp () const
void synchronize ()

Detailed Description

Constructor & Destructor Documentation

◆ SolverParameters() [1/4]

belfem::SolverParameters::SolverParameters ( const SolverType aType)

◆ SolverParameters() [2/4]

belfem::SolverParameters::SolverParameters ( const input::Section * aInput)

◆ SolverParameters() [3/4]

belfem::SolverParameters::SolverParameters ( const SolverParameters & aOther)

◆ SolverParameters() [4/4]

belfem::SolverParameters::SolverParameters ( SolverParameters && aOther)
delete

◆ ~SolverParameters()

belfem::SolverParameters::~SolverParameters ( )
default

Member Function Documentation

◆ absolute_tolerance()

real belfem::SolverParameters::absolute_tolerance ( ) const

◆ compression_cutoff()

real belfem::SolverParameters::compression_cutoff ( ) const

◆ compression_method()

CompressionMethod belfem::SolverParameters::compression_method ( ) const

◆ distributed_matrix_type()

DistributedMatrixType belfem::SolverParameters::distributed_matrix_type ( ) const

◆ have_absolute_tolerance()

bool belfem::SolverParameters::have_absolute_tolerance ( ) const

◆ have_compression_cutoff()

bool belfem::SolverParameters::have_compression_cutoff ( ) const

true if the cutoff was stated rather than inherited

◆ have_memory_budget()

bool belfem::SolverParameters::have_memory_budget ( ) const

true if the deck ( or a caller ) stated a budget

◆ have_relative_tolerance()

bool belfem::SolverParameters::have_relative_tolerance ( ) const

true if the tolerance was stated explicitly rather than inherited from the class default

◆ krylov_method()

KrylovMethod belfem::SolverParameters::krylov_method ( ) const

◆ max_iterations()

uint belfem::SolverParameters::max_iterations ( ) const

deck-stated Krylov iteration budget; 0 = library default

◆ memory_budget()

uint belfem::SolverParameters::memory_budget ( ) const

MB per process; 0 when not stated.

◆ operator=()

SolverParameters & belfem::SolverParameters::operator= ( SolverParameters && aOther)
delete

◆ preconditioner()

Preconditioner belfem::SolverParameters::preconditioner ( ) const

◆ relative_tolerance()

real belfem::SolverParameters::relative_tolerance ( ) const

◆ reordering_method()

ReorderingMethod belfem::SolverParameters::reordering_method ( ) const

◆ set_absolute_tolerance()

void belfem::SolverParameters::set_absolute_tolerance ( const real aEpsilon)

◆ set_compression_cutoff()

void belfem::SolverParameters::set_compression_cutoff ( const real aCutoff)

validates > 0 and finite — the single check for the deck parser and programmatic callers alike

◆ set_compression_method()

void belfem::SolverParameters::set_compression_method ( const CompressionMethod aCompressionMethod)

◆ set_distributed_matrix_type()

void belfem::SolverParameters::set_distributed_matrix_type ( const DistributedMatrixType aType)

◆ set_krylov_method()

void belfem::SolverParameters::set_krylov_method ( const KrylovMethod aKrylovMethod)

◆ set_matrix_matching()

void belfem::SolverParameters::set_matrix_matching ( const bool aUse)

◆ set_memory_budget()

void belfem::SolverParameters::set_memory_budget ( const uint aMegaBytes)

validates > 0 — the single check for the deck parser and programmatic callers alike. Megabytes per process

◆ set_preconditioner()

void belfem::SolverParameters::set_preconditioner ( const Preconditioner aPreconditioner)

◆ set_relative_tolerance()

void belfem::SolverParameters::set_relative_tolerance ( const real aEpsilon)

◆ set_reordering_method()

void belfem::SolverParameters::set_reordering_method ( const ReorderingMethod aReorderingMethod)

◆ set_use_initial_guess()

void belfem::SolverParameters::set_use_initial_guess ( const bool aUse)

◆ synchronize()

void belfem::SolverParameters::synchronize ( )

◆ type()

SolverType belfem::SolverParameters::type ( ) const

◆ use_initial_guess()

bool belfem::SolverParameters::use_initial_guess ( ) const

◆ use_matrix_matching()

bool belfem::SolverParameters::use_matrix_matching ( ) const

◆ use_metis_nodendp()

bool belfem::SolverParameters::use_metis_nodendp ( ) const

The documentation for this class was generated from the following files: