The implementation has the following features:
- Choice between Legendre, Chebyshev, central differences, trapezoidal or Hermite-Simpson discretization.
- Large scale nonlinear programming using IPOPT
- Estimation of the discretization error.
- Automatic mesh refinement.
- Automatic scaling
- Automatic differentiation using the ADOL-C library
- Numerical differentiation by using sparse finite differences
- Automatic identification of the sparsity of the derivative matrices.
- DAE formulation, so that differential and algebraic constraints can be implemented in the same C++ function.
- Easy to use interface to GNUplot to produce graphical output, including 2D plots, 3D curves and surfaces, and polar plots.
- Automatic generation of LaTeX code to produce a table that summarizes the mesh refinement process.
|
|