1#ifndef included_AMP_GradientOperator
2#define included_AMP_GradientOperator
5#include "AMP/discretization/createLibmeshElements.h"
6#include "AMP/operators/Operator.h"
28 std::string
type()
const override {
return "GradientOperator"; }
35 void reset( std::shared_ptr<const OperatorParameters> params )
override;
61 std::shared_ptr<AMP::Database>
d_db;
64 std::vector<AMP::Mesh::MeshElementID>
d_nodes;
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
std::shared_ptr< const Vector > const_shared_ptr
std::shared_ptr< AMP::Database > d_db
std::shared_ptr< AMP::LinearAlgebra::Variable > getInputVariable() const override
Return the input variable.
std::shared_ptr< AMP::LinearAlgebra::Variable > d_outputVar
std::vector< AMP::Mesh::MeshElementID > d_nodes
void reset(std::shared_ptr< const OperatorParameters > params) override
std::shared_ptr< AMP::LinearAlgebra::Variable > d_inputVar
void apply(AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr f) override
GradientOperator(void)
Default constructor.
std::string type() const override
Return the name of the operator.
std::vector< int > d_elementsPerNode
std::shared_ptr< AMP::LinearAlgebra::Variable > getOutputVariable() const override
Return the output variable.
GradientOperator(std::shared_ptr< const OperatorParameters > params)
Constructor.
virtual ~GradientOperator()
Destructor.
AMP::Discretization::createLibmeshElements d_elem
std::shared_ptr< AMP::Operator::Operator > shared_ptr