mango::algorithm_properties Struct Reference

Some properties of each algorithm that MANGO is aware of. More...

#include <mango.hpp>

Public Attributes

std::string name
 A short string with the algorithm's name, e.g. 'petsc_pounders' or 'hopspack'. More...
 
package_type package
 The optimization library that the algorithm belongs to. More...
 
bool least_squares
 Whether or not the algorithm assumes the objective function has least-squares form. More...
 
bool uses_derivatives
 Whether the algorithm requires derivatives of the objective function or residuals to be supplied. More...
 
bool parallel
 Whether the algorithm can support concurrent evaluations of the objective function. Any algorithm that uses derivatives is parallel in this sense, because finite difference derivatives can be computed using concurrent function evaluations. More...
 
bool allows_bound_constraints
 Whether the algorithm allows maximum and minimum values (a.k.a. box constraints) to be imposed on the independent variables. More...
 
bool requires_bound_constraints
 Whether the algorithm requires maximum and minimum values (a.k.a. box constraints) to be imposed on the independent variables. More...
 

Detailed Description

Some properties of each algorithm that MANGO is aware of.

Definition at line 58 of file mango.hpp.

Member Data Documentation

◆ allows_bound_constraints

bool mango::algorithm_properties::allows_bound_constraints

Whether the algorithm allows maximum and minimum values (a.k.a. box constraints) to be imposed on the independent variables.

Definition at line 64 of file mango.hpp.

◆ least_squares

bool mango::algorithm_properties::least_squares

Whether or not the algorithm assumes the objective function has least-squares form.

Definition at line 61 of file mango.hpp.

◆ name

std::string mango::algorithm_properties::name

A short string with the algorithm's name, e.g. 'petsc_pounders' or 'hopspack'.

Definition at line 59 of file mango.hpp.

◆ package

package_type mango::algorithm_properties::package

The optimization library that the algorithm belongs to.

Definition at line 60 of file mango.hpp.

◆ parallel

bool mango::algorithm_properties::parallel

Whether the algorithm can support concurrent evaluations of the objective function. Any algorithm that uses derivatives is parallel in this sense, because finite difference derivatives can be computed using concurrent function evaluations.

Definition at line 63 of file mango.hpp.

◆ requires_bound_constraints

bool mango::algorithm_properties::requires_bound_constraints

Whether the algorithm requires maximum and minimum values (a.k.a. box constraints) to be imposed on the independent variables.

Definition at line 65 of file mango.hpp.

◆ uses_derivatives

bool mango::algorithm_properties::uses_derivatives

Whether the algorithm requires derivatives of the objective function or residuals to be supplied.

Definition at line 62 of file mango.hpp.


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