PISM, A Parallel Ice Sheet Model
stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
|
Abstract base class for functions from ice model vectors to \(\mathbb{R}\). More...
#include <IPFunctional.hh>
Public Member Functions | |
IPFunctional (std::shared_ptr< const Grid > grid) | |
virtual | ~IPFunctional () |
virtual void | valueAt (IMVecType &x, double *OUTPUT)=0 |
Computes the value of the functional at the vector x. More... | |
virtual void | gradientAt (IMVecType &x, IMVecType &gradient)=0 |
Computes the gradient of the functional at the vector x. More... | |
Protected Attributes | |
std::shared_ptr< const Grid > | m_grid |
fem::ElementIterator | m_element_index |
fem::Q1Element2 | m_element |
Private Member Functions | |
IPFunctional (IPFunctional const &) | |
IPFunctional & | operator= (IPFunctional const &) |
Abstract base class for functions from ice model vectors to \(\mathbb{R}\).
Inverse problems frequently involve minimizing a functional, such such as the misfit
\[ J(u) = \int_\Omega |u-u_{\rm obs}|^2 \]
between observed ( \(u_{\rm obs}\)) and modeled ( \(u\)) surface velocities. Subclasses of IPFunctional define such maps, and permit computation of their gradients.
Definition at line 41 of file IPFunctional.hh.