Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
MittelmannDistCntrlNeumB3 Class Reference

Class implementating Example 6. More...

#include <MittelmannDistCntrlNeumB.hpp>

Inheritance diagram for MittelmannDistCntrlNeumB3:
MittelmannDistCntrlNeumBBase RegisteredTNLP Ipopt::TNLP Ipopt::ReferencedObject

List of all members.

Public Member Functions

 MittelmannDistCntrlNeumB3 ()
virtual ~MittelmannDistCntrlNeumB3 ()
virtual bool InitializeProblem (Index N)
 Initialize internal parameters, where N is a parameter determining the problme size.
- Public Member Functions inherited from MittelmannDistCntrlNeumBBase
 MittelmannDistCntrlNeumBBase ()
 Constructor.
virtual ~MittelmannDistCntrlNeumBBase ()
 Default destructor.
virtual bool get_scaling_parameters (Number &obj_scaling, bool &use_x_scaling, Index n, Number *x_scaling, bool &use_g_scaling, Index m, Number *g_scaling)
 Method for returning scaling parameters.
virtual bool get_nlp_info (Index &n, Index &m, Index &nnz_jac_g, Index &nnz_h_lag, IndexStyleEnum &index_style)
 Method to return some info about the nlp.
virtual bool get_bounds_info (Index n, Number *x_l, Number *x_u, Index m, Number *g_l, Number *g_u)
 Method to return the bounds for my problem.
virtual bool get_starting_point (Index n, bool init_x, Number *x, bool init_z, Number *z_L, Number *z_U, Index m, bool init_lambda, Number *lambda)
 Method to return the starting point for the algorithm.
virtual bool eval_f (Index n, const Number *x, bool new_x, Number &obj_value)
 Method to return the objective value.
virtual bool eval_grad_f (Index n, const Number *x, bool new_x, Number *grad_f)
 Method to return the gradient of the objective.
virtual bool eval_g (Index n, const Number *x, bool new_x, Index m, Number *g)
 Method to return the constraint residuals.
virtual bool eval_jac_g (Index n, const Number *x, bool new_x, Index m, Index nele_jac, Index *iRow, Index *jCol, Number *values)
 Method to return: 1) The structure of the jacobian (if "values" is NULL) 2) The values of the jacobian (if "values" is not NULL)
virtual bool eval_h (Index n, const Number *x, bool new_x, Number obj_factor, Index m, const Number *lambda, bool new_lambda, Index nele_hess, Index *iRow, Index *jCol, Number *values)
 Method to return: 1) The structure of the hessian of the lagrangian (if "values" is NULL) 2) The values of the hessian of the lagrangian (if "values" is not NULL)
virtual void finalize_solution (SolverReturn status, Index n, const Number *x, const Number *z_L, const Number *z_U, Index m, const Number *g, const Number *lambda, Number obj_value, const IpoptData *ip_data, IpoptCalculatedQuantities *ip_cq)
 This method is called after the optimization, and could write an output file with the optimal profiles.

Protected Member Functions

virtual Number y_d_cont (Number x1, Number x2) const
 Profile function for initial y.
virtual Number fint_cont (Number x1, Number x2, Number y, Number u) const
 Integrant in objective function.
virtual Number fint_cont_dy (Number x1, Number x2, Number y, Number u) const
 First partial derivative of fint_cont w.r.t.
virtual Number fint_cont_du (Number x1, Number x2, Number y, Number u) const
 First partial derivative of fint_cont w.r.t.
virtual Number fint_cont_dydy (Number x1, Number x2, Number y, Number u) const
 Second partial derivative of fint_cont w.r.t.
virtual bool fint_cont_dydy_alwayszero () const
 returns true if second partial derivative of fint_cont w.r.t.
virtual Number fint_cont_dudu (Number x1, Number x2, Number y, Number u) const
 Second partial derivative of fint_cont w.r.t.
virtual bool fint_cont_dudu_alwayszero () const
 returns true if second partial derivative of fint_cont w.r.t.
