LifeV
MultiscaleAlgorithmAitken Class Reference

MultiscaleAlgorithmAitken - The Multiscale Algorithm implementation of Aitken. More...

#include <MultiscaleAlgorithmAitken.hpp>

+ Inheritance diagram for MultiscaleAlgorithmAitken:
+ Collaboration diagram for MultiscaleAlgorithmAitken:

Private Types

enum  methodType { Scalar, Vectorial, VectorialBlock }
 

Private Attributes

std::map< std::string, methodType > M_methodMap
 
methodType M_method
 
NonLinearAitken< multiscaleVector_Type > M_generalizedAitken
 

Constructors & Destructor

 MultiscaleAlgorithmAitken ()
 Constructor. More...
 
virtual ~MultiscaleAlgorithmAitken ()
 Destructor. More...
 

Multiscale Algorithm Virtual Methods

void setupData (const std::string &fileName)
 Setup the data of the algorithm using a data file. More...
 
void subIterate ()
 Perform sub-iteration on the coupling variables. More...
 
void showMe ()
 Display some information about the algorithm. More...
 

Set Methods

void setAlgorithmParameters (const multiscaleParameterList_Type &parameterList)
 Set the the main parameters of the algorithm (tolerance, maximum number of subiterations, etc.) More...
 

Unimplemented Methods

 MultiscaleAlgorithmAitken (const MultiscaleAlgorithmAitken &algorithm)
 
MultiscaleAlgorithmAitken & operator= (const MultiscaleAlgorithmAitken &algorithm)
 

Additional Inherited Members

- Public Types inherited from MultiscaleAlgorithm
typedef MultiscaleModelMultiscale multiscaleModelMultiscale_Type
 
typedef multiscaleModelMultiscale_Type * multiscaleModelMultiscalePtr_Type
 
- Public Member Functions inherited from MultiscaleAlgorithm
 MultiscaleAlgorithm ()
 Constructor. More...
 
virtual ~MultiscaleAlgorithm ()
 Destructor. More...
 
virtual void setupAlgorithm ()
 Setup coupling variables and other quantities of the algorithm. More...
 
Real computeResidual () const
 
void setCommunicator (const multiscaleCommPtr_Type &comm)
 Set the epetra communicator for the model. More...
 
void setMultiscaleModel (const multiscaleModelMultiscalePtr_Type model)
 Set the main Multiscale model. More...
 
void setSubiterationsMaximumNumber (const UInt &subiterationsMaximumNumber)
 Set the maximum number of subiterations. More...
 
void setTolerance (const Real &tolerance)
 Set the tolerance. More...
 
void setAlgorithmName (const multiscaleParameterList_Type &parameterList)
 Set the algorithm name. More...
 
const algorithms_Type & type () const
 Get the type of the algorithm. More...
 
const multiscaleModelMultiscalePtr_Type & multiScaleProblem () const
 Get the Multiscale problem. More...
 
const multiscaleVectorPtr_Type & couplingVariables () const
 Get the coupling variables. More...
 
const multiscaleVectorPtr_Type & couplingResiduals () const
 Get the coupling residuals. More...
 
const multiscaleCommPtr_Type & communicator () const
 Get the communicator. More...
 
const UInt & subiterationsMaximumNumber () const
 Get the subiterations maximum number. More...
 
const Real & tolerance () const
 Get the required tolerance. More...
 
- Protected Member Functions inherited from MultiscaleAlgorithm
void save (const UInt &subiterationsNumber, const Real &residual) const
 save on a Matlab file the information about the convergence of the algorithm. More...
 
bool checkResidual (const UInt &subIT=0) const
 Update the residual and check if the tolerance has been satisfied. More...
 
- Protected Attributes inherited from MultiscaleAlgorithm
algorithms_Type M_type
 
std::string M_name
 
multiscaleModelMultiscalePtr_Type M_multiscale
 
multiscaleVectorPtr_Type M_couplingVariables
 
multiscaleVectorPtr_Type M_couplingResiduals
 
multiscaleCommPtr_Type M_comm
 
UInt M_subiterationsMaximumNumber
 
Real M_tolerance
 

Detailed Description

MultiscaleAlgorithmAitken - The Multiscale Algorithm implementation of Aitken.

Author
Cristiano Malossi
See also
Full description of the Geometrical Multiscale Framework: [15]
Methodology: [12] [13] [14] [2]
Applications: [11] [10] [3]

The MultiscaleAlgorithmAitken is an implementation of multiscaleAlgorithm_Type which implements the Aitken method.

Definition at line 60 of file MultiscaleAlgorithmAitken.hpp.

Member Enumeration Documentation

◆ methodType

enum methodType
private
Enumerator
Scalar 
Vectorial 
VectorialBlock 

Definition at line 115 of file MultiscaleAlgorithmAitken.hpp.

Constructor & Destructor Documentation

◆ MultiscaleAlgorithmAitken() [1/2]

Constructor.

Definition at line 47 of file MultiscaleAlgorithmAitken.cpp.

+ Here is the caller graph for this function:

◆ ~MultiscaleAlgorithmAitken()

virtual ~MultiscaleAlgorithmAitken ( )
inlinevirtual

Destructor.

Definition at line 71 of file MultiscaleAlgorithmAitken.hpp.

◆ MultiscaleAlgorithmAitken() [2/2]

MultiscaleAlgorithmAitken ( const MultiscaleAlgorithmAitken &  algorithm)
private

Member Function Documentation

◆ setupData()

void setupData ( const std::string &  fileName)
virtual

Setup the data of the algorithm using a data file.

Parameters
FileNameName of the data file.

Implements MultiscaleAlgorithm.

Definition at line 70 of file MultiscaleAlgorithmAitken.cpp.

◆ subIterate()

void subIterate ( )
virtual

Perform sub-iteration on the coupling variables.

Reimplemented from MultiscaleAlgorithm.

Definition at line 87 of file MultiscaleAlgorithmAitken.cpp.

◆ showMe()

void showMe ( )
virtual

Display some information about the algorithm.

Reimplemented from MultiscaleAlgorithm.

Definition at line 154 of file MultiscaleAlgorithmAitken.cpp.

◆ setAlgorithmParameters()

void setAlgorithmParameters ( const multiscaleParameterList_Type &  parameterList)
virtual

Set the the main parameters of the algorithm (tolerance, maximum number of subiterations, etc.)

Parameters
parameterListteuchos list of parameters

Reimplemented from MultiscaleAlgorithm.

Definition at line 169 of file MultiscaleAlgorithmAitken.cpp.

◆ operator=()

MultiscaleAlgorithmAitken& operator= ( const MultiscaleAlgorithmAitken &  algorithm)
private

Field Documentation

◆ M_methodMap

std::map< std::string, methodType > M_methodMap
private

Definition at line 120 of file MultiscaleAlgorithmAitken.hpp.

◆ M_method

methodType M_method
private

Definition at line 121 of file MultiscaleAlgorithmAitken.hpp.

◆ M_generalizedAitken

NonLinearAitken< multiscaleVector_Type > M_generalizedAitken
private

Definition at line 122 of file MultiscaleAlgorithmAitken.hpp.


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