- Main Page
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

# Ipopt Namespace Reference

## Classes
class | AdaptiveMuUpdate
| Non-monotone mu update. More...
class | AlgorithmBuilder
| Builder to create a complete IpoptAlg object. More...
class | AlgorithmStrategyObject
| This is the base class for all algorithm strategy objects. More...
class | AugRestoSystemSolver
| Class that converts the an augmented system with compound restoration pieces into a smaller "pivoted" system to be solved with an existing AugSystemSolver. More...
class | AugSystemSolver
| Base class for Solver for the augmented system. More...
class | BacktrackingLineSearch
| General implementation of a backtracking line search. More...
class | BacktrackingLSAcceptor
| Base class for backtracking line search acceptors. More...
class | ConvergenceCheck
| Base class for checking the algorithm termination criteria. More...
class | DefaultIterateInitializer
| Class implementing the default initialization procedure (based on user options) for the iterates. More...
class | EqMultiplierCalculator
| Base Class for objects that compute estimates for the equality constraint multipliers y_c and y_d. More...
class | ExactHessianUpdater
| Implementation of the HessianUpdater for the use of exact second derivatives. More...
class | FilterEntry
| Class for one filter entry. More...
class | Filter
| Class for the filter. More...
class | FilterLSAcceptor
| Filter line search. More...
class | GradientScaling
| This class does problem scaling by setting the scaling parameters based on the maximum of the gradient at the user provided initial point. More...
class | HessianUpdater
| Abstract base class for objects responsible for updating the Hessian information. More...
class | IpoptAlgorithm
| The main ipopt algorithm class. More...
class | IpoptCalculatedQuantities
| Class for all IPOPT specific calculated quantities. More...
class | IpoptData
| Class to organize all the data required by the algorithm. More...
class | IpoptNLP
| This is the abstract base class for classes that map the traditional NLP into something that is more useful by Ipopt. More...
class | IterateInitializer
| Base class for all methods for initializing the iterates. More...
class | IteratesVector
| Specialized CompoundVector class specifically for the algorithm iterates. More...
class | IteratesVectorSpace
| Vector Space for the IteratesVector class. More...
class | IterationOutput
| Base class for objects that do the output summary per iteration. More...
class | LeastSquareMultipliers
| Class for calculator for the least-square equality constraint multipliers. More...
class | LimMemQuasiNewtonUpdater
| Implementation of the HessianUpdater for limit-memory quasi-Newton approximation of the Lagrangian Hessian. More...
class | LineSearch
| Base class for line search objects. More...
class | LoqoMuOracle
| Implementation of the LOQO formula for computing the barrier parameter. More...
class | LowRankAugSystemSolver
| Solver for the augmented system with LowRankUpdateSymMatrix Hessian matrices. More...
class | MonotoneMuUpdate
| Monotone Mu Update. More...
class | MuOracle
| Abstract Base Class for classes that are able to compute a suggested value of the barrier parameter that can be used as an oracle in the NonmontoneMuUpdate class. More...
class | MuUpdate
| Abstract Base Class for classes that implement methods for computing the barrier and fraction-to-the-boundary rule parameter for the current iteration. More...
class | NLPScalingObject
| This is the abstract base class for problem scaling. More...
class | StandardScalingBase
| This is a base class for many standard scaling techniques. More...
class | NoNLPScalingObject
| Class implementing the scaling object that doesn't to any scaling. More...
class | OptimalityErrorConvergenceCheck
| Brief Class Description. More...
class | OrigIpoptNLP
| This class maps the traditional NLP into something that is more useful by Ipopt. More...
class | OrigIterationOutput
| Class for the iteration summary output for the original NLP. More...
class | PDFullSpaceSolver
| This is the implemetation of the Primal-Dual System, using the full space approach with a direct linear solver. More...
class | PDPerturbationHandler
| Class for handling the perturbation factors delta_x, delta_s, delta_c, and delta_d in the primal dual system. More...
class | PDSystemSolver
| Pure Primal Dual System Solver Base Class. More...
class | ProbingMuOracle
| Implementation of the probing strategy for computing the barrier parameter. More...
class | QualityFunctionMuOracle
| Implementation of the probing strategy for computing the barrier parameter. More...
class | RestoFilterConvergenceCheck
| Convergence check for the restoration phase as called by the filter. More...
class | RestoIpoptNLP
| This class maps the traditional NLP into something that is more useful by Ipopt. More...
class | RestoIterateInitializer
| Class implementing the default initialization procedure (based on user options) for the iterates. More...
class | RestoIterationOutput
| Class for the iteration summary output for the restoration phase. More...
class | MinC_1NrmRestorationPhase
| Restoration Phase that minimizes the 1-norm of the constraint violation - using the interior point method (Ipopt). More...
class | RestorationPhase
| Base class for different restoration phases. More...
class | RestoRestorationPhase
| Recursive Restoration Phase for the.MinC_1NrmRestorationPhase. More...
class | StdAugSystemSolver
| Solver for the augmented system for triple type matrices. More...
class | TimingStatistics
| This class collects all timing statistics for Ipopt. More...
class | UserScaling
| This class does problem scaling by getting scaling parameters from the user (through the NLP interface). More...
class | WarmStartIterateInitializer
| Class implementing an initialization procedure for warm starts. More...
class | Ma27TSolverInterface
| Interface to the symmetric linear solver MA27, derived from SparseSymLinearSolverInterface. More...
class | Ma57TSolverInterface
| Interface to the symmetric linear solver MA57, derived from SparseSymLinearSolverInterface. More...
class | Mc19TSymScalingMethod
| Class for the method for computing scaling factors for symmetric matrices in triplet format, using MC19. More...
class | MumpsSolverInterface
| Interface to the linear solver Mumps, derived from SparseSymLinearSolverInterface. More...
class | PardisoSolverInterface
| Interface to the linear solver Pardiso, derived from SparseSymLinearSolverInterface. More...
class | SparseSymLinearSolverInterface
| Base class for interfaces to symmetric indefinite linear solvers for sparse matrices. More...
class | SymLinearSolver
| Base class for all derived symmetric linear solvers. More...
class | TAUCSSolverInterface
| Interface to the linear solver TAUCS, derived from SparseSymLinearSolverInterface. More...
class | TripletToCSRConverter
| Class for converting symmetric matrices given in triplet format to matrices in compressed sparse row (CSR) format of the upper triangual part (or, equivalently, compressed sparse column (CSC) format for the lower triangular part). More...
class | TSymLinearSolver
| General driver for linear solvers for sparse indefinite symmetric matrices. More...
class | TSymScalingMethod
| Base class for the method for computing scaling factors for symmetric matrices in triplet format. More...
class | WsmpSolverInterface
| Interface to the linear solver Wsmp, derived from SparseSymLinearSolverInterface. More...
class | AmplOptionsList
| Class for storing a number of AMPL options that should be registered to the AMPL Solver library interface. More...
class | AmplTNLP
| Ampl Interface. More...
class | AmplSuffixHandler
class | CompositeNLP
| This class creates a composite NLP from a list of NLP's. More...
class | CachedResults
| Templated class for Chached Results. More...
class | DependentResult
| Templated class which stores one entry for the CachedResult class. More...
class | IpoptException
| This is the base class for all exceptions. More...
class | Journalist
| Class responsible for all message output. More...
class | Journal
| Journal class (part of the Journalist implementation. More...
class | FileJournal
| FileJournal class. More...
class | Observer
| Slight Variation of the Observer Design Pattern. More...
class | Subject
| Slight Variation of the Observer Design Pattern (Subject part). More...
class | OptionsList
| This class stores a list of user set options. More...
class | Referencer
| Psydo-class, from which everything has to inherit that wants to use be registered as a Referencer for a ReferencedObject. More...
class | ReferencedObject
| ReferencedObject class. More...
class | RegisteredOption
| Base class for registered options. More...
class | RegisteredOptions
| Class for storing registered options. More...
class | SmartPtr
| Template class for Smart Pointers. More...
class | TaggedObject
| TaggedObject class. More...
class | TimedTask
| This class is used to collect timing information for a particular task. More...
class | IpoptApplication
| This is the main application class for making calls to Ipopt. More...
class | NLP
| Brief Class Description. More...
class | SolveStatistics
| This class collects statistics about an optimziation run, such as iteration count, final infeasibilities etc. More...
class | StdInterfaceTNLP
| Implementation of a TNLP for the Standard C interface. More...
class | TNLP
| Base class for all NLP's that use standard triplet matrix form and dense vectors. More...
class | TNLPAdapter
| This class Adapts the TNLP interface so it looks like an NLP interface. More...
class | CompoundMatrix
| Class for Matrices consisting of other matrices. More...
class | CompoundMatrixSpace
| This is the matrix space for CompoundMatrix. More...
class | CompoundSymMatrix
| Class for symmetric matrices consisting of other matrices. More...
class | CompoundSymMatrixSpace
| This is the matrix space for CompoundSymMatrix. More...
class | CompoundVector
| Class of Vectors consisting of other vectors. More...
class | CompoundVectorSpace
| This vectors space is the vector space for CompoundVector. More...
class | DenseGenMatrix
| Class for dense general matrices. More...
class | DenseGenMatrixSpace
| This is the matrix space for DenseGenMatrix. More...
class | DenseSymMatrix
| Class for dense symetrix matrices. More...
class | DenseSymMatrixSpace
| This is the matrix space for DenseSymMatrix. More...
class | DenseVector
| Dense Vector Implementation. More...
class | DenseVectorSpace
| This vectors space is the vector space for DenseVector. More...
class | DiagMatrix
| Class for diagonal matrices. More...
class | DiagMatrixSpace
| This is the matrix space for DiagMatrix. More...
class | ExpansionMatrix
| Class for expansion/projection matrices. More...
class | ExpansionMatrixSpace
| This is the matrix space for ExpansionMatrix. More...
class | IdentityMatrix
| Class for Matrices which are multiples of the identity matrix. More...
class | IdentityMatrixSpace
| This is the matrix space for IdentityMatrix. More...
class | LowRankUpdateSymMatrix
| Class for symmetric matrices, represented as low-rank updates. More...
class | LowRankUpdateSymMatrixSpace
| This is the matrix space for LowRankUpdateSymMatrix. More...
class | Matrix
| Matrix Base Class. More...
class | MatrixSpace
| MatrixSpace base class, corresponding to the Matrix base class. More...
class | MultiVectorMatrix
| Class for Matrices with few columns that consists of Vectors. More...
class | MultiVectorMatrixSpace
| This is the matrix space for MultiVectorMatrix. More...
class | ScaledMatrix
| Class for a Matrix in conjunction with its scaling factors for row and column scaling. More...
class | ScaledMatrixSpace
| This is the matrix space for ScaledMatrix. More...
class | SumMatrix
| Class for Matrices which are sum of matrices. More...
class | SumMatrixSpace
| Class for matrix space for SumMatrix. More...
class | SumSymMatrix
| Class for Matrices which are sum of symmetric matrices. More...
class | SumSymMatrixSpace
| Class for matrix space for SumSymMatrix. More...
class | SymMatrix
| This is the base class for all derived symmetric matrix types. More...
class | SymMatrixSpace
| SymMatrixSpace base class, corresponding to the SymMatrix base class. More...
class | SymScaledMatrix
| Class for a Matrix in conjunction with its scaling factors for row and column scaling. More...
class | SymScaledMatrixSpace
| This is the matrix space for SymScaledMatrix. More...
class | Vector
| Vector Base Class. More...
class | VectorSpace
| VectorSpace base class, corresponding to the Vector base class. More...
class | ZeroMatrix
| Class for Matrices with only zero entries. More...
class | ZeroMatrixSpace
| Class for matrix space for ZeroMatrix. More...
class | GenTMatrix
| Class for general matrices stored in triplet format. More...
class | GenTMatrixSpace
| This is the matrix space for a GenTMatrix with fixed sparsity structure. More...
class | SymTMatrix
| Class for symmetric matrices stored in triplet format. More...
class | SymTMatrixSpace
| This is the matrix space for a SymTMatrix with fixed sparsity structure. More...
class | TripletHelper
## Journalist Enumerations.
enum | EJournalLevel { J_INSUPPRESSIBLE = -1, J_NONE = 0, J_ERROR, J_WARNING, J_SUMMARY, J_ITERSUMMARY, J_DETAILED, J_MOREDETAILED, J_VECTOR, J_MOREVECTOR, J_MATRIX, J_MOREMATRIX, J_ALL, J_LAST_LEVEL }
| Print Level Enum. More...
enum | EJournalCategory { J_DBG = 0, J_STATISTICS, J_MAIN, J_INITIALIZATION, J_BARRIER_UPDATE, J_SOLVE_PD_SYSTEM, J_FRAC_TO_BOUND, J_LINEAR_ALGEBRA, J_LINE_SEARCH, J_HESSIAN_APPROXIMATION, J_SOLUTION, J_DOCUMENTATION, J_NLP, J_TIMING_STATISTICS, J_USER_APPLICATION, J_LAST_CATEGORY }
| Category Selection Enum. More...
## Enumerations
enum | SolverReturn { SUCCESS, MAXITER_EXCEEDED, STOP_AT_TINY_STEP, STOP_AT_ACCEPTABLE_POINT, LOCAL_INFEASIBILITY, USER_REQUESTED_STOP, DIVERGING_ITERATES, RESTORATION_FAILURE, ERROR_IN_STEP_COMPUTATION, INVALID_NUMBER_DETECTED, TOO_FEW_DEGREES_OF_FREEDOM, INTERNAL_ERROR }
| enum for the return from the optimize algorithm (obviously we need to add more) More...
## Exceptions
| DECLARE_STD_EXCEPTION (STEP_COMPUTATION_FAILED)
## Exceptions
| DECLARE_STD_EXCEPTION (RESTORATION_CONVERGED_TO_FEASIBLE_POINT)
| Exception RESTORATION_FAILED for all trouble with the restoration phase.
| DECLARE_STD_EXCEPTION (RESTORATION_FAILED)
| Exception RESTORATION_FAILED for all trouble with the restoration phase.
| DECLARE_STD_EXCEPTION (RESTORATION_MAXITER_EXCEEDED)
| Exception RESTORATION_FAILED for all trouble with the restoration phase.
| DECLARE_STD_EXCEPTION (RESTORATION_USER_STOP)
| Exception RESTORATION_FAILED for all trouble with the restoration phase.
## SmartPtr friend function declarations.
template<class U>
U * | GetRawPtr (const SmartPtr< U > &smart_ptr)
template<class U>
SmartPtr< const U > | ConstPtr (const SmartPtr< U > &smart_ptr)
template<class U>
bool | IsNull (const SmartPtr< U > &smart_ptr)
template<class U>
bool | IsValid (const SmartPtr< U > &smart_ptr)
template<class U1, class U2>
bool | operator== (const SmartPtr< U1 > &lhs, const SmartPtr< U2 > &rhs)
template<class U1, class U2>
bool | operator== (const SmartPtr< U1 > &lhs, U2 *raw_rhs)
template<class U1, class U2>
bool | operator== (U1 *lhs, const SmartPtr< U2 > &raw_rhs)
template<class U1, class U2>
bool | operator!= (const SmartPtr< U1 > &lhs, const SmartPtr< U2 > &rhs)
template<class U1, class U2>
bool | operator!= (const SmartPtr< U1 > &lhs, U2 *raw_rhs)
template<class U1, class U2>
bool | operator!= (U1 *lhs, const SmartPtr< U2 > &raw_rhs)
## Some exceptions used in multiple places
| DECLARE_STD_EXCEPTION (LOCALLY_INFEASIBLE)
| DECLARE_STD_EXCEPTION (TOO_FEW_DOF)
| DECLARE_STD_EXCEPTION (TINY_STEP_DETECTED)
| DECLARE_STD_EXCEPTION (ACCEPTABLE_POINT_REACHED)
| DECLARE_STD_EXCEPTION (FEASIBILITY_PROBLEM_SOLVED)
| DECLARE_STD_EXCEPTION (INVALID_WARMSTART)
| DECLARE_STD_EXCEPTION (INTERNAL_ABORT)
| DECLARE_STD_EXCEPTION (FAILED_INITIALIZATION)
| Exception FAILED_INITIALIZATION for problem during initialization of a strategy object (or other problems).
## Typedefs
typedef double | Number
| Type of all numbers.
typedef int | Index
| Type of all indices of vectors, matrices etc.
typedef int | Int
| Type of default integer.
## Enumerations
enum | ENormType { NORM_1 = 0, NORM_2, NORM_MAX }
| Norm types. More...
enum | HessianApproximationType { EXACT = 0, LIMITED_MEMORY }
| enumeration for the Hessian information type. More...
enum | ESymSolverStatus { SYMSOLVER_SUCCESS, SYMSOLVER_SINGULAR, SYMSOLVER_WRONG_INERTIA, SYMSOLVER_CALL_AGAIN, SYMSOLVER_FATAL_ERROR }
| Enum to report outcome of a linear solve. More...
enum | RegisteredOptionType { OT_Number, OT_Integer, OT_String, OT_Unknown }
enum | ApplicationReturnStatus { Solve_Succeeded = 0, Solved_To_Acceptable_Level = 1, Infeasible_Problem_Detected = 2, Search_Direction_Becomes_Too_Small = 3, Diverging_Iterates = 4, User_Requested_Stop = 5, Maximum_Iterations_Exceeded = -1, Restoration_Failed = -2, Error_In_Step_Computation = -3, Not_Enough_Degrees_Of_Freedom = -10, Invalid_Problem_Definition = -11, Invalid_Option = -12, Invalid_Number_Detected = -13, Unrecoverable_Exception = -100, NonIpopt_Exception_Thrown = -101, Insufficient_Memory = -102, Internal_Error = -199 }
| Return codes for the Optimize call for an application. More...
enum | AlgorithmMode { RegularMode = 0, RestorationPhaseMode = 1 }
| enum to indicate the mode in which the algorithm is More...
## Functions
void | RegisterOptions_Algorithm (const SmartPtr< RegisteredOptions > &roptions)
| DECLARE_STD_EXCEPTION (FATAL_ERROR_IN_LINEAR_SOLVER)
void | RegisterOptions_LinearSolvers (const SmartPtr< RegisteredOptions > &roptions)
| DECLARE_STD_EXCEPTION (ERROR_IN_LINEAR_SCALING_METHOD)
| DECLARE_STD_EXCEPTION (OPTION_INVALID)
| Exception that can be used to indicate errors with options.
template<class U1, class U2>
bool | ComparePointers (const U1 *lhs, const U2 *rhs)
ipfint | Max (ipfint a, ipfint b)
ipfint | Min (ipfint a, ipfint b)
Number | Max (Number a, Number b)
Number | Max (Number a, Number b, Number c)
Number | Max (Number a, Number b, Number c, Number d)
Number | Min (Number a, Number b)
Number | Min (Number a, Number b, Number c)
Number | Min (Number a, Number b, Number c, Number d)
bool | IsFiniteNumber (Number val)
| Function returning true iff the argument is a valid double number (not NaN or Inf).
void | RegisterOptions_Interfaces (const SmartPtr< RegisteredOptions > &roptions)
| DECLARE_STD_EXCEPTION (IPOPT_APPLICATION_ERROR)
| DECLARE_STD_EXCEPTION (INVALID_STDINTERFACE_NLP)
| Declare excpetion that is thrown when invalid NLP data is provided.
Number | IpBlasDdot (Index size, const Number *x, Index incX, const Number *y, Index incY)
| Wrapper for BLAS function DDOT.
Number | IpBlasDnrm2 (Index size, const Number *x, Index incX)
| Wrapper for BLAS function DNRM2.
Number | IpBlasDasum (Index size, const Number *x, Index incX)
| Wrapper for BLAS function DASUM.
Index | IpBlasIdamax (Index size, const Number *x, Index incX)
| Wrapper for BLAS function DASUM.
void | IpBlasDcopy (Index size, const Number *x, Index incX, Number *y, Index incY)
| Wrapper for BLAS subroutine DCOPY.
void | IpBlasDaxpy (Index size, Number alpha, const Number *x, Index incX, Number *y, Index incY)
| Wrapper for BLAS subroutine DAXPY.
void | IpBlasDscal (Index size, Number alpha, Number *x, Index incX)
| Wrapper for BLAS subroutine DSCAL.
void | IpBlasDgemv (bool trans, Index nRows, Index nCols, Number alpha, const Number *A, Index ldA, const Number *x, Index incX, Number beta, Number *y, Index incY)
| Wrapper for BLAS subroutine DGEMV.
void | IpBlasDsymv (Index n, Number alpha, const Number *A, Index ldA, const Number *x, Index incX, Number beta, Number *y, Index incY)
| Wrapper for BLAS subroutine DSYMV.
void | IpBlasDgemm (bool transa, bool transb, Index m, Index n, Index k, Number alpha, const Number *A, Index ldA, const Number *B, Index ldB, Number beta, Number *C, Index ldC)
| Wrapper for BLAS subroutine DGEMM.
void | IpBlasDsyrk (bool trans, Index ndim, Index nrank, Number alpha, const Number *A, Index ldA, Number beta, Number *C, Index ldC)
| Wrapper for BLAS subroutine DSYRK.
void | IpBlasDtrsm (bool trans, Index ndim, Index nrhs, Number alpha, const Number *A, Index ldA, Number *B, Index ldB)
| Wrapper for BLAS subroutine DTRSM.
| DECLARE_STD_EXCEPTION (LAPACK_NOT_INCLUDED)
void | IpLapackDpotrs (Index ndim, Index nrhs, const Number *a, Index lda, Number *b, Index ldb)
| Wrapper for LAPACK subroutine DPOTRS.
void | IpLapackDpotrf (Index ndim, Number *a, Index lda, Index &info)
| Wrapper for LAPACK subroutine DPOTRF.
void | IpLapackDsyev (bool compute_eigenvectors, Index ndim, Number *a, Index lda, Number *w, Index &info)
| Wrapper for LAPACK subroutine DSYEV.

## Typedef Documentation

typedef double Ipopt::Number

Type of all numbers.

Definition at line 15 of file IpTypes.hpp.

typedef int Ipopt::Index

Type of all indices of vectors, matrices etc.

Definition at line 17 of file IpTypes.hpp.

typedef int Ipopt::Int

Type of default integer.

Definition at line 19 of file IpTypes.hpp.

## Enumeration Type Documentation

enum Ipopt::ENormType

Norm types.

Enumerator:

  NORM_1 |
  NORM_2 |
  NORM_MAX |

Definition at line 19 of file IpIpoptCalculatedQuantities.hpp.

enum Ipopt::HessianApproximationType

enumeration for the Hessian information type.

Enumerator:

  EXACT |
  LIMITED_MEMORY |

Definition at line 20 of file IpOrigIpoptNLP.hpp.

enum Ipopt::ESymSolverStatus

Enum to report outcome of a linear solve.

Enumerator:

  SYMSOLVER_SUCCESS | Successful solve.
  SYMSOLVER_SINGULAR | Matrix seems to be singular; solve was aborted.
  SYMSOLVER_WRONG_INERTIA | The number of negative eigenvalues is not correct.
  SYMSOLVER_CALL_AGAIN | Call the solver interface again after the matrix values have been restored.
  SYMSOLVER_FATAL_ERROR | Unrecoverable error in linear solver occured. The optimization will be aborted.

Definition at line 21 of file IpSymLinearSolver.hpp.

enum Ipopt::EJournalLevel

Print Level Enum.

Enumerator:

  J_INSUPPRESSIBLE |
  J_NONE |
  J_ERROR |
  J_WARNING |
  J_SUMMARY |
  J_ITERSUMMARY |
  J_DETAILED |
  J_MOREDETAILED |
  J_VECTOR |
  J_MOREVECTOR |
  J_MATRIX |
  J_MOREMATRIX |
  J_ALL |
  J_LAST_LEVEL |

Definition at line 40 of file IpJournalist.hpp.

enum Ipopt::EJournalCategory

Category Selection Enum.

Enumerator:

  J_DBG |
  J_STATISTICS |
  J_MAIN |
  J_INITIALIZATION |
  J_BARRIER_UPDATE |
  J_SOLVE_PD_SYSTEM |
  J_FRAC_TO_BOUND |
  J_LINEAR_ALGEBRA |
  J_LINE_SEARCH |
  J_HESSIAN_APPROXIMATION |
  J_SOLUTION |
  J_DOCUMENTATION |
  J_NLP |
  J_TIMING_STATISTICS |
  J_USER_APPLICATION | This can be used by the user's application.
  J_LAST_CATEGORY |

Definition at line 58 of file IpJournalist.hpp.

enum Ipopt::RegisteredOptionType

Enumerator:

  OT_Number |
  OT_Integer |
  OT_String |
  OT_Unknown |

Definition at line 22 of file IpRegOptions.hpp.

enum Ipopt::SolverReturn

enum for the return from the optimize algorithm (obviously we need to add more)

Enumerator:

  SUCCESS |
  MAXITER_EXCEEDED |
  STOP_AT_TINY_STEP |
  STOP_AT_ACCEPTABLE_POINT |
  LOCAL_INFEASIBILITY |
  USER_REQUESTED_STOP |
  DIVERGING_ITERATES |
  RESTORATION_FAILURE |
  ERROR_IN_STEP_COMPUTATION |
  INVALID_NUMBER_DETECTED |
  TOO_FEW_DEGREES_OF_FREEDOM |
  INTERNAL_ERROR |

Definition at line 22 of file IpAlgTypes.hpp.

enum Ipopt::ApplicationReturnStatus

Return codes for the Optimize call for an application.

Enumerator:

  Solve_Succeeded |
  Solved_To_Acceptable_Level |
  Infeasible_Problem_Detected |
  Search_Direction_Becomes_Too_Small |
  Diverging_Iterates |
  User_Requested_Stop |
  Maximum_Iterations_Exceeded |
  Restoration_Failed |
  Error_In_Step_Computation |
  Not_Enough_Degrees_Of_Freedom |
  Invalid_Problem_Definition |
  Invalid_Option |
  Invalid_Number_Detected |
  Unrecoverable_Exception |
  NonIpopt_Exception_Thrown |
  Insufficient_Memory |
  Internal_Error |

Definition at line 33 of file IpReturnCodes.hpp.

enum Ipopt::AlgorithmMode

enum to indicate the mode in which the algorithm is

Enumerator:

  RegularMode |
  RestorationPhaseMode |

Definition at line 57 of file IpReturnCodes.hpp.

## Function Documentation

void Ipopt::RegisterOptions_Algorithm | ( | const SmartPtr< RegisteredOptions > & | roptions | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | STEP_COMPUTATION_FAILED |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | RESTORATION_CONVERGED_TO_FEASIBLE_POINT |  | ) |

Exception RESTORATION_FAILED for all trouble with the restoration phase.

Ipopt::DECLARE_STD_EXCEPTION | ( | RESTORATION_FAILED |  | ) |

Exception RESTORATION_FAILED for all trouble with the restoration phase.

Ipopt::DECLARE_STD_EXCEPTION | ( | RESTORATION_MAXITER_EXCEEDED |  | ) |

Exception RESTORATION_FAILED for all trouble with the restoration phase.

Ipopt::DECLARE_STD_EXCEPTION | ( | RESTORATION_USER_STOP |  | ) |

Exception RESTORATION_FAILED for all trouble with the restoration phase.

Ipopt::DECLARE_STD_EXCEPTION | ( | FATAL_ERROR_IN_LINEAR_SOLVER |  | ) |

void Ipopt::RegisterOptions_LinearSolvers | ( | const SmartPtr< RegisteredOptions > & | roptions | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | ERROR_IN_LINEAR_SCALING_METHOD |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | OPTION_INVALID |  | ) |

Exception that can be used to indicate errors with options.

template<class U>

U * Ipopt::GetRawPtr | ( | const SmartPtr< U > & | smart_ptr | ) |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 577 of file IpSmartPtr.hpp.

References DBG_START_FUN, and Ipopt::SmartPtr< T >::ptr_.

Referenced by Ipopt::CompoundVector::Comp(), Ipopt::CompoundSymMatrix::Comp(), Ipopt::CompoundMatrix::Comp(), Ipopt::CompoundVector::ConstComp(), Ipopt::CompoundSymMatrix::ConstComp(), Ipopt::CompoundMatrix::ConstComp(), ConstPtr(), Ipopt::MultiVectorMatrix::ConstVec(), Ipopt::RestoIpoptNLP::d_L(), Ipopt::RestoIpoptNLP::d_U(), Ipopt::RestoIpoptNLP::HessianMatrixSpace(), operator==(), Ipopt::RestoIpoptNLP::Pd_L(), Ipopt::RestoIpoptNLP::Pd_U(), Ipopt::RestoIpoptNLP::Px_L(), Ipopt::RestoIpoptNLP::Px_U(), Ipopt::IpoptData::set_trial(), Ipopt::SymScaledMatrix::SetUnscaledMatrixNonConst(), Ipopt::ScaledMatrix::SetUnscaledMatrixNonConst(), Ipopt::MultiVectorMatrix::Vec(), Ipopt::RestoIpoptNLP::x_L(), and Ipopt::RestoIpoptNLP::x_U().

template<class U>

SmartPtr< const U > Ipopt::ConstPtr | ( | const SmartPtr< U > & | smart_ptr | ) |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 589 of file IpSmartPtr.hpp.

References GetRawPtr().

Referenced by Ipopt::AmplOptionsList::AddAmplOption(), Ipopt::ScaledMatrix::ColumnScaling(), Ipopt::ScaledMatrixSpace::ColumnScaling(), Ipopt::RestoIpoptNLP::DR_x(), Ipopt::IteratesVectorSpace::MakeNewIteratesVector(), Ipopt::IpoptApplication::Options(), Ipopt::SymScaledMatrix::RowColScaling(), Ipopt::SymScaledMatrixSpace::RowColScaling(), Ipopt::ScaledMatrix::RowScaling(), Ipopt::ScaledMatrixSpace::RowScaling(), Ipopt::IpoptData::set_delta(), Ipopt::IpoptData::set_delta_aff(), and Ipopt::IpoptData::set_trial().

template<class U>

bool Ipopt::IsNull | ( | const SmartPtr< U > & | smart_ptr | ) |

Use this to check if the SmartPtr IsNull. This is preferred to if(GetRawPtr(sp) == NULL)

Definition at line 602 of file IpSmartPtr.hpp.

References DBG_START_FUN, and Ipopt::SmartPtr< T >::ptr_.

Referenced by Ipopt::CompoundSymMatrix::Comp(), Ipopt::IpoptData::curr(), Ipopt::IpoptData::delta(), Ipopt::IpoptData::delta_aff(), IsValid(), and Ipopt::IpoptData::trial().

template<class U>

bool Ipopt::IsValid | ( | const SmartPtr< U > & | smart_ptr | ) |

Use this to check if the SmartPtr is not null This is preferred to if(GetRawPtr(sp) != NULL)

Definition at line 596 of file IpSmartPtr.hpp.

References IsNull().

Referenced by Ipopt::CompoundVector::Comp(), Ipopt::CompoundSymMatrix::Comp(), Ipopt::CompoundVector::ConstComp(), Ipopt::CompoundSymMatrix::ConstComp(), Ipopt::CompoundMatrix::ConstComp(), Ipopt::MultiVectorMatrix::ConstVec(), Ipopt::IpoptData::CopyTrialToCurrent(), Ipopt::IteratesVector::GetTagSum(), Ipopt::SymScaledMatrix::GetUnscaledMatrixNonConst(), Ipopt::ScaledMatrix::GetUnscaledMatrixNonConst(), Ipopt::IpoptNLP::Initialize(), Ipopt::CompoundVector::IsCompConst(), Ipopt::CompoundVector::IsCompNull(), Ipopt::LowRankUpdateSymMatrixSpace::LowRankUpdateSymMatrixSpace(), Ipopt::IpoptNLP::NLP_scaling(), Ipopt::IpoptData::set_delta(), Ipopt::IpoptData::set_delta_aff(), Ipopt::IpoptData::set_trial(), Ipopt::MultiVectorMatrix::Vec(), Ipopt::Vector::Vector(), and Ipopt::IpoptData::W().

template<class U1, class U2>

bool Ipopt::operator== | ( | const SmartPtr< U1 > & | lhs,
|  | const SmartPtr< U2 > & | rhs |
| ) |  |  |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 642 of file IpSmartPtr.hpp.

References ComparePointers(), dbg_smartptr_verbosity, DBG_START_FUN, and GetRawPtr().

Referenced by operator!=().

template<class U1, class U2>

bool Ipopt::operator== | ( | const SmartPtr< U1 > & | lhs,
|  | U2 * | raw_rhs |
| ) |  |  |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 656 of file IpSmartPtr.hpp.

References ComparePointers(), dbg_smartptr_verbosity, DBG_START_FUN, and GetRawPtr().

template<class U1, class U2>

bool Ipopt::operator== | ( | U1 * | lhs,
|  | const SmartPtr< U2 > & | raw_rhs |
| ) |  |  |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 669 of file IpSmartPtr.hpp.

References ComparePointers(), dbg_smartptr_verbosity, DBG_START_FUN, and GetRawPtr().

template<class U1, class U2>

bool Ipopt::operator!= | ( | const SmartPtr< U1 > & | lhs,
|  | const SmartPtr< U2 > & | rhs |
| ) |  |  |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 682 of file IpSmartPtr.hpp.

References dbg_smartptr_verbosity, DBG_START_FUN, and operator==().

template<class U1, class U2>

bool Ipopt::operator!= | ( | const SmartPtr< U1 > & | lhs,
|  | U2 * | raw_rhs |
| ) |  |  |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 695 of file IpSmartPtr.hpp.

References dbg_smartptr_verbosity, DBG_START_FUN, and operator==().

template<class U1, class U2>

bool Ipopt::operator!= | ( | U1 * | lhs,
|  | const SmartPtr< U2 > & | raw_rhs |
| ) |  |  |

Use to get the value of the raw ptr (i.e. to pass to other methods/functions, etc.) Note: This method does NOT copy, therefore, modifications using this value modify the underlying object contained by the SmartPtr, NEVER delete this returned value.

Definition at line 708 of file IpSmartPtr.hpp.

References dbg_smartptr_verbosity, DBG_START_FUN, and operator==().

template<class U1, class U2>

bool Ipopt::ComparePointers | ( | const U1 * | lhs,
|  | const U2 * | rhs |
| ) |  |  |

Definition at line 615 of file IpSmartPtr.hpp.

References dbg_smartptr_verbosity, and DBG_START_FUN.

Referenced by operator==().

ipfint Ipopt::Max | ( | ipfint | a,
|  | ipfint | b |
| ) |  |  | `[inline]`

Definition at line 19 of file IpUtils.hpp.

Referenced by MittelmannParaCntrl5_try::ProblemSpecs::b(), MittelmannParaCntrl5_1::ProblemSpecs::b(), and Max().

ipfint Ipopt::Min | ( | ipfint | a,
|  | ipfint | b |
| ) |  |  | `[inline]`

Definition at line 24 of file IpUtils.hpp.

Referenced by MittelmannParaCntrl5_try::ProblemSpecs::b(), MittelmannParaCntrl5_1::ProblemSpecs::b(), MittelmannParaCntrlBase< T >::get_scaling_parameters(), and Min().

Number Ipopt::Max | ( | Number | a,
|  | Number | b |
| ) |  |  | `[inline]`

Definition at line 29 of file IpUtils.hpp.

Number Ipopt::Max | ( | Number | a,
|  | Number | b,
|  | Number | c |
| ) |  |  | `[inline]`

Definition at line 34 of file IpUtils.hpp.

References Max().

Number Ipopt::Max | ( | Number | a,
|  | Number | b,
|  | Number | c,
|  | Number | d |
| ) |  |  | `[inline]`

Definition at line 41 of file IpUtils.hpp.

References Max().

Number Ipopt::Min | ( | Number | a,
|  | Number | b |
| ) |  |  | `[inline]`

Definition at line 48 of file IpUtils.hpp.

Number Ipopt::Min | ( | Number | a,
|  | Number | b,
|  | Number | c |
| ) |  |  | `[inline]`

Definition at line 53 of file IpUtils.hpp.

References Min().

Number Ipopt::Min | ( | Number | a,
|  | Number | b,
|  | Number | c,
|  | Number | d |
| ) |  |  | `[inline]`

Definition at line 60 of file IpUtils.hpp.

References Min().

bool Ipopt::IsFiniteNumber | ( | Number | val | ) |

Function returning true iff the argument is a valid double number (not NaN or Inf).

Ipopt::DECLARE_STD_EXCEPTION | ( | LOCALLY_INFEASIBLE |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | TOO_FEW_DOF |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | TINY_STEP_DETECTED |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | ACCEPTABLE_POINT_REACHED |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | FEASIBILITY_PROBLEM_SOLVED |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | INVALID_WARMSTART |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | INTERNAL_ABORT |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | FAILED_INITIALIZATION |  | ) |

Exception FAILED_INITIALIZATION for problem during initialization of a strategy object (or other problems).

This is thrown by a strategy object, if a problem arises during initialization, such as a value out of a feasible range.

void Ipopt::RegisterOptions_Interfaces | ( | const SmartPtr< RegisteredOptions > & | roptions | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | IPOPT_APPLICATION_ERROR |  | ) |

Ipopt::DECLARE_STD_EXCEPTION | ( | INVALID_STDINTERFACE_NLP |  | ) |

Declare excpetion that is thrown when invalid NLP data is provided.

Number Ipopt::IpBlasDdot | ( | Index | size,
|  | const Number * | x,
|  | Index | incX,
|  | const Number * | y,
|  | Index | incY |
| ) |  |  |

Wrapper for BLAS function DDOT.

Compute dot product of vector x and vector y

Number Ipopt::IpBlasDnrm2 | ( | Index | size,
|  | const Number * | x,
|  | Index | incX |
| ) |  |  |

Wrapper for BLAS function DNRM2.

Compute 2-norm of vector x

Number Ipopt::IpBlasDasum | ( | Index | size,
|  | const Number * | x,
|  | Index | incX |
| ) |  |  |

Wrapper for BLAS function DASUM.

Compute 1-norm of vector x

Index Ipopt::IpBlasIdamax | ( | Index | size,
|  | const Number * | x,
|  | Index | incX |
| ) |  |  |

Wrapper for BLAS function DASUM.

Compute index for largest absolute element of vector x

void Ipopt::IpBlasDcopy | ( | Index | size,
|  | const Number * | x,
|  | Index | incX,
|  | Number * | y,
|  | Index | incY |
| ) |  |  |

Wrapper for BLAS subroutine DCOPY.

Copying vector x into vector y

void Ipopt::IpBlasDaxpy | ( | Index | size,
|  | Number | alpha,
|  | const Number * | x,
|  | Index | incX,
|  | Number * | y,
|  | Index | incY |
| ) |  |  |

Wrapper for BLAS subroutine DAXPY.

Adding the alpha multiple of vector x to vector y

void Ipopt::IpBlasDscal | ( | Index | size,
|  | Number | alpha,
|  | Number * | x,
|  | Index | incX |
| ) |  |  |

Wrapper for BLAS subroutine DSCAL.

Scaling vector x by scalar alpha

void Ipopt::IpBlasDgemv | ( | bool | trans,
|  | Index | nRows,
|  | Index | nCols,
|  | Number | alpha,
|  | const Number * | A,
|  | Index | ldA,
|  | const Number * | x,
|  | Index | incX,
|  | Number | beta,
|  | Number * | y,
|  | Index | incY |
| ) |  |  |

Wrapper for BLAS subroutine DGEMV.

Multiplying a matrix with a vector.

void Ipopt::IpBlasDsymv | ( | Index | n,
|  | Number | alpha,
|  | const Number * | A,
|  | Index | ldA,
|  | const Number * | x,
|  | Index | incX,
|  | Number | beta,
|  | Number * | y,
|  | Index | incY |
| ) |  |  |

Wrapper for BLAS subroutine DSYMV.

Multiplying a symmetric matrix with a vector.

void Ipopt::IpBlasDgemm | ( | bool | transa,
|  | bool | transb,
|  | Index | m,
|  | Index | n,
|  | Index | k,
|  | Number | alpha,
|  | const Number * | A,
|  | Index | ldA,
|  | const Number * | B,
|  | Index | ldB,
|  | Number | beta,
|  | Number * | C,
|  | Index | ldC |
| ) |  |  |

Wrapper for BLAS subroutine DGEMM.

Multiplying two matrices

void Ipopt::IpBlasDsyrk | ( | bool | trans,
|  | Index | ndim,
|  | Index | nrank,
|  | Number | alpha,
|  | const Number * | A,
|  | Index | ldA,
|  | Number | beta,
|  | Number * | C,
|  | Index | ldC |
| ) |  |  |

Wrapper for BLAS subroutine DSYRK.

Adding a high-rank update to a matrix

void Ipopt::IpBlasDtrsm | ( | bool | trans,
|  | Index | ndim,
|  | Index | nrhs,
|  | Number | alpha,
|  | const Number * | A,
|  | Index | ldA,
|  | Number * | B,
|  | Index | ldB |
| ) |  |  |

Wrapper for BLAS subroutine DTRSM.

Backsolve for a lower triangular matrix.

Ipopt::DECLARE_STD_EXCEPTION | ( | LAPACK_NOT_INCLUDED |  | ) |

void Ipopt::IpLapackDpotrs | ( | Index | ndim,
|  | Index | nrhs,
|  | const Number * | a,
|  | Index | lda,
|  | Number * | b,
|  | Index | ldb |
| ) |  |  |

Wrapper for LAPACK subroutine DPOTRS.

Solving a linear system given a Cholesky factorization. We assume that the Cholesky factor is lower traiangular.

void Ipopt::IpLapackDpotrf | ( | Index | ndim,
|  | Number * | a,
|  | Index | lda,
|  | Index & | info |
| ) |  |  |

Wrapper for LAPACK subroutine DPOTRF.

Compute Cholesky factorization (lower triangular factor). info is the return value from the LAPACK routine.

void Ipopt::IpLapackDsyev | ( | bool | compute_eigenvectors,
|  | Index | ndim,
|  | Number * | a,
|  | Index | lda,
|  | Number * | w,
|  | Index & | info |
| ) |  |  |

Wrapper for LAPACK subroutine DSYEV.

Compute the Eigenvalue decomposition for a given matrix. If compute_eigenvectors is true, a will contain the eigenvectors in its columns on return.