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 | List of all members
pism::inverse::IPInnerProductFunctional< IMVecType > Class Template Referenceabstract

Abstract base class for IPFunctionals arising from an inner product. More...

#include <IPFunctional.hh>

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

Public Member Functions

 IPInnerProductFunctional (std::shared_ptr< const Grid > grid)
 
virtual void dot (IMVecType &a, IMVecType &b, double *OUTPUT)=0
 Computes the inner product \(Q(a, b)\). More...
 
virtual void interior_product (IMVecType &x, IMVecType &y)
 Computes the interior product of a vector with the IPInnerProductFunctional's underlying bilinear form. More...
 
- Public Member Functions inherited from pism::inverse::IPFunctional< IMVecType >
 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...
 

Additional Inherited Members

- Protected Attributes inherited from pism::inverse::IPFunctional< IMVecType >
std::shared_ptr< const Gridm_grid
 
fem::ElementIterator m_element_index
 
fem::Q1Element2 m_element
 

Detailed Description

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

Abstract base class for IPFunctionals arising from an inner product.

Frequently functionals have the structure

\[ J(u) = Q(u, u) \]

where \(Q\) is a symmetric, non-negative definite, bilinear form. Certain minimization algorithms only apply to such functionals, which should subclass from IPInnerProductFunctional.

Definition at line 94 of file IPFunctional.hh.


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