-
Notifications
You must be signed in to change notification settings - Fork 0
/
spacecraftGen.cpp
35 lines (32 loc) · 1.08 KB
/
spacecraftGen.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
#include <cmath>
#include <fstream>
#include <Eigen/Core>
#include "spacecraftGen.h"
#include "Tudat/Astrodynamics/BasicAstrodynamics/stateVectorIndices.h"
#include "Tudat/InputOutput/matrixTextFileReader.h"
#include "constants.h"
using namespace std;
SpacecraftGen::SpacecraftGen(
double initialMass,
Eigen::VectorXd initialReducedState,
double specificImpulse,
ConstantsPointer constantsPointer ) :
mass_( initialMass ),
specificImpulse_( specificImpulse ),
constantsPointer_( constantsPointer ),
initialReducedState_( initialReducedState )
{
for ( int i = 0; i < initialReducedState_.size(); i++ ) // dim( initialReducedState ) = 7x1
{
initialState_( i ) = initialReducedState_( i );
}
// mass is already included in initialReducedState vector
initialState_( 7 ) = mass_;
currentState_ = initialState_;
}
void SpacecraftGen::loadThrustForce( string fileName)
{
// Read input file and store data in matrix.
thrustForceMatrix_ = tudat::input_output::readMatrixFromFile( fileName , " \t", "#" );
}