-
Notifications
You must be signed in to change notification settings - Fork 9
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
Large difference of proton fluxes when compared with Spenvis #85
Comments
Yes please. I'd need a more detailed bug report. |
I just shared a Drive folder with your email. Please let me know if it doesn't work. |
Would you please post the reproducer in this GitHub issue? |
Sure. Graphs? Or table with numbers? Or both? Sorry for the ignorance. |
Here's a minimal reproducible example. It's not a small script, but it contains all the necessary libraries to run. In order to run, the script needs the following libraries: numpy, scipy, pandas, matplotlib, beyond, astropy, orekit(10), and naturally radbelt. I'm running it via conda. For each of the XYZ coordinates, the code retrieves the fluxes per energy (the exact same energies used by Spenvis), which are later averaged for the full orbit (in the same fashion as Spenvis). In order to compare the fluxes with those from Spenvis, I attach here the trapped electron and proton fluxes for two independent cases: 590x590km, 97.8deg orbit; and 1,000x1,000km, 97.8deg orbit. The script produces three text files:
The electron fluxes from radbelt match very well with those from Spenvis, but the proton fluxes from radbelt are orders of magntitude higher than the Spenvis ones. `import orekit # type: ignore from os.path import exists from orekit.pyhelpers import setup_orekit_curdir # type: ignore from org.orekit.frames import FramesFactory # type: ignore import numpy as np import astropy.constants as const import matplotlib.pyplot as plt import pandas as pd utc = TimeScalesFactory.getUTC() earth = OneAxisEllipsoid(Constants.WGS84_EARTH_EQUATORIAL_RADIUS, Constants.WGS84_EARTH_FLATTENING, ecef) eEnergies = np.array([4.0e-02,1.0e-01,2.0e-01,3.0e-01,4.0e-01,5.0e-01,6.0e-01,7.0e-01,8.0e-01, pEnergies = np.array([1.0e-01,1.5e-01,2.0e-01,3.0e-01,4.0e-01,5.0e-01,6.0e-01,7.0e-01, class KeplerPropagator:
class KeplerOrbit:
class Spacecraft: def mod(x, y):
def eccentric_anomaly_from_true(e, f): def mean_anomaly_from_true(e, f): def nadirPointing(frame, body): def orbit_period(ra, rp):
class AEP8:
def main():
if name == 'main': spenvis_590km_sso_trpe.txt |
Would you please turn this into a minimal example? For example, if the details of the orbit are not necessary, can you provide an example that compares the fluxes at a fixed time and location? |
Wrote a code to propagate an orbit and get the respective fluxes to compare with the results from Spenvis. The electron fluxes match very well with those from Spenvis, but the respective proton fluxes via radbelt are orders of magnitude higher than those from Spenvis.
I can share the code in case interested.
The text was updated successfully, but these errors were encountered: