v1986 - 3/06/2010 - BRANCH
The current version is not the latest version on SVN but a branch based on
svn version 1986 with some minor changes. Originally these changes are only
introduced in version v2022 and later.
* Bug: trajectory in integrator was only giving back 2 points
* Bug: Seeds and sensitivities are enabled again in the integrator
* Feat: Now possible to set a custom mesh size for the results of the integrator
* Feat: Added field "CONVERGENCE_ACHIEVED" to output struct to indicate convergence
* Bug: Bug in periodic tracking. reference trajectory was not passed correctly
* Feat: Introducing multi stage OCP (not yet with "transitions")
* IntermediateStates are not supported any more. Use matlab variables in stead.
* Important side note for users of the ACADO integrators in Matlab: when using a DAE
[ xEnd, xaEnd, outputs ] = ACADOintegrators( settings,xStart,xaStart,tStart,tEnd )
xaEnd currently doesn't hold the correct end values. The output is available in
outputs.xaTrajectory
v1983 - 16/05/2010
* Now warnings are given if initializeDifferentialStates, -AlgebraicStates,
-Parameters, -Controls or -Disturbances are not of correct size (= first column
time, next column values for all elements). Warnings can be disabled by not showing
warnings with identifier "ACADO:initialize". Help files are also extended.
* Introduction "makemex" -> a system to automatically compile your own mex files.
See manual section "Writing and compiling your own C++ file"
v1983 - 16/05/2010
* Now warnings are given if initializeDifferentialStates, -AlgebraicStates,
-Parameters, -Controls or -Disturbances are not of correct size (= first column
time, next column values for all elements). Warnings can be disabled by not showing
warnings with identifier "ACADO:initialize". Help files are also extended.
* Introduction "makemex" -> a system to automatically compile your own mex files.
See manual section "Writing and compiling your own C++ file"
v1958 - 11/05/2010
* Completely rewritten how matrices, vectors, doubles are stored and used in
expressions. Removed .print(), replaced by .getInstuctions()
* Feat: Now possible to use bounds equal to a Matrix, eg subjectTo(u1 == [0 1; 1 2]).
First column are time points, second column the time depending reference value
* New corrected and extended manual
v1935 - 29/4/2010
* Feat: f.linkMatlabDAE -> Now suporting DAE's with black-box models. See
examples\ocp\dae_optimization_tutorial_matlab
* Feat: Now supporting discrete differential equations. Not yet for black-box models.
See examples\ocp\discrete_time_rocket
* Changed way cpp files are included in integrator. You now have to specify included
files your self in MODEL_INCLUDE.m
v1880 - 19/4/2010
* Feat: f.linkCFunction -> now supports DAE's as well
* !! SYNTAX FOR DAE MODELS IS CHANGED. See manual and examples
* Bug: DAE's in integrator didn't work
* FIRST RELEASE USER GUIDE!
* REMARK: Blackbox DAE's (linkMatlabDAE and setCfunction with DAE) don't work yet.
v1853 - 13/4/2010
* Bug: Powerkite online example works again
* linkMatlabODE now supports 2 arguments: the ODE and an optional Jacobian. linkMatlabJacobian is thus abandoned.
* Bug: in minimizeLSQ(S,h,r) -> r can now be a matrix as well
* Feat: its now possible to add multiple minimizeLSQ(end) terms
* Feat: results of parameterestimation are now stored in vector out.PARAMETERS
* Feat: static reference trajectory can now contain reference values
* Bug: compilation didn't work under linux
v1805 - 3/4/2010
* algo.solve(), sim.run( ) is abandoned. Compilation will start automatically when calling END_ACADO
* Engine: not using pointers anymore
* Introducing linkCFunction to link a C blackbox model (see example ocp/simplerocket_c)
v1802 - 31/03/2010
* f.ODE() is now replaced by f.add()
* Added support for AlgebraicState (for now only when using f.add() not yet for linking a matlab dae)
* See new examples ocp/dae_optimization_tutorial and ocp/dae_optimization_tutorial2
* Introduced initializeAlgebraicStates
v1798 - 29/03/2010
* Added the examples folder "matlabarguments" with examples dedicated on free Mex Inputs. These Mex Inputs allow you to change bounds, matrices, starting times,... without having to recompile.
v1793 - 29/03/2010
* Changes to parameter estimation
* obsolete ocp.minimizeLSQParameter( S, h ) -> minimizeLSQocp.minimizeLSQ( S, h, M ); with M the measurement matrix
* OCP now requires a vector with timepoints (as in the C++ code) instead of the full matrix acado.OCP(M) -> acado.OCP(M(:,1)')
* Now supporting intermediate states. See examples\simulationenv\dev_dcmotor for an example
* Now supporting controller.init() and controller.step()
* Introduced "MexInput", allowing you to set variable inputs
* Results are now written to the workspace (files is still an option which can be set with acadoSet('results_to_file', false))
* Introduced initializeDisturbances()
v1775 - 24/03/2010
* Set seeds, get sensitivities in integrator currently disabled!
v1774 - 23/03/2010
* Obsolete DifferentialStates -> Use DifferentialState
* Obsolete Parameters -> Use Parameter
* Obsolete Controls -> Use Control
* Obsolete Disturbances -> Use Disturbance
* Introduced TIME
* Obsolete algo.setVariables -> Not needed anymore
* Obsolete algo.setProblemname -> Introduced acadoSet('problemname', 'getting_started');
* Added more examples + added comments (tutorial style) to all basic examples
* Simulation environment stuff can now handle 2 linked matlab ODE's (simulating and optimising)
* SubjectTo is not based on strings anymore
* ocp.subjectTo( 'AT_START, x == 1.0' ); -> ocp.subjectTo( 'AT_START', x == 1.0 );
* ocp.subjectTo( 'AT_END, x == 1.0' ); -> ocp.subjectTo( 'AT_END', x == 1.0 );
* ocp.subjectTo( ' 0.1 <= p <= 2.0' ); -> ocp.subjectTo( 0.1 <= p <= 2.0 );
* ocp.subjectTo( ' 0.1 == p ' ); -> ocp.subjectTo( 0.1 == p );
* ocp.subjectTo( '0.0, r , -r , 0.0 '); -> ocp.subjectTo( 0.0, r , -r , 0.0 );
* Complete redesign c++ file generation