virtual Number fint_cont_dydu (Number x1, Number x2, Number y, Number u) const
 Second partial derivative of fint_cont w.r.t.
virtual bool fint_cont_dydu_alwayszero () const
 returns true if second partial derivative of fint_cont w.r.t.
virtual Number d_cont (Number x1, Number x2, Number y, Number u) const
 Forcing function for the elliptic equation.
virtual Number d_cont_dy (Number x1, Number x2, Number y, Number u) const
 First partial derivative of forcing function w.r.t.
virtual Number d_cont_du (Number x1, Number x2, Number y, Number u) const
 First partial derivative of forcing function w.r.t.
virtual Number d_cont_dydy (Number x1, Number x2, Number y, Number u) const
 Second partial derivative of forcing function w.r.t y,y.
virtual bool d_cont_dydy_alwayszero () const
 returns true if second partial derivative of d_cont w.r.t.
virtual Number d_cont_dudu (Number x1, Number x2, Number y, Number u) const
 Second partial derivative of forcing function w.r.t.
virtual bool d_cont_dudu_alwayszero () const
 returns true if second partial derivative of d_cont w.r.t.
virtual Number d_cont_dydu (Number x1, Number x2, Number y, Number u) const
 Second partial derivative of forcing function w.r.t.
virtual bool d_cont_dydu_alwayszero () const
 returns true if second partial derivative of d_cont w.r.t.
- Protected Member Functions inherited from MittelmannDistCntrlNeumBBase
void SetBaseParameters (Index N, Number lb_y, Number ub_y, Number lb_u, Number ub_u, Number b_0j, Number b_1j, Number b_i0, Number b_i1, Number u_init)
 Method for setting the internal parameters that define the problem.

Private Member Functions

Number a (Number x1, Number x2) const
hide implicitly defined contructors copy operators
 MittelmannDistCntrlNeumB3 (const MittelmannDistCntrlNeumB3 &)
MittelmannDistCntrlNeumB3operator= (const MittelmannDistCntrlNeumB3 &)

Private Attributes

const Number pi_
 Value of pi (made available for convenience)
const Number M_
const Number K_
const Number b_

Detailed Description

Class implementating Example 6.

Definition at line 557 of file MittelmannDistCntrlNeumB.hpp.


Constructor & Destructor Documentation

MittelmannDistCntrlNeumB3::MittelmannDistCntrlNeumB3 ( )
inline

Definition at line 560 of file MittelmannDistCntrlNeumB.hpp.

virtual MittelmannDistCntrlNeumB3::~MittelmannDistCntrlNeumB3 ( )
inlinevirtual

Definition at line 568 of file MittelmannDistCntrlNeumB.hpp.

MittelmannDistCntrlNeumB3::MittelmannDistCntrlNeumB3 ( const MittelmannDistCntrlNeumB3 )
private

Member Function Documentation

virtual bool MittelmannDistCntrlNeumB3::InitializeProblem ( Index  N)
inlinevirtual

Initialize internal parameters, where N is a parameter determining the problme size.

This returns false, if N has an invalid value.

Implements RegisteredTNLP.

Definition at line 571 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::y_d_cont ( Number  x1,
Number  x2 
) const
inlineprotectedvirtual

Profile function for initial y.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 592 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::fint_cont ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Integrant in objective function.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 597 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::fint_cont_dy ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

First partial derivative of fint_cont w.r.t.

y

Implements MittelmannDistCntrlNeumBBase.

Definition at line 602 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::fint_cont_du ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

First partial derivative of fint_cont w.r.t.

u

Implements MittelmannDistCntrlNeumBBase.

Definition at line 608 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::fint_cont_dydy ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Second partial derivative of fint_cont w.r.t.

y,y

Implements MittelmannDistCntrlNeumBBase.

Definition at line 613 of file MittelmannDistCntrlNeumB.hpp.

virtual bool MittelmannDistCntrlNeumB3::fint_cont_dydy_alwayszero ( ) const
inlineprotectedvirtual

returns true if second partial derivative of fint_cont w.r.t.

y,y is always zero.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 619 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::fint_cont_dudu ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Second partial derivative of fint_cont w.r.t.

u,u

Implements MittelmannDistCntrlNeumBBase.

Definition at line 624 of file MittelmannDistCntrlNeumB.hpp.

virtual bool MittelmannDistCntrlNeumB3::fint_cont_dudu_alwayszero ( ) const
inlineprotectedvirtual

returns true if second partial derivative of fint_cont w.r.t.

u,u is always zero.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 630 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::fint_cont_dydu ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Second partial derivative of fint_cont w.r.t.

y,u

Implements MittelmannDistCntrlNeumBBase.

Definition at line 635 of file MittelmannDistCntrlNeumB.hpp.

virtual bool MittelmannDistCntrlNeumB3::fint_cont_dydu_alwayszero ( ) const
inlineprotectedvirtual

returns true if second partial derivative of fint_cont w.r.t.

y,u is always zero.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 641 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::d_cont ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Forcing function for the elliptic equation.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 646 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::d_cont_dy ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

First partial derivative of forcing function w.r.t.

y

Implements MittelmannDistCntrlNeumBBase.

Definition at line 651 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::d_cont_du ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

First partial derivative of forcing function w.r.t.

u

Implements MittelmannDistCntrlNeumBBase.

Definition at line 656 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::d_cont_dydy ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Second partial derivative of forcing function w.r.t y,y.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 661 of file MittelmannDistCntrlNeumB.hpp.

virtual bool MittelmannDistCntrlNeumB3::d_cont_dydy_alwayszero ( ) const
inlineprotectedvirtual

returns true if second partial derivative of d_cont w.r.t.

y,y is always zero.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 667 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::d_cont_dudu ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Second partial derivative of forcing function w.r.t.

u,u

Implements MittelmannDistCntrlNeumBBase.

Definition at line 672 of file MittelmannDistCntrlNeumB.hpp.

virtual bool MittelmannDistCntrlNeumB3::d_cont_dudu_alwayszero ( ) const
inlineprotectedvirtual

returns true if second partial derivative of d_cont w.r.t.

y,y is always zero.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 678 of file MittelmannDistCntrlNeumB.hpp.

virtual Number MittelmannDistCntrlNeumB3::d_cont_dydu ( Number  x1,
Number  x2,
Number  y,
Number  u 
) const
inlineprotectedvirtual

Second partial derivative of forcing function w.r.t.

y,u

Implements MittelmannDistCntrlNeumBBase.

Definition at line 683 of file MittelmannDistCntrlNeumB.hpp.

virtual bool MittelmannDistCntrlNeumB3::d_cont_dydu_alwayszero ( ) const
inlineprotectedvirtual

returns true if second partial derivative of d_cont w.r.t.

y,u is always zero.

Implements MittelmannDistCntrlNeumBBase.

Definition at line 689 of file MittelmannDistCntrlNeumB.hpp.

MittelmannDistCntrlNeumB3& MittelmannDistCntrlNeumB3::operator= ( const MittelmannDistCntrlNeumB3 )
private
Number MittelmannDistCntrlNeumB3::a ( Number  x1,
Number  x2 
) const
inlineprivate

Definition at line 708 of file MittelmannDistCntrlNeumB.hpp.


Member Data Documentation

const Number MittelmannDistCntrlNeumB3::pi_
private

Value of pi (made available for convenience)

Definition at line 700 of file MittelmannDistCntrlNeumB.hpp.

const Number MittelmannDistCntrlNeumB3::M_
private

Definition at line 703 of file MittelmannDistCntrlNeumB.hpp.

const Number MittelmannDistCntrlNeumB3::K_
private

Definition at line 704 of file MittelmannDistCntrlNeumB.hpp.

const Number MittelmannDistCntrlNeumB3::b_
private

Definition at line 705 of file MittelmannDistCntrlNeumB.hpp.


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