#include <gams.h>
Inheritance diagram for gamsFunc:


Public Member Functions | |
| gamsFunc (int n, int connr_, Pointer< gamsNLData > data_, Pointer< SparsityInfo > sparsity_=NULL) | |
| double | eval (const UserVector< double > &x) const |
| Computes the value of this function for a UserVector<double>. | |
| double | eval (const double *x) const |
| int | valgrad (double &val, UserVector< double > &g, const UserVector< double > &x) const |
| Computes the (sub)gradient and the value of this function for a UserVector<double>. | |
| int | valgrad (double &val, double *g, const double *x) const |
| void | grad (UserVector< double > &g, const UserVector< double > &x) const |
| Computes the (sub)gradient for a UserVector<double>. | |
| void | grad (dvector &g, const dvector &x) const |
| void | grad (double *g, const double *x) const |
| void | HessMult (UserVector< double > &y, const UserVector< double > &x, const UserVector< double > &z) const |
| Evaluates the product of the Hessian and a UserVector<double>. | |
| void | HessMult (dvector &y, const dvector &x, const dvector &z) const |
| void | HessMult (double *y, const double *x, const double *z) const |
| bool | is_interval_compliant () const |
| Indicates, whether the function and it's gradient can be evaluated over an interval. | |
| interval< double > | eval (const IntervalVector &x) const |
| int | valgrad (interval< double > &val, IntervalVector &y, const IntervalVector &x) const |
| void | set_curvature (CurvatureType ct) |
| CurvatureType | get_curvature () const |
| void | print (ostream &out) const |
| Print's out the dimension. | |
Private Attributes | |
| Pointer< gamsNLData > | data |
| int | connr |
| Func::CurvatureType | curv_type |
Definition at line 172 of file gams.h.
| gamsFunc::gamsFunc | ( | int | n, | |
| int | connr_, | |||
| Pointer< gamsNLData > | data_, | |||
| Pointer< SparsityInfo > | sparsity_ = NULL | |||
| ) | [inline] |
| double gamsFunc::eval | ( | const UserVector< double > & | x | ) | const [inline, virtual] |
Computes the value of this function for a UserVector<double>.
Abstract.
| x | The UserVector<double> to compute the value for. |
Implements Func.
| double gamsFunc::eval | ( | const double * | x | ) | const |
| int gamsFunc::valgrad | ( | double & | val, | |
| UserVector< double > & | g, | |||
| const UserVector< double > & | x | |||
| ) | const [inline, virtual] |
Computes the (sub)gradient and the value of this function for a UserVector<double>.
| val | The double to store the value this(x). | |
| g | The UserVector<double> to store the gradient. | |
| x | The UserVector<double> to compute the gradient and value for. |
add_grad(UserVector<double>&, const UserVector<double>&)
add_valgrad(UserVector<double>&, UserVector<double>&, const UserVector<double>&)
Reimplemented from Func.
Definition at line 191 of file gams.h.
References UserVector< Type >::dim().
Referenced by grad().
| int gamsFunc::valgrad | ( | double & | val, | |
| double * | g, | |||
| const double * | x | |||
| ) | const |
| void gamsFunc::grad | ( | UserVector< double > & | g, | |
| const UserVector< double > & | x | |||
| ) | const [inline, virtual] |
Computes the (sub)gradient for a UserVector<double>.
Abstract.
| g | The UserVector<double> to store the result in. | |
| x | The UserVector<double> to compute the gradient for. |
valgrad(double&, UserVector<double>&, const UserVector<double>&)
add_grad(UserVector<double>&, UserVector<double>&)
add_valgrad(double&, UserVector<double>&, UserVector<double>&)
Implements Func.
Definition at line 200 of file gams.h.
References UserVector< Type >::dim(), and valgrad().
| void gamsFunc::grad | ( | double * | g, | |
| const double * | x | |||
| ) | const [inline] |
| void gamsFunc::HessMult | ( | UserVector< double > & | y, | |
| const UserVector< double > & | x, | |||
| const UserVector< double > & | z | |||
| ) | const [inline, virtual] |
Evaluates the product of the Hessian and a UserVector<double>.
Abstract.
| y | The UserVector<double> to store the result in: . | |
| x | The UserVector<double> to evaluate the Hessian for. | |
| z | The UserVector<double> to multiply with the Hessian. |
Implements Func.
Definition at line 218 of file gams.h.
References UserVector< Type >::dim().
Referenced by HessMult().
| void gamsFunc::HessMult | ( | double * | y, | |
| const double * | x, | |||
| const double * | z | |||
| ) | const |
| bool gamsFunc::is_interval_compliant | ( | ) | const [inline, virtual] |
| interval<double> gamsFunc::eval | ( | const IntervalVector & | x | ) | const [virtual] |
Reimplemented from Func.
| int gamsFunc::valgrad | ( | interval< double > & | val, | |
| IntervalVector & | y, | |||
| const IntervalVector & | x | |||
| ) | const [virtual] |
Reimplemented from Func.
| void gamsFunc::set_curvature | ( | CurvatureType | ct | ) | [inline] |
| CurvatureType gamsFunc::get_curvature | ( | ) | const [inline, virtual] |
| void gamsFunc::print | ( | ostream & | out | ) | const [inline, virtual] |
Pointer<gamsNLData> gamsFunc::data [private] |
int gamsFunc::connr [private] |
Func::CurvatureType gamsFunc::curv_type [private] |
1.4.7