Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature schedule #128

Merged
merged 25 commits into from
Apr 30, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
ab71596
notebook creates data differently, ladds reads new different data
albertNos Dec 14, 2021
c6f0d63
reworked constellation data created by updated notebook
albertNos Dec 14, 2021
82c4792
quick guide in README,clang format
albertNos Dec 14, 2021
980abdc
documentation for notebook usage + removed discard objects
albertNos Dec 15, 2021
2617b50
Merge branch 'main' into featureNotebook
albertNos Dec 22, 2021
078926d
unused include, string->auto
albertNos Dec 22, 2021
06b2351
Merge branch 'main' into featureNotebook
albertNos Dec 22, 2021
d0d5a1c
yaml.dump + further documentation
albertNos Dec 28, 2021
654c31f
rerun tests
albertNos Feb 28, 2022
23de322
Merge branch 'main' into featureNotebook
albertNos Feb 28, 2022
3c937c5
changed wrong constructor signature in .h after merge
albertNos Feb 28, 2022
3fadba3
clangformat
albertNos Feb 28, 2022
e265675
notebook: reworked documentation and fixed some code
albertNos Mar 1, 2022
aba726a
Constellations uses ConfigReader instead of YAML::Node
albertNos Mar 17, 2022
6aa03c6
constellation insertion based on calendar time + few changes
albertNos Apr 18, 2022
f624b6b
added constellation data
albertNos Apr 18, 2022
736cb5f
id numberspaces for constellations
albertNos Apr 18, 2022
9820b6a
schedule now precomputed and constellations with launch before iterat…
albertNos Apr 19, 2022
5c3e577
config attribute referenceTime
albertNos Apr 19, 2022
3c9afc6
clangformat
albertNos Apr 19, 2022
15f3eae
several change requests
albertNos Apr 23, 2022
265770a
ID distribution considering constellations
albertNos Apr 27, 2022
08ae276
cf
albertNos Apr 27, 2022
d42c9ce
rename function in constellation class
albertNos Apr 27, 2022
ffb1ac9
typo
FG-TUM Apr 28, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 26 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,31 @@ For this set the CMake variables: `AUTOPAS_LOG_TUNINGDATA=ON` and `AUTOPAS_LOG_
## Processing TLE Input
Data on current satellites etc. is often found [online](https://www.space-track.org/) in the [TLE format](https://en.wikipedia.org/wiki/Two-line_element_set). We include a Jupyter notebook which can be used to process TLE data with pykep to create and analyze suitable datasets. Detailed instructions can be found in the notebook in `notebooks/Data Processing.ipynb`.

## Generating and including Constellations
Satellite constellations (e.g. Starlink, OneWeb) are usually described by a list of orbital shells.
An orbital shell is described by a 4-tuple with information about `altitude`, `inclination`, `number of
planes`, and `number of satellites` per plane. We provide a notebook
[`notebooks/ConstellationGeneration/ConstellationGeneration.ipynb`](notebooks/ConstellationGeneration/ConstellationGeneration.ipynb) that can be used

### How constellation satellites are inserted into the simulation

The insertion of a constellation takes as long as specified by the `duration`
parameter in the respective .yaml file. The time it takes to insert one shell of
a constellation depends on the percentage of satellites the shell contributes to
the constellation. Satellites of each orbital shell are inserted plane by plane
and linearly over time.

### Including the constellation data in simulation (`io` section):

In the configuration file for the simulation, include the constellation(s) by
defining the following fields:
* `constellationList`: Semicolon (`;`) separated list of constellation names. E.g. `Astra;Starlink;OneWeb`
* `constellationFrequency`: Number of timesteps between constellation insertions.
* `constellationCutoff`: Satellites are inserted with a delay, if there is an object within this range.
* `altitudeSpread`: `[km]` Three times the standard deviation of the normal distribution describing
the imprecision of orbital insertion. ~99.74% of satellites deviate by less than this value from the
mean altitude.

## Output

LADDS has multiple options for output that can be (de)activated mostly independent of each other via YAML. See [`cfg/default_cfg.yaml`](cfg/default_cfg.yaml) for relevant options.
Expand Down Expand Up @@ -139,5 +164,4 @@ Due to burn ups or breakups the number of particles in any iteration might diffe
To keep file size reasonable compression is supported.

### CSV
If HDF5 output is disabled entirely, collision data is written in a `.csv` file in ASCII layout.

If HDF5 output is disabled entirely, collision data is written in a `.csv` file in ASCII layout.
3 changes: 2 additions & 1 deletion cfg/default_cfg.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ sim:
minutes: 0. # as floating points
hours: 0. # as floating points
days: 0. # as floating points
referenceTime: 2022-01-01 # calendar day associated with simulation start at iteration 0 (yyyy/mm/dd)
maxAltitude: 10000 # Maximum satellite altitude above earth core. This number times two is the simulation box length. [km]
minAltitude: 150 # Everything below this altitude above ground will be considered burning up [km]
deltaT: 10.0 # [s]
Expand Down Expand Up @@ -43,7 +44,7 @@ io:
writeFrequency: 1000 # Frequency of writing to the hdf5 file [iterations]
compressionLevel: 4 # Valid Levels: 0 (no compression) - 9 (max compression)

#constellationList: AstraPhase2,100,7200 # ';'-seperated constellations consisting of path (to constellation directory), start time, duration
#constellationList: AstraPhase2 # ';'-separated constellations consisting of path (to constellation directory)
constellationFrequency: 10 # Frequency of adding satellites to simulation [iterations]
constellationCutoff: 0.1 # satellites of constellations are only inserted when there is no object within constellationCutoff range
altitudeSpread: 1.0 # [km] normal distributed altitude deviations are usually smaller than this value (~99.74% chance)
Expand Down
3 changes: 1 addition & 2 deletions data/.gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
initial_population.csv filter=lfs diff=lfs merge=lfs -text
*/pos_*.csv filter=lfs diff=lfs merge=lfs -text
*/v_*.csv filter=lfs diff=lfs merge=lfs -text
*/shells_*.txt filter=lfs diff=lfs merge=lfs -text
*/xparams_*.txt filter=lfs diff=lfs merge=lfs -text
*/shells_*.yaml filter=lfs diff=lfs merge=lfs -text
4 changes: 2 additions & 2 deletions data/Amazon/pos_Amazon.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/Amazon/shells_Amazon.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/Amazon/shells_Amazon.yaml
Git LFS file not shown
2 changes: 1 addition & 1 deletion data/Amazon/v_Amazon.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/Amazon/xparams_Amazon.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/AstraPhase1/pos_AstraPhase1.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/AstraPhase1/shells_AstraPhase1.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/AstraPhase1/shells_AstraPhase1.yaml
Git LFS file not shown
2 changes: 1 addition & 1 deletion data/AstraPhase1/v_AstraPhase1.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/AstraPhase1/xparams_AstraPhase1.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/AstraPhase2/pos_AstraPhase2.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/AstraPhase2/shells_AstraPhase2.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/AstraPhase2/shells_AstraPhase2.yaml
Git LFS file not shown
4 changes: 2 additions & 2 deletions data/AstraPhase2/v_AstraPhase2.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/AstraPhase2/xparams_AstraPhase2.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/AstraPhase3/pos_AstraPhase3.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/AstraPhase3/shells_AstraPhase3.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/AstraPhase3/shells_AstraPhase3.yaml
Git LFS file not shown
4 changes: 2 additions & 2 deletions data/AstraPhase3/v_AstraPhase3.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/AstraPhase3/xparams_AstraPhase3.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/GuoWang/pos_GuoWang.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/GuoWang/shells_GuoWang.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/GuoWang/shells_GuoWang.yaml
Git LFS file not shown
4 changes: 2 additions & 2 deletions data/GuoWang/v_GuoWang.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/GuoWang/xparams_GuoWang.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/OneWebPhase1/pos_OneWebPhase1.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/OneWebPhase1/shells_OneWebPhase1.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/OneWebPhase1/shells_OneWebPhase1.yaml
Git LFS file not shown
4 changes: 2 additions & 2 deletions data/OneWebPhase1/v_OneWebPhase1.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/OneWebPhase1/xparams_OneWebPhase1.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/OneWebPhase2/pos_OneWebPhase2.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/OneWebPhase2/shells_OneWebPhase2.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/OneWebPhase2/shells_OneWebPhase2.yaml
Git LFS file not shown
4 changes: 2 additions & 2 deletions data/OneWebPhase2/v_OneWebPhase2.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/OneWebPhase2/xparams_OneWebPhase2.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/StarlinkGen1/pos_StarlinkGen1.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/StarlinkGen1/shells_StarlinkGen1.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/StarlinkGen1/shells_StarlinkGen1.yaml
Git LFS file not shown
2 changes: 1 addition & 1 deletion data/StarlinkGen1/v_StarlinkGen1.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/StarlinkGen1/xparams_StarlinkGen1.txt

This file was deleted.

3 changes: 0 additions & 3 deletions data/StarlinkGen2/pos_StarlinkGen2.csv

This file was deleted.

3 changes: 0 additions & 3 deletions data/StarlinkGen2/shells_StarlinkGen2.txt

This file was deleted.

3 changes: 0 additions & 3 deletions data/StarlinkGen2/v_StarlinkGen2.csv

This file was deleted.

3 changes: 0 additions & 3 deletions data/StarlinkGen2/xparams_StarlinkGen2.txt

This file was deleted.

4 changes: 2 additions & 2 deletions data/Telesat/pos_Telesat.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/Telesat/shells_Telesat.txt

This file was deleted.

3 changes: 3 additions & 0 deletions data/Telesat/shells_Telesat.yaml
Git LFS file not shown
4 changes: 2 additions & 2 deletions data/Telesat/v_Telesat.csv
Git LFS file not shown
3 changes: 0 additions & 3 deletions data/Telesat/xparams_Telesat.txt

This file was deleted.

Loading