9#ifndef _parameteric_curves_linear_chirp_hpp
10#define _parameteric_curves_linear_chirp_hpp
23template <
typename Numeric = double, Eigen::Index Dim = 1,
24 typename Point = Eigen::Matrix<Numeric, Dim, 1> >
58 const point_t&
m_p = 0.5 * (1.0 - phase(
t).array().cos());
63 const std::size_t&
order)
const {
67 }
else if (
order == 2) {
69 freq(
t).array() * phase(
t).array().cos();
72 std::cerr <<
"Higher order derivatives not supported" << std::endl;
73 return point_t::Zero(Dim);
80 if (
f0.size() !=
f0_.size())
return false;
86 if (Dim != 1)
return false;
92 if (
f1.size() !=
f1_.size())
return false;
98 if (Dim != 1)
return false;
109 if (Dim != 1)
return false;
121 if (Dim != 1)
return false;
139 return f1 +
m_k * (0.5 * this->t_max -
t);
Definition abstract-curve.hpp:16
Eigen::Matrix< Numeric, 3, 1 > Point
Definition effector_spline.h:28
double Numeric
Definition effector_spline.h:26
Represents a curve of dimension Dim is Safe is false, no verification is made on the evaluation of th...
Definition abstract-curve.hpp:21
time_t t_max
Definition abstract-curve.hpp:65
Creates LinearChirp curve Linear chirp trajectory generator. A linear chirp is a sinusoid whose frequ...
Definition linear-chirp.hpp:25
freq_t f0
Definition linear-chirp.hpp:128
virtual bool setInitialPoint(const point_t &x_init_)
Definition linear-chirp.hpp:103
point_t x_final
Definition linear-chirp.hpp:131
virtual bool setFinalFrequency(const double &f1_)
Definition linear-chirp.hpp:97
virtual bool setFinalFrequency(const Eigen::VectorXd &f1_)
Definition linear-chirp.hpp:91
freq_t f1
initial frequency
Definition linear-chirp.hpp:129
Numeric time_t
Definition linear-chirp.hpp:29
Point point_t
Definition linear-chirp.hpp:26
virtual bool setFinalPoint(const double &x_final_)
Definition linear-chirp.hpp:120
virtual const point_t derivate(const time_t &t, const std::size_t &order) const
Evaluation of the derivative spline at time t.
Definition linear-chirp.hpp:62
LinearChirp(const time_t &traj_time_, const freq_t &f0_, const freq_t &f1_, const point_t &x_init_=Eigen::Matrix< Numeric, Dim, 1 >::Zero(), const point_t &x_final_=Eigen::Matrix< Numeric, Dim, 1 >::Zero())
Definition linear-chirp.hpp:44
virtual bool setFinalPoint(const Eigen::VectorXd &x_final_)
Definition linear-chirp.hpp:114
AbstractCurve< Numeric, Point > curve_abc_t
Definition linear-chirp.hpp:31
Numeric num_t
Definition linear-chirp.hpp:30
virtual bool setInitialPoint(const double &x_init_)
Definition linear-chirp.hpp:108
virtual bool setInitialFrequency(const Eigen::VectorXd &f0_)
Definition linear-chirp.hpp:79
point_t x_init
final frequency
Definition linear-chirp.hpp:130
Point phase_t
Definition linear-chirp.hpp:28
Point freq_t
Definition linear-chirp.hpp:27
virtual bool setInitialFrequency(const double &f0_)
Definition linear-chirp.hpp:85
LinearChirp(const time_t &traj_time_, const point_t &x_init_=Eigen::Matrix< Numeric, Dim, 1 >::Zero(), const point_t &x_final_=Eigen::Matrix< Numeric, Dim, 1 >::Zero())
Constructor.
Definition linear-chirp.hpp:36
virtual const point_t operator()(const time_t &t) const
Evaluation of the cubic spline at time t.
Definition linear-chirp.hpp:57
~LinearChirp()
Destructor.
Definition linear-chirp.hpp:54
Definition curve-constraint.hpp:18