User Manual 4.0 Multi events detection : Différence entre versions

De Wiki
Aller à : navigation, rechercher
m (1 révision importée)
 
(4 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
 
 
== Introduction ==
 
== Introduction ==
 
=== Scope ===
 
=== Scope ===
Ligne 8 : Ligne 6 :
 
Those event detectors are available in the packages :
 
Those event detectors are available in the packages :
  
 
+
{| class="wikitable"
|=Library|=Javadoc
+
|-
|Patrius |[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/events/package-summary.html Package fr.cnes.sirius.patrius.propagation.event]
+
! scope="col"| Library
|Patrius |[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/events/package-summary.html Package fr.cnes.sirius.patrius.events]
+
! scope="col"| Javadoc
 +
|-
 +
|Patrius  
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/package-summary.html Package fr.cnes.sirius.patrius.propagation.event]
 +
|-
 +
|Patrius  
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/events/package-summary.html Package fr.cnes.sirius.patrius.events]
 +
|}
  
 
=== Links ===
 
=== Links ===
 
See :  
 
See :  
 
(% style="margin-left:30px;list-style-type:square;" %)
 
 
* [ORB_MPRO_Home Multi propagation chapter]
 
* [ORB_MPRO_Home Multi propagation chapter]
 
* [MIS_EVT_Home Events detection introduction chapter]
 
* [MIS_EVT_Home Events detection introduction chapter]
Ligne 29 : Ligne 32 :
 
=== Multi events detectors ===
 
=== Multi events detectors ===
 
The following events detectors could be used in mono and multi spacecraft propagation :
 
