1#ifndef included_AMP_CoupledOperator
2#define included_AMP_CoupledOperator
4#include "AMP/operators/ColumnOperator.h"
5#include "AMP/operators/CoupledOperatorParameters.h"
6#include "AMP/vectors/Vector.h"
27 std::string
type()
const override {
return "CoupledOperator"; }
53 void append( std::shared_ptr<Operator>
op )
override
60 bool isValidVector( std::shared_ptr<const AMP::LinearAlgebra::Vector>
u )
override
70 std::shared_ptr<OperatorParameters>
73 std::shared_ptr<OperatorParameters> params =
nullptr )
override
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
std::shared_ptr< const Vector > const_shared_ptr
std::vector< std::shared_ptr< Operator > > d_operators
std::shared_ptr< AMP::LinearAlgebra::Variable > getOutputVariable() const override
void setFrozenGaussPointVector(AMP::LinearAlgebra::Vector::shared_ptr u)
std::shared_ptr< OperatorParameters > getParameters(const std::string &type, AMP::LinearAlgebra::Vector::const_shared_ptr u, std::shared_ptr< OperatorParameters > params=nullptr) override
void setMapOperator(std::shared_ptr< AMP::Operator::Operator > op)
bool isValidVector(std::shared_ptr< const AMP::LinearAlgebra::Vector > u) override
given a vector return whether it is valid or not
CoupledOperator(std::shared_ptr< const OperatorParameters > params)
void apply(AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr f) override
void setBVPOperator(std::shared_ptr< AMP::Operator::Operator > op)
void residual(AMP::LinearAlgebra::Vector::const_shared_ptr f, AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr r) override
std::shared_ptr< AMP::Operator::Operator > getBVPOperator()
std::string type() const override
Return the name of the operator.
virtual ~CoupledOperator()
AMP::LinearAlgebra::Vector::shared_ptr d_frozenGaussPointVector
void append(std::shared_ptr< Operator > op) override
std::shared_ptr< AMP::Operator::Operator > getMapOperator()
std::shared_ptr< AMP::Operator::Operator > shared_ptr
#define AMP_ASSERT(EXP)
Assert error.