suanPan
Step Class Referenceabstract

A Step class. More...

#include <Step.h>

Inheritance diagram for Step:
Collaboration diagram for Step:

Public Member Functions

 Step (unsigned=0, double=1.)
 
 Step (const Step &)=delete
 
 Step (Step &&) noexcept=delete
 
Stepoperator= (const Step &)=delete
 
Stepoperator= (Step &&) noexcept=delete
 
 ~Step () override=default
 
virtual int initialize ()
 
virtual int analyze ()=0
 
void set_domain (const weak_ptr< DomainBase > &)
 
const weak_ptr< DomainBase > & get_domain () const
 
void set_factory (const shared_ptr< Factory< double > > &)
 
const shared_ptr< Factory< double > > & get_factory () const
 
void set_solver_tag (unsigned)
 
void set_solver (const shared_ptr< Solver > &)
 
const shared_ptr< Solver > & get_solver () const
 
void set_converger_tag (unsigned)
 
void set_converger (const shared_ptr< Converger > &)
 
const shared_ptr< Converger > & get_converger () const
 
void set_integrator_tag (unsigned)
 
void set_integrator (const shared_ptr< Integrator > &)
 
const shared_ptr< Integrator > & get_integrator () const
 
void set_time_period (double)
 
void set_time_left (double)
 
double get_time_period () const
 
double get_time_left () const
 
void set_ini_step_size (double)
 
void set_min_step_size (double)
 
void set_max_step_size (double)
 
void set_max_substep (unsigned)
 
void set_system_solver (SolverType)
 
void set_system_solver (IterativeSolver)
 
void set_sub_system_solver (SolverType)
 
void set_preconditioner (PreconditionerType)
 
void set_precision (Precision)
 
void set_tolerance (double)
 
void set_refinement (unsigned)
 
void set_lis_option (std::string_view)
 
double get_ini_step_size () const
 
double get_min_step_size () const
 
double get_max_step_size () const
 
unsigned get_max_substep () const
 
bool is_fixed_step_size () const
 
void set_fixed_step_size (bool)
 
bool is_symm () const
 
bool is_band () const
 
bool is_sparse () const
 
void set_symm (bool) const
 
void set_band (bool) const
 
void set_sparse (bool) const
 
- Public Member Functions inherited from Tag
 Tag (unsigned=0)
 
 Tag (const Tag &)=default
 
 Tag (Tag &&)=default
 
Tagoperator= (const Tag &)=delete
 
Tagoperator= (Tag &&)=delete
 
virtual ~Tag ()=default
 
void set_tag (unsigned) const
 
unsigned get_tag () const
 
void enable ()
 
void disable ()
 
void guard ()
 
void unguard ()
 
bool is_active () const
 
bool is_guarded () const
 
virtual void print ()
 

Protected Member Functions

void configure_storage_scheme () const
 

Protected Attributes

const bool symm_mat = false
 
const bool band_mat = true
 
const bool sparse_mat = false
 
SolverType system_solver = SolverType::LAPACK
 
SolverSetting< double > system_setting {}
 
SolverType sub_system_solver = SolverType::LAPACK
 
weak_ptr< DomainBasedatabase
 
shared_ptr< Factory< double > > factory
 
shared_ptr< Solversolver
 
shared_ptr< Convergertester
 
shared_ptr< Integratormodifier
 

Detailed Description

A Step class.

Author
tlc
Date
27/08/2017
Version
0.2.1

Constructor & Destructor Documentation

◆ Step() [1/3]

Step::Step ( unsigned  T = 0,
double  P = 1. 
)
explicit

◆ Step() [2/3]

Step::Step ( const Step )
delete

◆ Step() [3/3]

Step::Step ( Step &&  )
deletenoexcept

◆ ~Step()

Step::~Step ( )
overridedefault

Member Function Documentation

◆ analyze()

virtual int Step::analyze ( )
pure virtual

◆ configure_storage_scheme()

void Step::configure_storage_scheme ( ) const
protected
Here is the caller graph for this function:

◆ get_converger()

const shared_ptr< Converger > & Step::get_converger ( ) const

◆ get_domain()

const weak_ptr< DomainBase > & Step::get_domain ( ) const
Here is the caller graph for this function:

◆ get_factory()

const shared_ptr< Factory< double > > & Step::get_factory ( ) const
Here is the caller graph for this function:

◆ get_ini_step_size()

double Step::get_ini_step_size ( ) const
Here is the caller graph for this function:

