LifeV
|
MultiscaleAlgorithmBroyden - The Multiscale Algorithm implementation of Broyden. More...
#include <MultiscaleAlgorithmBroyden.hpp>
Constructors & Destructor | |
MultiscaleAlgorithmBroyden () | |
Constructor. More... | |
virtual | ~MultiscaleAlgorithmBroyden () |
Destructor. More... | |
Multiscale Algorithm Virtual Methods | |
void | setupData (const std::string &fileName) |
Setup the data of the algorithm using a data file. More... | |
void | setupAlgorithm () |
Setup coupling variables and other quantities of the algorithm. 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 ¶meterList) |
Set the the main parameters of the algorithm (tolerance, maximum number of subiterations, etc.) More... | |
Private Types | |
typedef std::list< multiscaleVector_Type > | container_Type |
typedef container_Type::const_iterator | containerIterator_Type |
Unimplemented Methods | |
MultiscaleAlgorithmBroyden (const MultiscaleAlgorithmBroyden &algorithm) | |
MultiscaleAlgorithmBroyden & | operator= (const MultiscaleAlgorithmBroyden &algorithm) |
Private Methods | |
void | assembleJacobianMatrix () |
void | broydenJacobianUpdate (const multiscaleVector_Type &delta) |
void | orthogonalizationUpdate (const multiscaleVector_Type &delta) |
void | exportJacobianToHDF5 () |
Export Jacobian matrix to HDF5 file. More... | |
void | importJacobianFromHDF5 () |
Import Jacobian matrix from an HDF5 file. More... | |
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... | |
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 ¶meterList) |
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 |
MultiscaleAlgorithmBroyden - The Multiscale Algorithm implementation of Broyden.
The MultiscaleAlgorithmBroyden is an implementation of multiscaleAlgorithm_Type which implements the Broyden method.
Definition at line 64 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 117 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 118 of file MultiscaleAlgorithmBroyden.hpp.
|
explicit |
Constructor.
Definition at line 47 of file MultiscaleAlgorithmBroyden.cpp.
|
inlinevirtual |
Destructor.
Definition at line 75 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
|
virtual |
Setup the data of the algorithm using a data file.
FileName | Name of the data file. |
Implements MultiscaleAlgorithm.
Definition at line 71 of file MultiscaleAlgorithmBroyden.cpp.
|
virtual |
Setup coupling variables and other quantities of the algorithm.
Reimplemented from MultiscaleAlgorithm.
Definition at line 92 of file MultiscaleAlgorithmBroyden.cpp.
|
virtual |
Perform sub-iteration on the coupling variables.
Reimplemented from MultiscaleAlgorithm.
Definition at line 115 of file MultiscaleAlgorithmBroyden.cpp.
|
virtual |
Display some information about the algorithm.
Reimplemented from MultiscaleAlgorithm.
Definition at line 196 of file MultiscaleAlgorithmBroyden.cpp.
|
virtual |
Set the the main parameters of the algorithm (tolerance, maximum number of subiterations, etc.)
parameterList | teuchos list of parameters |
Reimplemented from MultiscaleAlgorithm.
Definition at line 214 of file MultiscaleAlgorithmBroyden.cpp.
|
private |
|
private |
Definition at line 230 of file MultiscaleAlgorithmBroyden.cpp.
|
private |
Definition at line 253 of file MultiscaleAlgorithmBroyden.cpp.
|
private |
Definition at line 287 of file MultiscaleAlgorithmBroyden.cpp.
|
private |
Export Jacobian matrix to HDF5 file.
Definition at line 303 of file MultiscaleAlgorithmBroyden.cpp.
|
private |
Import Jacobian matrix from an HDF5 file.
Definition at line 337 of file MultiscaleAlgorithmBroyden.cpp.
|
private |
Definition at line 152 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 153 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 155 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 156 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 157 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 158 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 159 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 160 of file MultiscaleAlgorithmBroyden.hpp.
|
private |
Definition at line 161 of file MultiscaleAlgorithmBroyden.hpp.