37 #ifndef MultiscaleAlgorithmBroyden_H 38 #define MultiscaleAlgorithmBroyden_H 1
42 #define BROYDEN_IMPORTJACOBIAN 44 #include <lifev/core/algorithm/LinearSolver.hpp> 46 #include <lifev/multiscale/algorithms/MultiscaleAlgorithm.hpp> 87 void setupData (
const std::string& fileName );
167 return new MultiscaleAlgorithmBroyden();
MultiscaleAlgorithmBroyden & operator=(const MultiscaleAlgorithmBroyden &algorithm)
MultiscaleAlgorithmBroyden()
Constructor.
void showMe()
Display some information about the algorithm.
MultiscaleAlgorithmBroyden(const MultiscaleAlgorithmBroyden &algorithm)
void subIterate()
Perform sub-iteration on the coupling variables.
void broydenJacobianUpdate(const multiscaleVector_Type &delta)
void setAlgorithmParameters(const multiscaleParameterList_Type ¶meterList)
Set the the main parameters of the algorithm (tolerance, maximum number of subiterations, etc.)
UInt M_iterationsLimitForReset
multiscaleMatrixPtr_Type M_jacobian
bool M_initializeAsIdentityMatrix
void assembleJacobianMatrix()
void updateInverseJacobian(const UInt &iQuadPt)
void orthogonalizationUpdate(const multiscaleVector_Type &delta)
bool M_iterationsLimitReached
void importJacobianFromHDF5()
Import Jacobian matrix from an HDF5 file.
multiscaleAlgorithm_Type * createMultiscaleAlgorithmBroyden()
Factory create function.
LinearSolver - Class to wrap linear solver.
void setupData(const std::string &fileName)
Setup the data of the algorithm using a data file.
MultiscaleAlgorithm multiscaleAlgorithm_Type
container_Type::const_iterator containerIterator_Type
LinearSolver::parameterList_Type multiscaleParameterList_Type
container_Type M_orthogonalizationContainer
UInt M_orthogonalizationSize
virtual ~MultiscaleAlgorithmBroyden()
Destructor.
void setupAlgorithm()
Setup coupling variables and other quantities of the algorithm.
std::shared_ptr< multiscaleMatrix_Type > multiscaleMatrixPtr_Type
std::list< multiscaleVector_Type > container_Type
uint32_type UInt
generic unsigned integer (used mainly for addressing)
VectorEpetra multiscaleVector_Type