alpaqa dll
Nonconvex constrained optimization
Loading...
Searching...
No Matches
CUTEstLoader Class Reference

Detailed Description

Definition at line 47 of file cutest-loader.cpp.

Collaboration diagram for CUTEstLoader:

Classes

struct  ConstrFuncs

Public Types

using Box = alpaqa::Box<config_t>
using logical_vec = Eigen::VectorX<logical>
 Pointers to loaded problem functions.

Public Member Functions

 CUTEstLoader (const char *so_fname, const char *outsdif_fname, DynamicLoadFlags dl_flags)
void setup_problem (rvec x0, rvec y0, Box &C, Box &D)
std::string get_name ()
void get_report (double *calls, double *time)

Public Attributes

std::shared_ptr< void > so_handle
 dlopen handle to shared library
cleanup_t cleanup_outsdif
 Responsible for closing the OUTSDIF.d file.
cleanup_t cutest_terminate
 Responsible for calling CUTEST_xterminate.
integer funit = 42
 Fortran Unit Number for OUTSDIF.d file.
integer iout = 6
 Fortran Unit Number for standard output.
integer io_buffer = 11
 Fortran Unit Number for internal IO.
integer nvar
 Number of decision variabls.
integer ncon
 Number of constraints.
ConstrFuncs funcs
logical_vec equatn
 whether the constraint is an equality
logical_vec linear
 whether the constraint is linear
vec work
vec work2
 work vectors

Private Types

using cleanup_t = std::shared_ptr<void>
using integer = cutest::integer
using logical = cutest::logical

Private Member Functions

template<class F>
cleanup_t cleanup (F &&func)
template<class F>
auto load () -> F::signature_t *
template<class F, class... Args>
decltype(auto) call (Args &&...args)
cleanup_t load_outsdif (const char *outsdif_fname)
cleanup_t terminator ()

Class Documentation

◆ alpaqa::CUTEstLoader::ConstrFuncs

struct alpaqa::CUTEstLoader::ConstrFuncs
Collaboration diagram for CUTEstLoader::ConstrFuncs:
Class Members
signature_t * cfn
signature_t * cofg
signature_t * ccfg
signature_t * clfg
signature_t * cjprod
signature_t * ccifg
signature_t * cigr
signature_t * cdimsj
signature_t * csjp
signature_t * ccfsg
signature_t * cdh
signature_t * cdimsh
signature_t * cshp
signature_t * csh
signature_t * chprod

Member Typedef Documentation

◆ Box

using Box = alpaqa::Box<config_t>

Definition at line 50 of file cutest-loader.cpp.

◆ cleanup_t

using cleanup_t = std::shared_ptr<void>
private

Definition at line 53 of file cutest-loader.cpp.

◆ integer

using integer = cutest::integer
private

Definition at line 60 of file cutest-loader.cpp.

◆ logical

using logical = cutest::logical
private

Definition at line 61 of file cutest-loader.cpp.

◆ logical_vec

using logical_vec = Eigen::VectorX<logical>

Pointers to loaded problem functions.

Definition at line 232 of file cutest-loader.cpp.

Constructor & Destructor Documentation

◆ CUTEstLoader()

CUTEstLoader ( const char * so_fname,
const char * outsdif_fname,
DynamicLoadFlags dl_flags )
inline

Definition at line 100 of file cutest-loader.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ cleanup()

template<class F>
cleanup_t cleanup ( F && func)
inlineprivate

Definition at line 55 of file cutest-loader.cpp.

Here is the caller graph for this function:

◆ load()

template<class F>
auto load ( ) -> F::signature_t *
inlineprivate

Definition at line 64 of file cutest-loader.cpp.

Here is the caller graph for this function:

◆ call()

template<class F, class... Args>
decltype(auto) call ( Args &&... args)
inlineprivate

Definition at line 69 of file cutest-loader.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ load_outsdif()

cleanup_t load_outsdif ( const char * outsdif_fname)
inlineprivate

Definition at line 73 of file cutest-loader.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ terminator()

cleanup_t terminator ( )
inlineprivate

Definition at line 90 of file cutest-loader.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setup_problem()

void setup_problem ( rvec x0,
rvec y0,
Box & C,
Box & D )
inline

Definition at line 140 of file cutest-loader.cpp.

Here is the call graph for this function:

◆ get_name()

std::string get_name ( )
inline

Definition at line 198 of file cutest-loader.cpp.

Here is the call graph for this function:

◆ get_report()

void get_report ( double * calls,
double * time )
inline

Definition at line 208 of file cutest-loader.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ so_handle

std::shared_ptr<void> so_handle

dlopen handle to shared library

Definition at line 220 of file cutest-loader.cpp.

◆ cleanup_outsdif

cleanup_t cleanup_outsdif

Responsible for closing the OUTSDIF.d file.

Definition at line 221 of file cutest-loader.cpp.

◆ cutest_terminate

cleanup_t cutest_terminate

Responsible for calling CUTEST_xterminate.

Definition at line 222 of file cutest-loader.cpp.

◆ funit

integer funit = 42

Fortran Unit Number for OUTSDIF.d file.

Definition at line 224 of file cutest-loader.cpp.

◆ iout

integer iout = 6

Fortran Unit Number for standard output.

Definition at line 225 of file cutest-loader.cpp.

◆ io_buffer

integer io_buffer = 11

Fortran Unit Number for internal IO.

Definition at line 226 of file cutest-loader.cpp.

◆ nvar

integer nvar

Number of decision variabls.

Definition at line 228 of file cutest-loader.cpp.

◆ ncon

integer ncon

Number of constraints.

Definition at line 229 of file cutest-loader.cpp.

◆ funcs

ConstrFuncs funcs

Definition at line 230 of file cutest-loader.cpp.

◆ equatn

logical_vec equatn

whether the constraint is an equality

Definition at line 233 of file cutest-loader.cpp.

◆ linear

logical_vec linear

whether the constraint is linear

Definition at line 234 of file cutest-loader.cpp.

◆ work

vec work
mutable

Definition at line 235 of file cutest-loader.cpp.

◆ work2

vec work2

work vectors

Definition at line 235 of file cutest-loader.cpp.


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