aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
workspace.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
aligator/solvers/workspace-base.hpp
"
4
#include "
aligator/solvers/value-function.hpp
"
5
#include <Eigen/Cholesky>
6
7
namespace
aligator
{
8
10
template
<
typename
Scalar>
struct
WorkspaceFDDPTpl
:
WorkspaceBaseTpl
<Scalar> {
11
using
VParams
=
ValueFunctionTpl<Scalar>
;
12
using
QParams
=
QFunctionTpl<Scalar>
;
13
using
Base
=
WorkspaceBaseTpl<Scalar>
;
14
ALIGATOR_DYNAMIC_TYPEDEFS
(Scalar);
15
using
Base::nsteps
;
16
using
Base::trial_us
;
17
using
Base::trial_xs
;
18
20
std::vector<VectorXs>
dxs
;
22
std::vector<VectorXs>
dus
;
24
std::vector<VectorXs>
Quuks_
;
25
std::vector<VectorXs>
ftVxx_
;
27
std::vector<MatrixXs>
kktRhs
;
29
std::vector<Eigen::LLT<MatrixXs>>
llts_
;
31
std::vector<VParams>
value_params
;
33
std::vector<QParams>
q_params
;
34
36
using
RowMatrixXs
= Eigen::Matrix<Scalar, -1, -1, Eigen::RowMajor>;
37
std::vector<RowMatrixXs>
JtH_temp_
;
38
39
Scalar
dg_
= 0.;
40
Scalar
dq_
= 0.;
41
Scalar
dv_
= 0.;
42
Scalar
d1_
= 0.;
43
Scalar
d2_
= 0.;
44
45
WorkspaceFDDPTpl
()
46
:
Base
()
47
,
value_params
()
48
,
q_params
() {}
49
explicit
WorkspaceFDDPTpl
(
const
TrajOptProblemTpl<Scalar>
&problem);
50
51
void
cycleLeft
();
52
};
53
54
}
// namespace aligator
55
56
#include "./workspace.hxx"
57
58
#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
59
#include "./workspace.txx"
60
#endif
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
aligator::QFunctionTpl
Q-function model parameters.
Definition
value-function.hpp:44
aligator::TrajOptProblemTpl
Trajectory optimization problem.
Definition
traj-opt-problem.hpp:102
aligator::ValueFunctionTpl
Storage for the value function model parameters.
Definition
value-function.hpp:16
aligator::WorkspaceBaseTpl::nsteps
std::size_t nsteps
Number of steps in the problem.
Definition
workspace-base.hpp:22
aligator::WorkspaceBaseTpl::trial_us
std::vector< VectorXs > trial_us
Definition
workspace-base.hpp:29
aligator::WorkspaceBaseTpl::trial_xs
std::vector< VectorXs > trial_xs
Definition
workspace-base.hpp:28
aligator::WorkspaceBaseTpl::WorkspaceBaseTpl
WorkspaceBaseTpl()
Definition
workspace-base.hpp:35
aligator::WorkspaceFDDPTpl::d1_
Scalar d1_
Definition
workspace.hpp:42
aligator::WorkspaceFDDPTpl::cycleLeft
void cycleLeft()
aligator::WorkspaceFDDPTpl::WorkspaceFDDPTpl
WorkspaceFDDPTpl(const TrajOptProblemTpl< Scalar > &problem)
aligator::WorkspaceFDDPTpl::WorkspaceFDDPTpl
WorkspaceFDDPTpl()
Definition
workspace.hpp:45
aligator::WorkspaceFDDPTpl::Quuks_
std::vector< VectorXs > Quuks_
Storage for the product .
Definition
workspace.hpp:24
aligator::WorkspaceFDDPTpl::QParams
QFunctionTpl< Scalar > QParams
Definition
workspace.hpp:12
aligator::WorkspaceFDDPTpl::llts_
std::vector< Eigen::LLT< MatrixXs > > llts_
LLT struct for each KKT system.
Definition
workspace.hpp:29
aligator::WorkspaceFDDPTpl::dv_
Scalar dv_
Definition
workspace.hpp:41
aligator::WorkspaceFDDPTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::WorkspaceFDDPTpl::dg_
Scalar dg_
Definition
workspace.hpp:39
aligator::WorkspaceFDDPTpl::value_params
std::vector< VParams > value_params
Value function parameter storage.
Definition
workspace.hpp:31
aligator::WorkspaceFDDPTpl::dxs
std::vector< VectorXs > dxs
State increment.
Definition
workspace.hpp:20
aligator::WorkspaceFDDPTpl::d2_
Scalar d2_
Definition
workspace.hpp:43
aligator::WorkspaceFDDPTpl::dus
std::vector< VectorXs > dus
Control increment.
Definition
workspace.hpp:22
aligator::WorkspaceFDDPTpl::RowMatrixXs
Eigen::Matrix< Scalar, -1, -1, Eigen::RowMajor > RowMatrixXs
Temporary storage for jacobian transpose-Q-hessian product.
Definition
workspace.hpp:36
aligator::WorkspaceFDDPTpl::Base
WorkspaceBaseTpl< Scalar > Base
Definition
workspace.hpp:13
aligator::WorkspaceFDDPTpl::ftVxx_
std::vector< VectorXs > ftVxx_
Definition
workspace.hpp:25
aligator::WorkspaceFDDPTpl::kktRhs
std::vector< MatrixXs > kktRhs
Buffer for KKT system right-hand sides.
Definition
workspace.hpp:27
aligator::WorkspaceFDDPTpl::dq_
Scalar dq_
Definition
workspace.hpp:40
aligator::WorkspaceFDDPTpl::q_params
std::vector< QParams > q_params
Q-function storage.
Definition
workspace.hpp:33
aligator::WorkspaceFDDPTpl::VParams
ValueFunctionTpl< Scalar > VParams
Definition
workspace.hpp:11
aligator::WorkspaceFDDPTpl::JtH_temp_
std::vector< RowMatrixXs > JtH_temp_
Definition
workspace.hpp:37
value-function.hpp
Define storage for Q-function and value-function parameters.
workspace-base.hpp
include
aligator
solvers
fddp
workspace.hpp
Generated by
1.17.0