Advanced Multi-Physics (AMP)
On-Line Documentation
ManufacturedSolution.h
Go to the documentation of this file.
1#ifndef MMS_H
2#define MMS_H
3
4#include <array>
5#include <functional>
6#include <memory>
7#include <string>
8#include <valarray>
9
10
11namespace AMP {
12
13class Database;
14
15
48{
49public:
50 explicit ManufacturedSolution( std::shared_ptr<Database> db );
51
58 std::array<double, 10> evaluate( double x, double y, double z ) const;
59
61
62 size_t getNumberOfInputs() const { return d_NumberOfInputs; }
63
64 void setTricubicParams( const std::valarray<double> &cin, const std::valarray<double> &ain )
65 {
66 d_c = cin;
67 d_a = ain;
68 }
69
70 const std::string &get_name() const { return d_Name; }
71
72public:
73 const auto &getc() const { return d_c; }
74 const auto &geta() const { return d_a; }
75 const auto &geth() const { return d_h; }
76 const auto &geths() const { return d_hs; }
77
78private:
83
85
91
92 std::function<std::array<double, 10>( double, double, double, const ManufacturedSolution * )>
94
95 std::valarray<double> d_c;
96 std::valarray<double> d_a;
97
103
104 std::array<std::array<double, 3>, 3> d_h;
105 std::array<std::array<double, 3>, 3> d_hs; // symmetrized h
106
109
110 std::string d_Name;
111};
112} // namespace AMP
113#endif
std::valarray< double > d_c
std::array< std::array< double, 3 >, 3 > d_h
std::array< std::array< double, 3 >, 3 > d_hs
std::valarray< double > d_a
std::array< double, 10 > evaluate(double x, double y, double z) const
const std::string & get_name() const
void setTricubicParams(const std::valarray< double > &cin, const std::valarray< double > &ain)
std::function< std::array< double, 10 >(double, double, double, const ManufacturedSolution *)> d_functionPointer
ManufacturedSolution(std::shared_ptr< Database > db)



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