public class Psimu extends Object
Modifier and Type | Class and Description |
---|---|
static class |
Psimu.StorageType
Enumerate to choose the storage type to use for the results when running in master mode.
|
Constructor and Description |
---|
Psimu(fr.cnes.sirius.patrius.orbits.Orbit initialOrbitIn,
fr.cnes.sirius.patrius.bodies.OneAxisEllipsoid earthIn,
UserFramesConfsEnum userFramesConfigurationIn,
AbstractNumericalIntegratorData numericalIntegratorDataIn,
fr.cnes.sirius.patrius.assembly.Vehicle vehicleIn,
fr.cnes.sirius.patrius.propagation.MassProvider massModelIn,
fr.cnes.sirius.patrius.forces.ForceModelsData forceModelsIn,
fr.cnes.genopus.nonWidget.maneuvers.CustomManeuverSequence maneuversSeq,
fr.cnes.sirius.patrius.attitudes.AttitudeProvider attitudesSequenceIn)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
void |
addForceModel(fr.cnes.sirius.patrius.forces.ForceModel forceModel)
Method to add an external force model to the numerical propagator.
|
void |
closeDataBaseConnection()
Close database connection.
|
fr.cnes.sirius.patrius.assembly.Assembly |
getAssembly()
Get assembly.
|
fr.cnes.sirius.patrius.bodies.OneAxisEllipsoid |
getEarth()
Get Earth shape.
|
fr.cnes.sirius.patrius.forces.ForceModelsData |
getfModels()
Get force models.
|
fr.cnes.sirius.patrius.orbits.Orbit |
getInitialOrbit()
Get initial orbit.
|
fr.cnes.genopus.nonWidget.maneuvers.CustomManeuverSequence |
getManeuversSequence()
Get maneuvers data.
|
fr.cnes.sirius.patrius.propagation.MassProvider |
getMassModel()
Get the mass model.
|
fr.cnes.sirius.patrius.propagation.numerical.NumericalPropagator |
getNumPropagator()
Get the numerical propagator.
|
double |
getPropagationDuration()
Get propagation duration.
|
fr.cnes.sirius.patrius.propagation.SpacecraftState |
getSpacecraftState(int index)
Get the spacecraft state with the requested index.
|
List<fr.cnes.sirius.patrius.propagation.SpacecraftState> |
getSpacecraftStateList()
Get the list of spacecraft state after a propagation in master mode.
|
fr.cnes.sirius.patrius.propagation.SpacecraftState |
getSpacecraftStateOnlyEvents(int index)
Get the spacecraft state with the requested index from a list without events.
|
List<fr.cnes.sirius.patrius.propagation.SpacecraftState> |
getSpacecraftStateOnlyEventsList()
Get the list of events spacecraft state after a propagation in master mode.
|
fr.cnes.sirius.patrius.propagation.SpacecraftState |
getSpacecraftStateWithoutEvents(int index)
Get the spacecraft state with the requested index from a list without events.
|
List<fr.cnes.sirius.patrius.propagation.SpacecraftState> |
getSpacecraftStateWithoutEventsList()
Get the list of spacecraft state without events after a propagation in master mode.
|
Object |
getVariable(int index,
String key)
Method to get an element of a list of output variables (given by the index).
|
Object |
getVariableOnlyEvents(int index,
String key)
Method to get an element of a list of output variables (given by the index) only for events.
|
Map<String,Object> |
getVariables(int index)
Method to get a list of output variables (given by the index).
|
List<Map<String,Object>> |
getVariablesList()
Method to get lists of output variables.
|
Map<String,Object> |
getVariablesOnlyEvents(int index)
Method to get a list of output variables (given by the index) only for events.
|
List<Map<String,Object>> |
getVariablesOnlyEventsList()
Method to get lists of output variables only for events.
|
Map<String,Object> |
getVariablesWithoutEvents(int index)
Method to get a list of output variables (given by the index) without events.
|
List<Map<String,Object>> |
getVariablesWithoutEventsList()
Method to get lists of output variables without events.
|
Object |
getVariableWithoutEvents(int index,
String key)
Method to get an element of a list of output variables (given by the index) without events.
|
void |
printSV(String title,
fr.cnes.sirius.patrius.orbits.Orbit originalOrbit,
fr.cnes.sirius.patrius.frames.Frame outputFrame,
fr.cnes.sirius.patrius.propagation.MassProvider massModelIn)
Prints the spacecraft state (epoch, frame, mass, Cartesian and Keplerian parameters).
|
void |
propagateInMasterMode(OutputConfig outputConfig,
List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect,
Psimu.StorageType storageType)
Method to propagate the orbit in IHM mode.
|
void |
propagateInMasterMode(OutputConfig outputConfig,
List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect,
Psimu.StorageType storageMemory,
Psimu.StorageType storageFile)
Method to propagate the orbit in IHM mode.
|
void |
propagateInMasterMode(OutputConfig outputConfig,
List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect,
Psimu.StorageType storageMemory,
Psimu.StorageType storageFile,
String resultName)
Method to propagate the orbit in IHM mode.
|
void |
propagateInMasterMode(OutputConfig outputConfig,
List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect,
Psimu.StorageType storageType,
String resultName)
Method to propagate the orbit in IHM mode.
|
fr.cnes.sirius.patrius.propagation.SpacecraftState |
propagateInSlaveMode()
Method to propagate the orbit in slave mode.
|
void |
saveVTSFiles(String outputDir,
String resultName)
Save the VTS files.
|
void |
saveVTSFiles(String outputDir,
String resultName,
String dateTime)
Save the VTS files.
|
void |
saveVTSFiles(String outputDir,
String resultName,
String dateTime,
String varListFilename)
Save the VTS files.
|
public Psimu(fr.cnes.sirius.patrius.orbits.Orbit initialOrbitIn, fr.cnes.sirius.patrius.bodies.OneAxisEllipsoid earthIn, UserFramesConfsEnum userFramesConfigurationIn, AbstractNumericalIntegratorData numericalIntegratorDataIn, fr.cnes.sirius.patrius.assembly.Vehicle vehicleIn, fr.cnes.sirius.patrius.propagation.MassProvider massModelIn, fr.cnes.sirius.patrius.forces.ForceModelsData forceModelsIn, fr.cnes.genopus.nonWidget.maneuvers.CustomManeuverSequence maneuversSeq, fr.cnes.sirius.patrius.attitudes.AttitudeProvider attitudesSequenceIn) throws PsimuException
earthIn
- earth shape.userFramesConfigurationIn
- user frames configuration.initialOrbitIn
- initial orbit to propagatenumericalIntegratorDataIn
- numerical integrator datavehicleIn
- vehiclemassModelIn
- mass model.forceModelsIn
- force models.maneuversSeq
- maneuvers sequence.attitudesSequenceIn
- attitude sequence (it might be null if no attitude laws are expected)PsimuException
- in case of problem creating the propagator.public fr.cnes.sirius.patrius.propagation.SpacecraftState propagateInSlaveMode() throws PsimuPropagationException
PsimuPropagationException
- in case the propagation fails.public void propagateInMasterMode(OutputConfig outputConfig, List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect, Psimu.StorageType storageType) throws PsimuPropagationException
eventsToDetect
- list of events to detect (it might be null if no single events have to be
detected)outputConfig
- output configuration (it might be null for slave mode propagation)storageType
- storage type to save the results.PsimuPropagationException
- psimu exceptionpublic void propagateInMasterMode(OutputConfig outputConfig, List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect, Psimu.StorageType storageType, String resultName) throws PsimuPropagationException
eventsToDetect
- list of events to detect (it might be null if no single events have to be
detected)outputConfig
- output configuration (it might be null for slave mode propagation)storageType
- storage type to save the results.resultName
- prefix for the results.PsimuPropagationException
- psimu exceptionpublic void propagateInMasterMode(OutputConfig outputConfig, List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect, Psimu.StorageType storageMemory, Psimu.StorageType storageFile) throws PsimuPropagationException
eventsToDetect
- list of events to detect (it might be null if no single events have to be
detected)outputConfig
- output configuration (it might be null for slave mode propagation)storageMemory
- memory storage type to save the results.storageFile
- file storage type to save the results.PsimuPropagationException
- psimu exceptionpublic void propagateInMasterMode(OutputConfig outputConfig, List<fr.cnes.genopus.nonWidget.events.CustomEventDetector> eventsToDetect, Psimu.StorageType storageMemory, Psimu.StorageType storageFile, String resultName) throws PsimuPropagationException
eventsToDetect
- list of events to detect (it might be null if no single events have to be
detected)outputConfig
- output configuration (it might be null for slave mode propagation)storageMemory
- memory storage type to save the results.storageFile
- file storage type to save the results.resultName
- prefix for the results.PsimuPropagationException
- psimu exceptionpublic List<Map<String,Object>> getVariablesList() throws PsimuException
PsimuException
- if problem when getting the listpublic List<Map<String,Object>> getVariablesWithoutEventsList() throws PsimuException
PsimuException
- if problem when getting the listpublic List<Map<String,Object>> getVariablesOnlyEventsList() throws PsimuException
PsimuException
- if problem when getting the listpublic Map<String,Object> getVariables(int index) throws PsimuOutputManagerException
index
- index in the listPsimuOutputManagerException
- output manager exceptionpublic Map<String,Object> getVariablesWithoutEvents(int index) throws PsimuOutputManagerException
index
- index in the listPsimuOutputManagerException
- output manager exceptionpublic Map<String,Object> getVariablesOnlyEvents(int index) throws PsimuOutputManagerException
index
- index in the listPsimuOutputManagerException
- output manager exceptionpublic Object getVariable(int index, String key) throws PsimuOutputManagerException
index
- index in the listkey
- key parameter defining the element.PsimuOutputManagerException
- output manager exceptionpublic Object getVariableWithoutEvents(int index, String key) throws PsimuOutputManagerException
index
- index in the listkey
- key parameter defining the element.PsimuOutputManagerException
- output manager exceptionpublic Object getVariableOnlyEvents(int index, String key) throws PsimuOutputManagerException
index
- index in the listkey
- key parameter defining the element.PsimuOutputManagerException
- output manager exceptionpublic List<fr.cnes.sirius.patrius.propagation.SpacecraftState> getSpacecraftStateList() throws PsimuException
PsimuException
- if the list does not exist because the propagation has not been performed or
because it was done un FILE storage mode.public List<fr.cnes.sirius.patrius.propagation.SpacecraftState> getSpacecraftStateWithoutEventsList() throws PsimuException
PsimuException
- if the list does not exist because the propagation has not been performed or
because it was done un FILE storage mode.public List<fr.cnes.sirius.patrius.propagation.SpacecraftState> getSpacecraftStateOnlyEventsList() throws PsimuException
PsimuException
- if the list does not exist because the propagation has not been performed or
because it was done un FILE storage mode.public fr.cnes.sirius.patrius.propagation.SpacecraftState getSpacecraftState(int index) throws PsimuException
index
- index of the spacecraft state to get.PsimuException
- if the list does not exist because the propagation has not been performed or
because it was done un FILE storage mode.public fr.cnes.sirius.patrius.propagation.SpacecraftState getSpacecraftStateWithoutEvents(int index) throws PsimuException
index
- index of the spacecraft state to get.PsimuException
- if the list does not exist because the propagation has not been performed or
because it was done un FILE storage mode.public fr.cnes.sirius.patrius.propagation.SpacecraftState getSpacecraftStateOnlyEvents(int index) throws PsimuException
index
- index of the spacecraft state to get.PsimuException
- if the list does not exist because the propagation has not been performed or
because it was done un FILE storage mode.public fr.cnes.genopus.nonWidget.maneuvers.CustomManeuverSequence getManeuversSequence()
public fr.cnes.sirius.patrius.propagation.numerical.NumericalPropagator getNumPropagator()
public fr.cnes.sirius.patrius.propagation.MassProvider getMassModel()
public fr.cnes.sirius.patrius.forces.ForceModelsData getfModels()
public fr.cnes.sirius.patrius.orbits.Orbit getInitialOrbit()
public fr.cnes.sirius.patrius.bodies.OneAxisEllipsoid getEarth()
public double getPropagationDuration()
public fr.cnes.sirius.patrius.assembly.Assembly getAssembly()
public void printSV(String title, fr.cnes.sirius.patrius.orbits.Orbit originalOrbit, fr.cnes.sirius.patrius.frames.Frame outputFrame, fr.cnes.sirius.patrius.propagation.MassProvider massModelIn) throws fr.cnes.sirius.patrius.utils.exception.PatriusException
AppPSimu.setVerbose(boolean)
is
available to modify it).title
- titleoriginalOrbit
- original orbitoutputFrame
- output framemassModelIn
- mass modelfr.cnes.sirius.patrius.utils.exception.PatriusException
- if internal error occurspublic void addForceModel(fr.cnes.sirius.patrius.forces.ForceModel forceModel) throws PsimuException
forceModel
- force model to be added.PsimuException
- if force model is null or if its acceleration cannot be computed.public void saveVTSFiles(String outputDir, String resultName) throws PsimuException
outputDir
- output directory.resultName
- result name to compose the filename.PsimuException
- In case the files cannot be generated.public void saveVTSFiles(String outputDir, String resultName, String dateTime) throws PsimuException
outputDir
- output directory.resultName
- result name to compose the filename.dateTime
- current date-time.PsimuException
- In case the files cannot be generated.public void saveVTSFiles(String outputDir, String resultName, String dateTime, String varListFilename) throws PsimuException
outputDir
- output directory.resultName
- result name to compose the filename.dateTime
- current date-time.varListFilename
- name of the file containing the list of output variables.PsimuException
- In case the files cannot be generated.public void closeDataBaseConnection()
Copyright © 2023. All rights reserved.