|
|
|
typedef Problem< SC, LO, GO, NO > | Problem_Type |
| |
|
typedef Problem_Type::Matrix_Type | Matrix_Type |
| |
|
typedef Problem_Type::MatrixPtr_Type | MatrixPtr_Type |
| |
|
typedef Problem_Type::MapConstPtr_Type | MapConstPtr_Type |
| |
|
typedef Problem_Type::BlockMatrix_Type | BlockMatrix_Type |
| |
|
typedef Problem_Type::BlockMatrixPtr_Type | BlockMatrixPtr_Type |
| |
|
typedef Problem_Type::MultiVector_Type | MultiVector_Type |
| |
|
typedef Problem_Type::MultiVectorPtr_Type | MultiVectorPtr_Type |
| |
|
typedef Problem_Type::MultiVectorConstPtr_Type | MultiVectorConstPtr_Type |
| |
|
typedef Problem_Type::BlockMultiVectorPtr_Type | BlockMultiVectorPtr_Type |
| |
|
typedef Problem_Type::DomainConstPtr_Type | DomainConstPtr_Type |
| |
|
typedef Problem_Type::CommConstPtr_Type | CommConstPtr_Type |
| |
|
typedef NonLinearProblem< SC, LO, GO, NO > | NonLinearProblem_Type |
| |
|
typedef NonLinearProblem_Type::BlockMultiVectorPtrArray_Type | BlockMultiVectorPtrArray_Type |
| |
|
typedef Problem< default_sc, default_lo, default_go, default_no > | Problem_Type |
| |
|
typedef Problem_Type::CommConstPtr_Type | CommConstPtr_Type |
| |
|
typedef Problem_Type::MapConstPtr_Type | MapConstPtr_Type |
| |
|
typedef Problem_Type::MultiVector_Type | MultiVector_Type |
| |
|
typedef Problem_Type::MultiVectorPtr_Type | MultiVectorPtr_Type |
| |
|
typedef Problem_Type::MultiVectorConstPtr_Type | MultiVectorConstPtr_Type |
| |
|
typedef Problem_Type::BlockMultiVector_Type | BlockMultiVector_Type |
| |
|
typedef Problem_Type::BlockMultiVectorPtr_Type | BlockMultiVectorPtr_Type |
| |
|
typedef Problem_Type::Matrix_Type | Matrix_Type |
| |
|
typedef Problem_Type::MatrixPtr_Type | MatrixPtr_Type |
| |
|
typedef Problem_Type::BlockMatrix_Type | BlockMatrix_Type |
| |
|
typedef Problem_Type::BlockMatrixPtr_Type | BlockMatrixPtr_Type |
| |
|
typedef Tpetra::Map< default_lo, default_go, default_no > | TpetraMap_Type |
| |
|
typedef Teuchos::RCP< TpetraMap_Type > | TpetraMapPtr_Type |
| |
|
typedef Teuchos::RCP< const TpetraMap_Type > | TpetraMapConstPtr_Type |
| |
|
typedef const TpetraMapConstPtr_Type | TpetraMapConstPtrConst_Type |
| |
|
typedef BlockMap< default_lo, default_go, default_no > | BlockMap_Type |
| |
|
typedef Teuchos::RCP< BlockMap_Type > | BlockMapPtr_Type |
| |
|
typedef Teuchos::RCP< const BlockMap_Type > | BlockMapConstPtr_Type |
| |
|
typedef Teuchos::Array< BlockMultiVectorPtr_Type > | BlockMultiVectorPtrArray_Type |
| |
|
using | ThyraTypes |
| |
|
using | TpetraTypes |
| |
|
using | ThyraVecSpace_Type |
| |
|
typedef Teuchos::RCP< const ThyraVecSpace_Type > | ThyraVecSpaceConstPtr_Type |
| |
|
using | ThyraVec_Type |
| |
|
using | TpetraMatrix_Type |
| |
|
using | ThyraOp_Type |
| |
|
using | TpetraOp_Type |
| |
|
typedef Thyra::BlockedLinearOpBase< default_sc > | ThyraBlockOp_Type |
| |
|
typedef Domain< default_sc, default_lo, default_go, default_no > | Domain_Type |
| |
|
typedef Teuchos::RCP< Domain_Type > | DomainPtr_Type |
| |
|
typedef Teuchos::RCP< const Domain_Type > | DomainConstPtr_Type |
| |
|
typedef std::vector< DomainConstPtr_Type > | DomainConstPtr_vec_Type |
| |
|
typedef Matrix< default_sc, default_lo, default_go, default_no > | Matrix_Type |
| |
|
typedef Teuchos::RCP< Matrix_Type > | MatrixPtr_Type |
| |
|
typedef Matrix_Type::Map_Type | Map_Type |
| |
|
typedef Matrix_Type::MapPtr_Type | MapPtr_Type |
| |
|
typedef Matrix_Type::MapConstPtr_Type | MapConstPtr_Type |
| |
|
typedef BlockMatrix< default_sc, default_lo, default_go, default_no > | BlockMatrix_Type |
| |
|
typedef Teuchos::RCP< BlockMatrix_Type > | BlockMatrixPtr_Type |
| |
|
typedef Teuchos::RCP< const BlockMatrix_Type > | BlockMatrixConstPtr_Type |
| |
|
typedef MultiVector< default_sc, default_lo, default_go, default_no > | MultiVector_Type |
| |
|
typedef Teuchos::RCP< MultiVector_Type > | MultiVectorPtr_Type |
| |
|
typedef Teuchos::RCP< const MultiVector_Type > | MultiVectorConstPtr_Type |
| |
|
typedef BlockMultiVector< default_sc, default_lo, default_go, default_no > | BlockMultiVector_Type |
| |
|
typedef Teuchos::RCP< BlockMultiVector_Type > | BlockMultiVectorPtr_Type |
| |
|
typedef Teuchos::RCP< const BlockMultiVector_Type > | BlockMultiVectorConstPtr_Type |
| |
|
typedef Preconditioner< default_sc, default_lo, default_go, default_no > | Preconditioner_Type |
| |
|
typedef Teuchos::RCP< Preconditioner_Type > | PreconditionerPtr_Type |
| |
|
typedef Teuchos::RCP< const Preconditioner_Type > | PreconditionerConstPtr_Type |
| |
|
typedef BCBuilder< default_sc, default_lo, default_go, default_no > | BC_Type |
| |
|
typedef Teuchos::RCP< BC_Type > | BCPtr_Type |
| |
|
typedef Teuchos::RCP< const BC_Type > | BCConstPtr_Type |
| |
|
typedef FE< default_sc, default_lo, default_go, default_no > | FEFac_Type |
| |
|
typedef Teuchos::RCP< FEFac_Type > | FEFacPtr_Type |
| |
|
typedef Teuchos::RCP< const FEFac_Type > | FEFacConstPtr_Type |
| |
|
typedef Teuchos::ParameterList | ParameterList_Type |
| |
|
typedef Teuchos::RCP< ParameterList_Type > | ParameterListPtr_Type |
| |
|
typedef Teuchos::RCP< Stratimikos::DefaultLinearSolverBuilder > | LinSolverBuilderPtr_Type |
| |
|
typedef Teuchos::RCP< const Stratimikos::DefaultLinearSolverBuilder > | LinSolverBuilderConstPtr_Type |
| |
|
typedef Teuchos::Comm< int > | Comm_Type |
| |
|
typedef Teuchos::RCP< const Comm_Type > | CommConstPtr_Type |
| |
|
typedef Teuchos::ArrayRCP< default_go > | GOVecPtr |
| |
|
typedef std::vector< std::string > | string_vec_Type |
| |
|
typedef Teuchos::RCP< Thyra::PreconditionerBase< default_sc > > | ThyraPrecPtr_Type |
| |
|
using | ThyraTypes |
| |
|
using | ThyraLinOpPtr_Type |
| |
|
| | NonLinearProblem (CommConstPtr_Type comm) |
| | Constructor.
|
| |
| | NonLinearProblem (ParameterListPtr_Type ¶meterList, CommConstPtr_Type comm) |
| | Constructor with parameterlist.
|
| |
|
void | infoNonlinProblem () |
| | Information about the non-linear problem.
|
| |
| void | initializeProblem (int nmbVectors=1) |
| | Initialisation of the non-linear problem with system, vectors, and Thyra vector spaces for NOX.
|
| |
| int | solveAndUpdate (const std::string &criterion, double &criterionValue) |
| | Solving the non-linear problem and updating the solution.
|
| |
| int | solveUpdate () |
| | This is where the linear solve specifically happens.
|
| |
| virtual void | reAssemble (BlockMultiVectorPtr_Type previousSolution) const=0 |
| | Reassemble with previous solution. I think it is not used anymore. @TODO: Look into this.
|
| |
|
void | reAssembleAndFill (BlockMatrixPtr_Type bMat, std::string type="FixedPoint") |
| |
|
virtual void | reAssembleExtrapolation (BlockMultiVectorPtrArray_Type previousSolutions)=0 |
| |
| void | initializeVectorsNonLinear (int nmbVectors=1) |
| | Initialisation of the non-linear vectors like residual and previous solution.
|
| |
| double | calculateResidualNorm () const |
| | Calculate the 2-norm of the residual vector.
|
| |
| virtual void | calculateNonLinResidualVec (SmallMatrix< double > &coeff, std::string type="standard", double time=0., BlockMatrixPtr_Type systemMass=Teuchos::null) |
| | Calculate the non-linear residual vector with given coefficients for time-dependent problems (if used for timeproblem)
|
| |
| BlockMultiVectorPtr_Type | getResidualVector () const |
| | Get the residual vector.
|
| |
| BlockMultiVectorPtr_Type | getPreviousSolution () const |
| | Get previous solution. Needed for time-dependent problems.
|
| |
|
virtual Thyra::ModelEvaluatorBase::InArgs< default_sc > | getNominalValues () const |
| |
|
virtual Teuchos::RCP< const ::Thyra::VectorSpaceBase< default_sc > > | get_x_space () const |
| |
|
virtual Teuchos::RCP< const ::Thyra::VectorSpaceBase< default_sc > > | get_f_space () const |
| |
|
virtual ::Thyra::ModelEvaluatorBase::InArgs< default_sc > | createInArgs () const |
| |
|
void | initNOXParameters () |
| |
|
void | initVectorSpaces () |
| |
|
void | initVectorSpacesMonolithic () |
| |
|
void | initVectorSpacesBlock () |
| |
|
virtual ::Thyra::ModelEvaluatorBase::OutArgs< default_sc > | createOutArgsImpl () const |
| |
|
void | setNonlinearIterationStep (int newtonStep) |
| |
| int | getNonlinearIterationStep () const override |
| |
|
Teuchos::RCP< Thyra::LinearOpBase< default_sc > > | create_W_op () const |
| | Block Approach for Nonlinear Solver NOX. Input. Includes calculation of the residual vector and update (reAssembly) of non constant matrices with new solution. ResidualVec and SystemMatrix of this class are then converted into the corresponding Thyra/Tpetra objects for Solver.
|
| |
|
Teuchos::RCP< Thyra::LinearOpBase< default_sc > > | create_W_op_Monolithic () const |
| |
|
Teuchos::RCP< Thyra::PreconditionerBase< default_sc > > | create_W_prec () const |
| |
|
| Problem (CommConstPtr_Type comm) |
| |
|
| Problem (ParameterListPtr_Type ¶meterList, CommConstPtr_Type comm) |
| |
|
void | infoProblem () |
| |
|
void | infoParameter (bool full=true, std::string="empty") |
| |
|
void | addVariable (const DomainConstPtr_Type &domain, std::string FEType, std::string name, int dofsPerNode) |
| |
| void | addRhsFunction (RhsFunc_Type func) |
| |
| void | addRhsFunction (RhsFunc_Type func, int i) |
| |
| RhsFunc_Type & | getRhsFunction (int i) |
| |
|
void | assembleSourceTerm (double time=0.) const |
| |
|
void | assembleVolumeTerm (double time) const |
| |
|
void | assembleSurfaceTerm (double time) const |
| |
|
bool | hasSourceTerm () const |
| |
|
int | solve (BlockMultiVectorPtr_Type rhs=Teuchos::null) |
| |
|
void | setupPreconditioner (std::string type="Monolithic") const |
| |
|
void | initializePreconditioner (std::string type="Monolithic") const |
| |
|
void | addBoundaries (const BCConstPtr_Type &bcFactory) |
| |
|
void | setBoundaries (double time=.0) const |
| |
|
void | setBoundariesRHS (double time=.0) const |
| |
|
void | setAllDirichletZero (BlockMultiVectorPtr_Type rhs) const |
| |
|
void | setBoundariesSystem () const |
| |
|
void | initializeProblem (int nmbVectors=1) |
| |
|
void | initializeVectors (int nmbVectors=1) |
| |
|
BlockMultiVectorPtr_Type | getRhs () |
| |
|
BlockMultiVectorPtr_Type | getRhs () const |
| |
|
BlockMultiVectorPtr_Type | getSolution () |
| |
|
BlockMatrixPtr_Type | getSystem () const |
| |
|
PreconditionerPtr_Type | getPreconditioner () |
| |
|
PreconditionerConstPtr_Type | getPreconditionerConst () const |
| |
|
void | setPreconditionerThyraFromLinOp (ThyraLinOpPtr_Type precLinOp) |
| |
|
void | initializeSolverBuilder () const |
| |
|
bool | getVerbose () const |
| |
|
FEFacConstPtr_Type | getFEFactory () |
| |
|
BCConstPtr_Type | getBCFactory () |
| |
|
DomainConstPtr_Type | getDomain (int i) const |
| |
|
DomainConstPtr_vec_Type | getDomainVector () const |
| |
|
std::string | getFEType (int i) const |
| |
|
std::string | getVariableName (int i) const |
| |
|
int | getDofsPerNode (int i) const |
| |
|
ParameterListPtr_Type | getParameterList () const |
| |
|
void | addToRhs (BlockMultiVectorPtr_Type x) const |
| |
|
BlockMultiVectorPtr_Type | getSourceTerm () |
| |
|
void | initSolutionWithVector (MultiVector_Type &mv) |
| |
|
LinSolverBuilderPtr_Type | getLinearSolverBuilder () const |
| |
|
CommConstPtr_Type | getComm () const |
| |
|
void | addParemeterRhs (double para) |
| |
|
void | changeAssFELinearization (std::string linearization) |
| |
|
double | calculateH1Norm (MultiVectorConstPtr_Type mv, int blockId1=0, int blockId2=0, int domainInd=0) |
| |
|
double | calculateL2Norm (MultiVectorConstPtr_Type mv, int domainInd=0) |
| |
|
double | nonLinearTolerance_ |
| |
|
BlockMultiVectorPtr_Type | previousSolution_ |
| |
|
BlockMultiVectorPtr_Type | residualVec_ |
| |
|
SmallMatrix< double > | coeff_ |
| |
|
int | newtonStep_ |
| |
|
int | dim_ |
| |
|
CommConstPtr_Type | comm_ |
| |
|
BlockMatrixPtr_Type | system_ |
| |
|
BlockMultiVectorPtr_Type | rhs_ |
| |
|
BlockMultiVectorPtr_Type | solution_ |
| |
|
PreconditionerPtr_Type | preconditioner_ |
| |
|
LinSolverBuilderPtr_Type | linearSolverBuilder_ |
| |
|
bool | verbose_ |
| |
|
std::vector< RhsFunc_Type > | rhsFuncVec_ |
| |
|
vec_dbl_Type | parasSourceFunc_ |
| |
|
ParameterListPtr_Type | parameterList_ |
| |
|
DomainConstPtr_vec_Type | domainPtr_vec_ |
| |
|
string_vec_Type | domain_FEType_vec_ |
| |
|
string_vec_Type | variableName_vec_ |
| |
|
BCConstPtr_Type | bcFactory_ |
| |
|
FEFacPtr_Type | feFactory_ |
| |
|
std::vector< int > | dofsPerNode_vec_ |
| |
| BlockMultiVectorPtr_Type | sourceTerm_ |
| |