PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
pism::inverse::IPFunctional< IMVecType > Class Template Referenceabstract

Abstract base class for functions from ice model vectors to \(\mathbb{R}\). More...

#include <IPFunctional.hh>

+ Inheritance diagram for pism::inverse::IPFunctional< IMVecType >:

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 Gridm_grid
 
fem::ElementIterator m_element_index
 
fem::Q1Element2 m_element
 

Private Member Functions

 IPFunctional (IPFunctional const &)
 
IPFunctionaloperator= (IPFunctional const &)
 

Detailed Description

template<class IMVecType>
class pism::inverse::IPFunctional< IMVecType >

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.


The documentation for this class was generated from the following file: