12 #ifndef __CODAC_TRAJECTORY_H__ 13 #define __CODAC_TRAJECTORY_H__ 18 #include "codac_TFunction.h" 24 class TrajectoryVector;
26 enum class TrajDefnType { ANALYTIC_FNC, MAP_OF_VALUES };
54 Trajectory(
const Interval& tdomain,
const TFunction& f);
64 Trajectory(
const Interval& tdomain,
const TFunction& f,
double timestep);
71 explicit Trajectory(
const std::map<double,double>& m_map_values);
81 explicit Trajectory(
const std::list<double>& list_t,
const std::list<double>& list_x);
115 const Interval tdomain()
const;
122 TrajDefnType definition_type()
const;
133 const std::map<double,double>& sampled_map()
const;
140 const TFunction* tfunction()
const;
147 const Interval codomain()
const;
160 double operator()(
double t)
const;
168 const Interval operator()(
const Interval& t)
const;
175 double first_value()
const;
182 double last_value()
const;
194 bool not_defined()
const;
224 void set(
double y,
double t);
234 Trajectory& truncate_tdomain(
const Interval& tdomain);
254 bool constant_timestep(
double& h)
const;
307 const Trajectory primitive(
double c = 0.)
const;
317 const Trajectory primitive(
double c,
double timestep)
const;
344 double finite_diff(
double t,
double h)
const;
425 const std::string
class_name()
const {
return "Trajectory"; };
434 friend std::ostream& operator<<(std::ostream& str,
const Trajectory& x);
447 const IntervalVector codomain_box()
const;
452 void compute_codomain();
456 Interval m_tdomain = Interval::EMPTY_SET;
457 Interval m_codomain = Interval::EMPTY_SET;
460 TrajDefnType m_traj_def_type = TrajDefnType::MAP_OF_VALUES;
464 TFunction *m_function =
nullptr;
FixPoint of a separator The fixpoint of a separator is computed by calling the "::"separate function ...
Definition: codac_capd_helpers.h:9
One dimensional trajectory , defined as a temporal map of values.
Definition: codac_Trajectory.h:34
const std::string class_name() const
Returns the name of this class.
Definition: codac_Trajectory.h:425
Abstract class for common properties of Tube, TubeVector, Slice, Trajectory, TrajectoryVector objects...
Definition: codac_DynamicalItem.h:25
n-dimensional trajectory , defined as a temporal map of vector values
Definition: codac_TrajectoryVector.h:37
void deserialize_TrajectoryVector(std::ifstream &bin_file, TrajectoryVector *&traj)
Creates a TrajectoryVector object from a binary file.
std::map< double, double > m_map_values
optional map of values <t,y>:
Definition: codac_Trajectory.h:465
void deserialize_Trajectory(std::ifstream &bin_file, Trajectory *&traj)
Creates a Trajectory object from a binary file.