The following events detectors could be used in mono and multi spacecraft propagation :
* [{{PathCurrentJavaDoc}}//fr/cnes/sirius/patrius/propagation/events/ThreeBodiesAngleDetector.html ThreeBodiesAngleDetector]
+
* [{{JavaDoc4.0}}//fr/cnes/sirius/patrius/propagation/events/ThreeBodiesAngleDetector.html ThreeBodiesAngleDetector]
* [{{PathCurrentJavaDoc}}//fr/cnes/sirius/patrius/propagation/events/ExtremaThreeBodiesAngleDetector.html ExtremaThreeBodiesAngleDetector]
+
* [{{JavaDoc4.0}}//fr/cnes/sirius/patrius/propagation/events/ExtremaThreeBodiesAngleDetector.html ExtremaThreeBodiesAngleDetector]
* [{{PathCurrentJavaDoc}}//fr/cnes/sirius/patrius/events/sensor/SatToSatMutualVisibilityDetector.html SatToSatMutualVisibilityDetector]
+
* [{{JavaDoc4.0}}//fr/cnes/sirius/patrius/events/sensor/SatToSatMutualVisibilityDetector.html SatToSatMutualVisibilityDetector]
  
These three detectors extends [{{PathCurrentJavaDoc}}''fr/cnes/sirius/patrius/propagation/events/AbstractDetector.html AbstractDetector] and implements [{{PathCurrentJavaDoc}}''fr/cnes/sirius/patrius/propagation/events/multi/MultiEventDetector.html MultiEventDetector].
+
These three detectors extends [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/AbstractDetector.html AbstractDetector] and implements [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/multi/MultiEventDetector.html MultiEventDetector].
  
Using [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/numerical/multi/MultiNumericalPropagator.html multi numerical propagator], all states concerned by the detection are recovered from the global state vector.
+
Using [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/numerical/multi/MultiNumericalPropagator.html multi numerical propagator], all states concerned by the detection are recovered from the global state vector.<br>
Using one of the [{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/Propagator.html mono propagator] (analytical or numerical), the main state is recovered from the propagation. The others states concerned by the detection are recovered from a PVCoordinatesProvider.
+
Using one of the [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/Propagator.html mono propagator] (analytical or numerical), the main state is recovered from the propagation. The others states concerned by the detection are recovered from a PVCoordinatesProvider.
  
 
The meaning of the g switching function for the concerned event detectors, and their particularities are presented in dedicated chapter :
 
The meaning of the g switching function for the concerned event detectors, and their particularities are presented in dedicated chapter :
* [MIS_ORB_Home Orbit determination events chapter ]for [{{PathCurrentJavaDoc}}''fr/cnes/sirius/patrius/propagation/events/ThreeBodiesAngleDetector.html ThreeBodiesAngleDetector] and [{{PathCurrentJavaDoc}}''fr/cnes/sirius/patrius/propagation/events/ExtremaThreeBodiesAngleDetector.html ExtremaThreeBodiesAngleDetector]
+
* [MIS_ORB_Home Orbit determination events chapter]for [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/ThreeBodiesAngleDetector.html ThreeBodiesAngleDetector] and [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/ExtremaThreeBodiesAngleDetector.html ExtremaThreeBodiesAngleDetector]
* [MIS_STASAT_Home Ground stations and satellites events] for [{{PathCurrentJavaDoc}}//fr/cnes/sirius/patrius/events/sensor/SatToSatMutualVisibilityDetector.html SatToSatMutualVisibilityDetector]
+
* [MIS_STASAT_Home Ground stations and satellites events] for [{{JavaDoc4.0}}/fr/cnes/sirius/patrius/events/sensor/SatToSatMutualVisibilityDetector.html SatToSatMutualVisibilityDetector]
  
 
== Getting Started ==
 
== Getting Started ==
In multi numerical propagation case, the states concerned by the detection are identified with their ID. Specific constructors should be used in multi numerical propagation case.
+
In multi numerical propagation case, the states concerned by the detection are identified with their ID. Specific constructors should be used in multi numerical propagation case.<br>
 
These constructors take as parameter the ID of states concerned by the detection.
 
These constructors take as parameter the ID of states concerned by the detection.
  
Ligne 71 : Ligne 74 :
 
== Contents ==
 
== Contents ==
 
=== Interfaces ===
 
=== Interfaces ===
|=Interface|=Summary|=Javadoc
+
 
| EventDetector|This interface represents an event finder.|[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/events/EventDetector.html EventDetector ]
+
{| class="wikitable"
| MultiEventDetector|This interface represents an event finder in multi propagation case.|[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/events/multi/MultiEventDetector.html MultiEventDetector]
+
|-
 +
! scope="col"| Interface
 +
! scope="col"| Summary
 +
! scope="col"| Javadoc
 +
|-
 +
| EventDetector
 +
|This interface represents an event finder.
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/EventDetector.html EventDetector ]
 +
|-
 +
| MultiEventDetector
 +
|This interface represents an event finder in multi propagation case.
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/multi/MultiEventDetector.html MultiEventDetector]
 +
|}
  
 
=== Classes ===
 
=== Classes ===
|=Classe|=Summary|=Javadoc
+
 
| ThreeBodiesAngleDetector|This class handles events representing the reaching of a predetermined angle between three bodies.|[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/events/ThreeBodiesAngleDetector.html ThreeBodiesAngleDetector]
+
{| class="wikitable"
| ExtremaThreeBodiesAngleDetector|This class handles events representing the reaching of of extrema for the angle between three bodies.|[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/propagation/events/ExtremaThreeBodiesAngleDetector.html ExtremaThreeBodiesAngleDetector]
+
|-
| SatToSatMutualVisibilityDetector|This class handles events representing the mutual visibility between two spacecraft's sensors.|[{{PathCurrentJavaDoc}}/fr/cnes/sirius/patrius/events/sensor/SatToSatMutualVisibilityDetector.html SatToSatMutualVisibilityDetector]
+
! scope="col"| Class
 +
! scope="col"| Summary
 +
! scope="col"| Javadoc
 +
|-
 +
| ThreeBodiesAngleDetector
 +
|This class handles events representing the reaching of a predetermined angle between three bodies.
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/ThreeBodiesAngleDetector.html ThreeBodiesAngleDetector]
 +
|-
 +
| ExtremaThreeBodiesAngleDetector
 +
|This class handles events representing the reaching of of extrema for the angle between three bodies.
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/propagation/events/ExtremaThreeBodiesAngleDetector.html ExtremaThreeBodiesAngleDetector]
 +
|-
 +
| SatToSatMutualVisibilityDetector
 +
|This class handles events representing the mutual visibility between two spacecraft's sensors.
 +
|[{{JavaDoc4.0}}/fr/cnes/sirius/patrius/events/sensor/SatToSatMutualVisibilityDetector.html SatToSatMutualVisibilityDetector]
 +
|}
 +
 
 +
[[Category:User_Manual_4.0_Mission]]

Version actuelle en date du 21 février 2018 à 14:18

Introduction

Scope

Here are presented all the multi events detectors that could be used in multi propagation.

Javadoc

Those event detectors are available in the packages :

Library Javadoc
Patrius Package fr.cnes.sirius.patrius.propagation.event
Patrius Package fr.cnes.sirius.patrius.events

Links

See :

  • [ORB_MPRO_Home Multi propagation chapter]
  • [MIS_EVT_Home Events detection introduction chapter]

Useful Documents

None as of now.

Package Overview

None as of now.

Features Description

Multi events detectors

The following events detectors could be used in mono and multi spacecraft propagation :

These three detectors extends AbstractDetector and implements MultiEventDetector.

Using multi numerical propagator, all states concerned by the detection are recovered from the global state vector.
Using one of the mono propagator (analytical or numerical), the main state is recovered from the propagation. The others states concerned by the detection are recovered from a PVCoordinatesProvider.

The meaning of the g switching function for the concerned event detectors, and their particularities are presented in dedicated chapter :

Getting Started

In multi numerical propagation case, the states concerned by the detection are identified with their ID. Specific constructors should be used in multi numerical propagation case.
These constructors take as parameter the ID of states concerned by the detection.

Here after is presented the instanciation of a SatToSatMutualVisibilityDetectorin multi propagation case :

// Initialize multi numerical propagator
final FirstOrderIntegrator integratorMultiSat = new DormandPrince853Integrator(.1, 60, 1e-9, 1e-9);
MultiNumericalPropagator mainPropagator = new MultiNumericalPropagator(integratorMultiSat);
mainPropagator.addInitialState(mainState, STATE1);
mainPropagator.addInitialState(secondaryState, STATE2);
mainPropagator.setAttitudeProvider(attitudeProv, STATE1);
mainPropagator.setAttitudeProvider(attitudeProv, STATE2);
 
// Create SatToSatMultualVisibilityDetector
final MultiEventDetector detector = new SatToSatMutualVisibilityDetector(STATE1, STATE2, mainSpacecraftSensorModel1, secondarySpacecraftSensorModel2, false, 0.01, 10.e-10);
 
// Add detector
mainPropagator.addEventDetector(detector1);
 
// propagate
Map<String, SpacecraftState> endStates = mainPropagator.propagate(date.shiftedBy(duration));

If a wrong constructor is used, i.e a constructor for mono propagation, an exception will be raised during propagation.

Contents

Interfaces

Interface Summary Javadoc
EventDetector This interface represents an event finder. EventDetector
MultiEventDetector This interface represents an event finder in multi propagation case. MultiEventDetector

Classes

Class Summary Javadoc
ThreeBodiesAngleDetector This class handles events representing the reaching of a predetermined angle between three bodies. ThreeBodiesAngleDetector
ExtremaThreeBodiesAngleDetector This class handles events representing the reaching of of extrema for the angle between three bodies. ExtremaThreeBodiesAngleDetector
SatToSatMutualVisibilityDetector This class handles events representing the mutual visibility between two spacecraft's sensors. SatToSatMutualVisibilityDetector