2
3
4
5
6
7
8
9
10
11
12
13
14
15
17
18
19
20
22#ifndef MODELS_ACTUATORS_TIMED_IMPULSIVE_BURN_MODEL_H
23#define MODELS_ACTUATORS_TIMED_IMPULSIVE_BURN_MODEL_H
25#include "core/macros.h"
26#include "simulation/Model.h"
27#include "core/CartesianVector.hpp"
28#include "six_dof_dynamics/Frame.hpp"
29#include "six_dof_dynamics/Body.hpp"
30#include "six_dof_dynamics/Node.hpp"
31#include "models/actuators/ImpulseModel.h"
32#include "monitors/TimeTriggerMonitor.h"
37
38
39
40
41
42
43
44
45
46
47
76 TimedImpulsiveBurnModel(
Model &pnt,
const std::string &m_name=
"impulse");
78 TimedImpulsiveBurnModel(
Model &pnt,
int schedule_slot,
const std::string &m_name=
"impulse");
79 TimedImpulsiveBurnModel(
SimulationExecutive &e,
int schedule_slot,
const std::string &m_name=
"impulse");
80 ~TimedImpulsiveBurnModel() {}
100 bool _triggered =
false;
DataIO(GraphTreeObject *data_parent, std::string data_name, T initial_value)
Constructor for the DataIO object.
Definition DataIO.hpp:134
Wrapper to manage and convert time as timespce.
Definition Time.h:45
Time()
Default, copy constructors and default destructor.
Definition Time.h:48
Impulse Model.
Definition ImpulseModel.h:39
Base model class for derived implementation.
Definition Model.h:56
Implementation of the executive class for simulation.
Definition SimulationExecutive.h:63
The time trigger monitor is a simple implementation of the monitor that triggers continuously after a...
Definition TimeTriggerMonitor.h:37
Timed Impulsive Burn Model.
Definition TimedImpulsiveBurnModel.h:48
modelspace::TimeTriggerMonitor * timeTriggerMonitor()
Function to get a handle to the time trigger monitor contained within this model.
Definition TimedImpulsiveBurnModel.h:84
modelspace::ImpulseModel * impulseModel()
Function to get a handle to the impulse model contained within this model.
Definition TimedImpulsiveBurnModel.h:87
int execute()
Function to execute the task. All math and calculations should be here.
Definition TimedImpulsiveBurnModel.cpp:71
int start()
Function to perform task startup activities (step once after creation)
Definition TimedImpulsiveBurnModel.cpp:45
#define SIGNAL(NAME, TYPE, INITIAL_VALUE)
Definition macros.h:87
#define BodyD
Definition macros.h:66
#define START_PARAMS
Definition macros.h:96
#define CartesianVector3D
Definition macros.h:54
#define END_OUTPUTS
Definition macros.h:90
#define END_PARAMS
Definition macros.h:98
#define NodeD
Definition macros.h:68
#define START_OUTPUTS
Definition macros.h:88
#define FrameD
Definition macros.h:64
#define END_INPUTS
Definition macros.h:94
#define START_INPUTS
Definition macros.h:92
Class to propagate CR3BP dynamics in characteristic units.
Definition ConfigurationWriter.cpp:18
clockwerk::DataIO< clockwerk::CartesianVector< double, 3 > > deltav__burn
Definition TimedImpulsiveBurnModel.h:60
clockwerk::DataIO< clockwerk::Body< double > * > body_frame
Definition TimedImpulsiveBurnModel.h:54
clockwerk::DataIO< clockwerk::Frame< double > * > burn_frame
Definition TimedImpulsiveBurnModel.h:56
clockwerk::DataIO< clockwerk::Time > time_of_ignition
Definition TimedImpulsiveBurnModel.h:58