32 #include "MeshKernel/Definitions.hpp"
33 #include "MeshKernel/Utilities/LinearAlgebra.hpp"
93 std::vector<MatrixColMajor> m_hessian;
103 return m_dimensions[dim];
113 return dim2 + m_dimensions[1] * dim3;
118 return m_hessian[dim1](dim2, dim3);
123 return m_hessian[dim1](dim2, dim3);
128 return m_hessian[dim1](dim2);
133 return m_hessian[dim];
138 return m_hessian[dim];
void resize(const UInt dim1, const UInt dim2, const UInt dim3)
Resize taking 3 parameters.
const HessianDimension & size() const
Get all the Hessian dimensions.
Definition: Hessian.hpp:106
Hessian()=default
Default constructor.
double operator()(const UInt dim1, const UInt dim2, const UInt dim3) const
Get the value of the hessian.
Definition: Hessian.hpp:116
The hessian values.
Definition: Hessian.hpp:48
std::array< UInt, 3 > HessianDimension
Array containing dimensions of the hessian.
Definition: Hessian.hpp:39
lin_alg::Matrix< double, Eigen::ColMajor > MatrixColMajor
Define column major orientation.
Definition: Hessian.hpp:42
Contains the logic of the C++ static library.
Definition: AveragingInterpolation.hpp:36
std::uint32_t UInt
Integer type used when indexing mesh graph entities.
Definition: Definitions.hpp:38
UInt get1DIndex(const UInt dim2, const UInt dim3) const
Get the 1-dimension index of.
Definition: Hessian.hpp:111
void zero()
Set all entries to zero.
const MatrixColMajor & getMatrix(const UInt dim) const
Get the matrix for a dimension.
Definition: Hessian.hpp:131