
This repository is part of the SatelliteToolbox.jl ecosystem.
This repository contains scripts to generate space index sets for the
SatelliteToolbox.jl ecosystem. The generated files are stored in the files
directory and are updated automatically every day by a GitHub action.
| File | Description |
|---|---|
f107_observed_prediction_coefficients.csv |
Coefficients to predict the observed F10.7 solar flux index |
f107_adjusted_prediction_coefficients.csv |
Coefficients to predict the adjusted F10.7 solar flux index |
The script fit_f107.jl generates the
coefficients to predict the F10.7 solar flux index for satellite decay analysis. It fits
either the observed or the adjusted data obtained from
Celestrak, from 1957-10-02 up to the current day, considering the
following harmonic model:
where
-
$F_0$ : the mean value of the F10.7 index [sfu]; -
$a_i$ : the sine coefficients for the i-th harmonic [sfu]; -
$b_i$ : the cosine coefficients for the i-th harmonic [sfu]; and -
$P$ : the period of the solar cycle [days].
This model was based on the information available in [1].
The output is stored in the CSV files
files/f107_observed_prediction_coefficients.csv
(observed index) and
files/f107_adjusted_prediction_coefficients.csv
(adjusted index) with the following columns:
t₀, F₀, P, a₁, a₂, a₃, a₄, a₅, a₆, b₁, b₂, b₃, b₄, b₅, b₆
where t₀ is expressed in Julian day, F₀ and the harmonic coefficients in sfu, and P
in days.
The script requires Julia and its project environment can be instantiated with:
julia --project=scripts/f107_prediction -e 'using Pkg; Pkg.instantiate()'Afterward, run the fitting with:
julia --project=scripts/f107_prediction scripts/f107_prediction/fit_f107.jlThe output file path can be passed as the first command-line argument and the F10.7 index
set (observed or adjusted) as the second one. If omitted, the script fits the observed
index and writes the file next to itself:
julia --project=scripts/f107_prediction scripts/f107_prediction/fit_f107.jl files/f107_observed_prediction_coefficients.csv observed
julia --project=scripts/f107_prediction scripts/f107_prediction/fit_f107.jl files/f107_adjusted_prediction_coefficients.csv adjustedThe script prints a report of each step, including the convergence status, the fitted parameters, and the root-mean-square error of the residuals.
The GitHub action
f107_prediction.yml runs the fitting script
every day at 21:00 UTC for both the observed and the adjusted indices, writes the outputs
to the files directory, and commits the result if the coefficients changed. It can also be triggered manually from the Actions
tab using the workflow_dispatch event.
- [1] D. Whitlock (2006). Modeling the Effect of High Solar Activity on the Orbital Debris Environment. Orbital Debris Quarterly News, vol. 10, n. 2, April, 2006.