Advanced Multi-Physics (AMP)
On-Line Documentation
Map1Dto3D.h
Go to the documentation of this file.
1#ifndef included_AMP_Map1Dto3D
2#define included_AMP_Map1Dto3D
3
4
5#include "AMP/discretization/createLibmeshElements.h"
6#include "AMP/operators/Operator.h"
7#include "AMP/operators/OperatorParameters.h"
8#include "AMP/operators/map/MapOperator.h"
9#include "AMP/operators/map/MapOperatorParameters.h"
10#include "AMP/vectors/Variable.h"
11#include "AMP/vectors/Vector.h"
12#include <memory>
13
14#include <string>
15
16namespace AMP::Operator {
17
18
25class Map1Dto3D : public MapOperator
26{
27public:
29 explicit Map1Dto3D( std::shared_ptr<const OperatorParameters> params );
30
32 virtual ~Map1Dto3D() {}
33
35 std::string type() const override { return "Map1Dto3D"; }
36
41 void reset( std::shared_ptr<const OperatorParameters> ) override;
42
51
54
57
58 std::shared_ptr<AMP::LinearAlgebra::Variable> getInputVariable() const override
59 {
60 return d_inpVariable;
61 }
62
63
64 std::shared_ptr<AMP::LinearAlgebra::Variable> getOutputVariable() const override
65 {
66 return d_outVariable;
67 }
68
69
73
74
76 size_t getNumZlocations() { return d_zLocations.size(); }
77
78
80 const auto &getZLocations() { return d_zLocations; }
81
82
88 void setZLocations( const std::vector<double> &z );
89
90
92
93
94protected:
95 std::shared_ptr<AMP::LinearAlgebra::Vector> outputVec = nullptr;
96
97 std::shared_ptr<AMP::LinearAlgebra::Variable> d_inpVariable = nullptr;
98
99 std::shared_ptr<AMP::LinearAlgebra::Variable> d_outVariable = nullptr;
100
101 std::vector<double> d_zLocations;
103 bool d_useGaussVec = false;
104
105private:
107};
108} // namespace AMP::Operator
109
110#endif
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
Definition Vector.h:60
std::shared_ptr< const Vector > const_shared_ptr
Definition Vector.h:65
void computeZNodeLocations()
This function is used to compute 1D locations from the output vector.
const auto & getZLocations()
This function returns the 1D locations stl vector.
Definition Map1Dto3D.h:80
void setZLocations(const std::vector< double > &z)
std::shared_ptr< AMP::LinearAlgebra::Vector > outputVec
Definition Map1Dto3D.h:95
std::shared_ptr< AMP::LinearAlgebra::Variable > d_outVariable
Definition Map1Dto3D.h:99
virtual ~Map1Dto3D()
De-constructor.
Definition Map1Dto3D.h:32
void apply(AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr r) override
void apply_Nodal(AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr f)
Discretization::createLibmeshElements libmeshElements
Definition Map1Dto3D.h:106
std::string type() const override
Return the name of the operator.
Definition Map1Dto3D.h:35
Map1Dto3D(std::shared_ptr< const OperatorParameters > params)
Default Constructor.
void setVector(AMP::LinearAlgebra::Vector::shared_ptr vec)
void reset(std::shared_ptr< const OperatorParameters >) override
std::shared_ptr< AMP::LinearAlgebra::Variable > d_inpVariable
Definition Map1Dto3D.h:97
std::shared_ptr< AMP::LinearAlgebra::Variable > getInputVariable() const override
Return the input variable.
Definition Map1Dto3D.h:58
size_t getNumZlocations()
This function returns the number of 1D locations.
Definition Map1Dto3D.h:76
void apply_Gauss(AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr f)
std::vector< double > d_zLocations
Definition Map1Dto3D.h:101
std::shared_ptr< AMP::LinearAlgebra::Variable > getOutputVariable() const override
Return the output variable.
Definition Map1Dto3D.h:64
std::shared_ptr< AMP::Operator::Operator > shared_ptr
Definition Operator.h:29



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