Advanced Multi-Physics (AMP)
On-Line Documentation
DiffusionLinearElement.h
Go to the documentation of this file.
1#ifndef included_AMP_DiffusionLinearElement
2#define included_AMP_DiffusionLinearElement
3
4#include <vector>
5
6#include <memory>
7
8/* AMP files */
9#include "AMP/operators/diffusion/DiffusionElement.h"
10
11namespace AMP::Operator {
12
14{
15public:
16 explicit DiffusionLinearElement( std::shared_ptr<const ElementOperationParameters> params )
17 : DiffusionElement( params ), d_elementStiffnessMatrix( nullptr )
18 {
19 d_transportAtGauss = params->d_db->getWithDefault<bool>( "TransportAtGaussPoints", true );
20 }
21
23
24 void setElementStiffnessMatrix( std::vector<std::vector<double>> &elementStiffnessMatrix )
25 {
26 d_elementStiffnessMatrix = &elementStiffnessMatrix;
27 }
28
29 void setElementVectors( std::map<std::string, std::vector<double>> vecs )
30 {
31 d_localVecs = std::move( vecs );
32 }
33
34 void apply() override;
35
36protected:
37 std::vector<std::vector<double>> *d_elementStiffnessMatrix;
38
40
41 std::map<std::string, std::vector<double>> d_localVecs;
42};
43
44
45} // namespace AMP::Operator
46
47#endif
DiffusionLinearElement(std::shared_ptr< const ElementOperationParameters > params)
void setElementVectors(std::map< std::string, std::vector< double > > vecs)
std::map< std::string, std::vector< double > > d_localVecs
void setElementStiffnessMatrix(std::vector< std::vector< double > > &elementStiffnessMatrix)
std::vector< std::vector< double > > * d_elementStiffnessMatrix



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