2#ifndef included_AMP_TractionBoundaryOperator
3#define included_AMP_TractionBoundaryOperator
5#include "AMP/operators/boundary/BoundaryOperator.h"
6#include "AMP/operators/boundary/libmesh/TractionBoundaryOperatorParameters.h"
14 std::shared_ptr<const TractionBoundaryOperatorParameters> params );
18 std::string
type()
const override {
return "TractionBoundaryOperator"; }
28 std::shared_ptr<AMP::LinearAlgebra::Variable>
var );
32 std::shared_ptr<AMP::LinearAlgebra::Variable>
d_var;
37 std::vector<AMP::Mesh::MeshElementID>
d_nodeID;
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
std::shared_ptr< const Vector > const_shared_ptr
std::shared_ptr< AMP::Operator::Operator > shared_ptr
virtual ~TractionBoundaryOperator()
void apply(AMP::LinearAlgebra::Vector::const_shared_ptr, AMP::LinearAlgebra::Vector::shared_ptr f) override
TractionBoundaryOperator(std::shared_ptr< const TractionBoundaryOperatorParameters > params)
AMP::LinearAlgebra::Vector::shared_ptr mySubsetVector(AMP::LinearAlgebra::Vector::shared_ptr vec, std::shared_ptr< AMP::LinearAlgebra::Variable > var)
std::vector< double > d_volumeElements
std::string type() const override
Return the name of the operator.
void addRHScorrection(AMP::LinearAlgebra::Vector::shared_ptr rhs) override
std::vector< unsigned int > d_sideNumbers
std::vector< double > d_traction
AMP::LinearAlgebra::Vector::shared_ptr d_correction
std::vector< AMP::Mesh::MeshElementID > d_nodeID
std::shared_ptr< AMP::LinearAlgebra::Variable > d_var