◆ get_integrator()

const shared_ptr< Integrator > & Step::get_integrator ( ) const
Here is the caller graph for this function:

◆ get_max_step_size()

double Step::get_max_step_size ( ) const
Here is the caller graph for this function:

◆ get_max_substep()

unsigned Step::get_max_substep ( ) const
Here is the caller graph for this function:

◆ get_min_step_size()

double Step::get_min_step_size ( ) const
Here is the caller graph for this function:

◆ get_solver()

const shared_ptr< Solver > & Step::get_solver ( ) const
Here is the caller graph for this function:

◆ get_time_left()

double Step::get_time_left ( ) const

◆ get_time_period()

double Step::get_time_period ( ) const
Here is the caller graph for this function:

◆ initialize()

int Step::initialize ( )
virtual

Reimplemented in ArcLength, Buckle, Dynamic, Frequency, Optimization, and Static.

Here is the call graph for this function:

◆ is_band()

bool Step::is_band ( ) const

◆ is_fixed_step_size()

bool Step::is_fixed_step_size ( ) const
Here is the caller graph for this function:

◆ is_sparse()

bool Step::is_sparse ( ) const

◆ is_symm()

bool Step::is_symm ( ) const

◆ operator=() [1/2]

Step & Step::operator= ( const Step )
delete

◆ operator=() [2/2]

Step & Step::operator= ( Step &&  )
deletenoexcept

◆ set_band()

void Step::set_band ( bool  B) const

◆ set_converger()

void Step::set_converger ( const shared_ptr< Converger > &  C)

◆ set_converger_tag()

void Step::set_converger_tag ( unsigned  T)

◆ set_domain()

void Step::set_domain ( const weak_ptr< DomainBase > &  D)

◆ set_factory()

void Step::set_factory ( const shared_ptr< Factory< double > > &  F)

◆ set_fixed_step_size()

void Step::set_fixed_step_size ( bool  B)

◆ set_ini_step_size()

void Step::set_ini_step_size ( double  T)
Here is the call graph for this function:

◆ set_integrator()

void Step::set_integrator ( const shared_ptr< Integrator > &  G)

◆ set_integrator_tag()

void Step::set_integrator_tag ( unsigned  T)

◆ set_lis_option()

void Step::set_lis_option ( std::string_view  T)

◆ set_max_step_size()

void Step::set_max_step_size ( double  T)

◆ set_max_substep()

void Step::set_max_substep ( unsigned  M)
Here is the caller graph for this function:

◆ set_min_step_size()

void Step::set_min_step_size ( double  T)

◆ set_precision()

void Step::set_precision ( Precision  P)

◆ set_preconditioner()

void Step::set_preconditioner ( PreconditionerType  P)

◆ set_refinement()

void Step::set_refinement ( unsigned  T)

◆ set_solver()

void Step::set_solver ( const shared_ptr< Solver > &  S)

◆ set_solver_tag()

void Step::set_solver_tag ( unsigned  T)

◆ set_sparse()

void Step::set_sparse ( bool  B) const

◆ set_sub_system_solver()

void Step::set_sub_system_solver ( SolverType  P)

◆ set_symm()

void Step::set_symm ( bool  B) const

◆ set_system_solver() [1/2]

void Step::set_system_solver ( IterativeSolver  P)

◆ set_system_solver() [2/2]

void Step::set_system_solver ( SolverType  P)

◆ set_time_left()

void Step::set_time_left ( double  T)
Here is the caller graph for this function:

◆ set_time_period()

void Step::set_time_period ( double  T)
Here is the call graph for this function:

◆ set_tolerance()

void Step::set_tolerance ( double  T)

Member Data Documentation

◆ band_mat

const bool Step::band_mat = true
protected

◆ database

weak_ptr<DomainBase> Step::database
protected

◆ factory

shared_ptr<Factory<double> > Step::factory
protected

◆ modifier

shared_ptr<Integrator> Step::modifier
protected

◆ solver

shared_ptr<Solver> Step::solver
protected

◆ sparse_mat

const bool Step::sparse_mat = false
protected

◆ sub_system_solver

SolverType Step::sub_system_solver = SolverType::LAPACK
protected

◆ symm_mat

const bool Step::symm_mat = false
protected

◆ system_setting

SolverSetting<double> Step::system_setting {}
protected

◆ system_solver

SolverType Step::system_solver = SolverType::LAPACK
protected

◆ tester

shared_ptr<Converger> Step::tester
protected

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