towr::PhaseSpline Class Reference

A spline built from node values and polynomial durations. More...

`#include <phase_spline.h>`

Inheritance diagram for towr::PhaseSpline:

## Public Member Functions | |

Jacobian | GetJacobianOfPosWrtDurations (double t) const override |

How the spline position changes when the polynomial durations change. | |

PhaseSpline (NodesVariablesPhaseBased::Ptr const node_variables, PhaseDurations *const phase_durations) | |

Constructs a spline with varying/optimized phase durations. | |

void | UpdatePolynomialDurations () override |

Called by subject to update polynomial durations when they changed. | |

~PhaseSpline () | |

## Private Member Functions | |

Eigen::VectorXd | GetDerivativeOfPosWrtPhaseDuration (double t) const |

How the position at time t changes with current phase duration. | |

## Private Attributes | |

NodesVariablesPhaseBased::Ptr | phase_nodes_ |

A spline built from node values and polynomial durations.

This class is responsible for combining the optimized node values with the optimized phase durations to construct a sequence of CubicHermitePolynomial. For this it observers whether one of the quantities changed and then updates all the polynomials accordingly.

Definition at line 47 of file phase_spline.h.

towr::PhaseSpline::PhaseSpline | ( | NodesVariablesPhaseBased::Ptr const | node_variables, |

PhaseDurations *const | phase_durations |
||

) |

Constructs a spline with varying/optimized phase durations.

**Parameters:**-
node_variables The optimized node variables (pos, vel). phase_durations Pointer to the changing phase duration variables.

Definition at line 35 of file phase_spline.cc.

Eigen::VectorXd towr::PhaseSpline::GetDerivativeOfPosWrtPhaseDuration | ( | double | t | ) | const` [private]` |

How the position at time t changes with current phase duration.

**Parameters:**-
t The global time along the spline.

**Returns:**- How a duration change affects the x,y,z position.

Definition at line 78 of file phase_spline.cc.

PhaseSpline::Jacobian towr::PhaseSpline::GetJacobianOfPosWrtDurations | ( | double | t | ) | const` [override, virtual]` |

How the spline position changes when the polynomial durations change.

**Parameters:**-
t The time along the spline at which the sensitivity is required.

**Returns:**- the pxn Jacobian, where: p: Number of dimensions of the spline n: Number of optimized durations.

Reimplemented from towr::NodeSpline.

Definition at line 68 of file phase_spline.cc.

void towr::PhaseSpline::UpdatePolynomialDurations | ( | ) | ` [override, virtual]` |

Called by subject to update polynomial durations when they changed.

Implements towr::PhaseDurationsObserver.

Definition at line 55 of file phase_spline.cc.

NodesVariablesPhaseBased::Ptr towr::PhaseSpline::phase_nodes_` [private]` |

Definition at line 83 of file phase_spline.h.

The documentation for this class was generated from the following files: