PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
Static Public Member Functions | Static Protected Member Functions | List of all members
pism::taoutil::TaoGetVariableBoundsCallback< Problem > Class Template Reference

Adaptor to connect a TAO objective function callback to a C++ object method. More...

#include <TaoUtil.hh>

Static Public Member Functions

static void connect (Tao tao, Problem &p)
 

Static Protected Member Functions

static PetscErrorCode callback (Tao tao, Vec lo, Vec hi, void *ctx)
 

Detailed Description

template<class Problem>
class pism::taoutil::TaoGetVariableBoundsCallback< Problem >

Adaptor to connect a TAO objective function callback to a C++ object method.

The TAO library interfaces with user code via C-style callback functions. This class makes it convenient to associate a TAO VariableBounds callback with a C++ object method. To assign

void MyObject::getVariableBounds(Tao tao,Vec lo, Vec hi);

as the objective function to a Tao tao,

MyObject obj;
static void connect(Tao tao, Problem &p)
Definition: TaoUtil.hh:275

The method name getVariableBounds for the callback is hard-coded. See TaoObjGradCallback for a technique to allow the method name to be specified (at the expense of a little more cumbersome code).

Definition at line 273 of file TaoUtil.hh.


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