Advanced Multi-Physics (AMP)
On-Line Documentation
PelletStackHelpers.h
Go to the documentation of this file.
1#ifndef included_AMP_PelletStackHelpers
2#define included_AMP_PelletStackHelpers
3
4#include "AMP/mesh/Mesh.h"
5#include "AMP/operators/CoupledOperator.h"
6#include "AMP/operators/libmesh/PelletStackOperator.h"
7#include "AMP/operators/map/AsyncMapColumnOperator.h"
8#include "AMP/solvers/ColumnSolver.h"
9#include "AMP/solvers/libmesh/PelletStackMechanicsSolver.h"
10#include "AMP/vectors/Vector.h"
11
12
14
15
16std::shared_ptr<AsyncMapColumnOperator>
17createMaps( std::shared_ptr<AMP::Mesh::Mesh> manager,
18 std::shared_ptr<AMP::Database> global_input_db );
19
20
21std::shared_ptr<AMP::Operator::PelletStackOperator>
22createStackOperator( std::shared_ptr<AMP::Mesh::Mesh> manager,
23 std::shared_ptr<AsyncMapColumnOperator> n2nmaps,
24 std::shared_ptr<AMP::Database> global_input_db );
25
26
27std::shared_ptr<AMP::Operator::ColumnOperator>
28createNonlinearColumnOperator( std::shared_ptr<AMP::Operator::PelletStackOperator> pelletStackOp,
29 std::shared_ptr<AMP::Database> global_input_db );
30
31
32std::shared_ptr<ColumnOperator>
33createLinearColumnOperator( std::shared_ptr<ColumnOperator> nonlinearColumnOperator );
34
35
36std::shared_ptr<AMP::Operator::CoupledOperator>
37createCoupledOperator( std::shared_ptr<AMP::Operator::AsyncMapColumnOperator> n2nmaps,
38 std::shared_ptr<AMP::Operator::ColumnOperator> nonlinearColumnOperator );
39
40
41void setFrozenVectorForMaps( std::shared_ptr<AMP::Mesh::Mesh> manager,
42 std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp );
43
44
45void createVectors( std::shared_ptr<AMP::Mesh::Mesh> manager,
46 std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp,
50
51
52void buildPointLoadRHS( std::shared_ptr<AMP::Database> global_input_db,
53 std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp,
55
56
57void applyBoundaryCorrections( std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp,
60
61
62void createTemperatureVectors( std::shared_ptr<AMP::Mesh::Mesh> manager,
63 AMP::LinearAlgebra::Vector::shared_ptr &initialTemperatureVec,
64 AMP::LinearAlgebra::Vector::shared_ptr &finalTemperatureVec );
65
66
67void setReferenceTemperature( std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp,
68 AMP::LinearAlgebra::Vector::shared_ptr initialTemperatureVec );
69
70
71void setFinalTemperature( std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp,
72 AMP::LinearAlgebra::Vector::shared_ptr finalTemperatureVec );
73
74
75void buildColumnSolver( std::shared_ptr<AMP::Database> columnSolver_db,
76 std::shared_ptr<AMP::Operator::ColumnOperator> linearColumnOperator,
77 std::shared_ptr<AMP::Solver::ColumnSolver> &columnSolver );
78
79
80std::shared_ptr<AMP::Solver::SolverStrategy>
81buildStackSolver( std::shared_ptr<AMP::Database> pelletStackSolver_db,
82 std::shared_ptr<AMP::Operator::PelletStackOperator> pelletStackOp,
83 std::shared_ptr<AMP::Operator::ColumnOperator> linearColumnOperator );
84
85
86void resetNonlinearOperator( std::shared_ptr<AMP::Operator::CoupledOperator> coupledOp );
87
88
89} // namespace AMP::Operator::PelletMechanics
90
91
92#endif
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
Definition Vector.h:60
void setReferenceTemperature(std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp, AMP::LinearAlgebra::Vector::shared_ptr initialTemperatureVec)
void applyBoundaryCorrections(std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp, AMP::LinearAlgebra::Vector::shared_ptr solVec, AMP::LinearAlgebra::Vector::shared_ptr rhsVec)
void setFrozenVectorForMaps(std::shared_ptr< AMP::Mesh::Mesh > manager, std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp)
void createVectors(std::shared_ptr< AMP::Mesh::Mesh > manager, std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp, AMP::LinearAlgebra::Vector::shared_ptr &solVec, AMP::LinearAlgebra::Vector::shared_ptr &rhsVec, AMP::LinearAlgebra::Vector::shared_ptr &scaledRhsVec)
void createTemperatureVectors(std::shared_ptr< AMP::Mesh::Mesh > manager, AMP::LinearAlgebra::Vector::shared_ptr &initialTemperatureVec, AMP::LinearAlgebra::Vector::shared_ptr &finalTemperatureVec)
std::shared_ptr< AMP::Operator::ColumnOperator > createNonlinearColumnOperator(std::shared_ptr< AMP::Operator::PelletStackOperator > pelletStackOp, std::shared_ptr< AMP::Database > global_input_db)
std::shared_ptr< ColumnOperator > createLinearColumnOperator(std::shared_ptr< ColumnOperator > nonlinearColumnOperator)
std::shared_ptr< AsyncMapColumnOperator > createMaps(std::shared_ptr< AMP::Mesh::Mesh > manager, std::shared_ptr< AMP::Database > global_input_db)
std::shared_ptr< AMP::Solver::SolverStrategy > buildStackSolver(std::shared_ptr< AMP::Database > pelletStackSolver_db, std::shared_ptr< AMP::Operator::PelletStackOperator > pelletStackOp, std::shared_ptr< AMP::Operator::ColumnOperator > linearColumnOperator)
std::shared_ptr< AMP::Operator::PelletStackOperator > createStackOperator(std::shared_ptr< AMP::Mesh::Mesh > manager, std::shared_ptr< AsyncMapColumnOperator > n2nmaps, std::shared_ptr< AMP::Database > global_input_db)
void buildPointLoadRHS(std::shared_ptr< AMP::Database > global_input_db, std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp, AMP::LinearAlgebra::Vector::shared_ptr rhsVec)
void buildColumnSolver(std::shared_ptr< AMP::Database > columnSolver_db, std::shared_ptr< AMP::Operator::ColumnOperator > linearColumnOperator, std::shared_ptr< AMP::Solver::ColumnSolver > &columnSolver)
std::shared_ptr< AMP::Operator::CoupledOperator > createCoupledOperator(std::shared_ptr< AMP::Operator::AsyncMapColumnOperator > n2nmaps, std::shared_ptr< AMP::Operator::ColumnOperator > nonlinearColumnOperator)
void setFinalTemperature(std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp, AMP::LinearAlgebra::Vector::shared_ptr finalTemperatureVec)
void resetNonlinearOperator(std::shared_ptr< AMP::Operator::CoupledOperator > coupledOp)



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:41.
Comments on this page