Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/backup lqoc man ex #131

Open
wants to merge 28 commits into
base: v3.0.3-devel
Choose a base branch
from

Conversation

markusgft
Copy link
Member

No description provided.

@@ -151,7 +151,8 @@ class DynamicsLinearizerNumDiff
SCALAR dxp = mlog_ph - m_log.coeffs()(i);

t_perturbed = m_log;
t_perturbed.coeffs()(i) = mlog_ph;
t_perturbed.set_coeff(i, mlog_ph); // TODO
//t_perturbed.coeffs()(i) = mlog_ph;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be solved cleanly, most likely requires a change in manif.

sv_[k]/*.noalias()*/ += p.A_[k].transpose() * S_[k + 1] * p.b_[k];
sv_[k]/*.noalias()*/ += this->L_[k].transpose() * Hi_[k] * this->lv_[k];
sv_[k]/*.noalias()*/ += this->L_[k].transpose() * gv_[k];
sv_[k]/*.noalias()*/ += G_[k].transpose() * this->lv_[k]; // TODO: bring back all the noalias()
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the noalias() must be fixed properly, maybe requires changing manif.

template <int STATE_DIM, int CONTROL_DIM>
const ct::core::ControlVectorArray<CONTROL_DIM>& HPIPMInterface<STATE_DIM, CONTROL_DIM>::get_lv()
template <typename MANIFOLD, int CONTROL_DIM>
const ct::core::ControlVectorArray<CONTROL_DIM>& HPIPMInterface<MANIFOLD, CONTROL_DIM>::get_lv()
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: throw an error at compile time if HPIPM is attempted to be built with a non-euclidean manifold


#add_executable(KinematicManifoldLQOCTest solver/linear/KinematicManifoldLQOCTest.cpp)
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove those executables from the cmakelist and make them proper unit tests

@@ -45,14 +45,24 @@ if(BUILD_TESTS)
message(STATUS "ct_optcon: building unit tests requiring CPPADCG")
# package_add_test(constraint_comparison constraint/ConstraintComparison.cpp)
# package_add_test(constraint_test constraint/ConstraintTest.cpp)
package_add_test(CostFunctionTests costfunction/CostFunctionTests.cpp)
package_add_test(LoadFromFileTest costfunction/LoadFromFileTest.cpp)
# package_add_test(CostFunctionTests costfunction/CostFunctionTests.cpp)
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bring back those tests

@@ -0,0 +1,514 @@

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

abstract the composite manifold classes, move them to an appropriate place

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also check back on the latest developments within manif regarding composite manifolds.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

extend the generic NLOC classes with the novel features and make this a unit test which compares them against the solution below.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants