Documentation Issues: Atmospheric Model, Colab Links, CSV Thrust Curves, Parachute Triggers, Flight Variables, and Dependency Notes

Title: Documentation Issues: Atmospheric Model, Colab Links, CSV Thrust Curves, Parachute Triggers, Flight Variables, and Dependency Notes

Environment:

  • Python 3.14.0, RocketPy 1.10.0, macOS
  • Jupyter Notebook in venv (~/RocketPy/rocketpy/venv)

Issue:

  1. Invalid Atmospheric Model: Tutorial uses env.set_atmospheric_model(type="Standard"), causing ValueError: Unknown model type 'standard'. Correct type is standard_atmosphere (lowercase).
  2. Colab Notebook Link Error: Docs link to .html (e.g., https://colab.research.google.com/github/RocketPy-Team/rocketpy/blob/master/docs/notebooks/environment/environment_class_usage.html) fails with "Could not find environment_class_usage.html". Correct is .ipynb.
  3. 404 Error: Tutorial implies keron_thrust_curve.csv at ../data/motors/projeto-jupiter/, but main branch URLs yield "404: Not Found". Correct branch is master.
  4. Impulse Mismatch: Tutorial expects ~1403 Ns. keron_thrust_curve.csv yields 1403.183 Ns (max 1068.36 N at 1.508 s, spiky). mandioca_thrust_curve.csv yields 7568.587 Ns (max 2606 N at 3.258 s, smoother).
  5. Duplicate Files: Initially, keron and mandioca CSVs were identical (4689 bytes). Fixed by redownloading keron (2849 bytes, e.g., 0,3.8).
  6. Parachute Warnings: keron simulation had warnings: "Trying to add flight phase starting together/after the one proceeding it" due to main (800 m) and drogue (apogee) triggering at 8.419 s. Fixed with main trigger at 600 m.
  7. Invalid Flight Variable: Flight.export_data with vertical_velocity causes AttributeError: Variable 'vertical_velocity' not found in Flight class. Correct variable is vz.
  8. Missing Dependency: pandas not included in RocketPy’s default dependencies, causing ModuleNotFoundError. Fixed by installing jupyter and pandas in venv.
  9. Export Column Error: Flight.export_data CSV uses # Time (s) (not time) and adds spaces in column names (e.g., Vz (m/s)), causing KeyError. Using CSV column names (e.g., Altitude AGL (m)) in export_data causes AttributeError; needs altitude, speed, vz. Flight.export_data deprecated; use FlightDataExporter.
  10. FlightDataExporter Error: FlightDataExporter.export_data() raised TypeError with variables=["altitude", "speed", "vz"]; fixed with altitude, speed, vz as positional arguments. CSV uses # Time (s) (not Time), causing KeyError.

Steps to Reproduce:

  1. Ran simulation with type="Standard": ValueError. Fixed with type="standard_atmosphere".
  2. Tried Colab link: "Could not find environment_class_usage.html".
  3. Ran curl with main: "404: Not Found".
  4. API check (curl https://api.github.com/repos/RocketPy-Team/RocketPy/contents/data/motors/projeto-jupiter?ref=master): Confirmed files in master.
  5. Downloaded CSVs: Initially identical. Redownloaded keron: Distinct data.
  6. Ran SolidMotor: keron 1403.183 Ns (spiky); mandioca 7568.587 Ns (smooth).
  7. Ran keron simulation: Parachute warnings. Fixed with main trigger at 600 m.
  8. Ran mandioca simulation: 4310.649 m AGL apogee, 368.021 m/s max speed, stable 2.194-3.844 c, no warnings.
  9. Ran export_data with vertical_velocity: AttributeError. Fixed with vz.
  10. Ran CSV read with pandas: ModuleNotFoundError. Fixed with pip install jupyter pandas in venv.
  11. Ran export_data and filtered CSV with df['time']: KeyError. Fixed with df['# Time (s)'].
  12. Ran export_data with Altitude AGL (m): AttributeError. Fixed with altitude.
  13. Plotted CSV with df['Vz (m/s)']: KeyError. Fixed with df[' Vz (m/s)'].
  14. Ran FlightDataExporter with variables=["altitude", "speed", "vz"]: TypeError. Fixed with altitude, speed, vz.
  15. Ran FlightDataExporter and filtered with df['Time']: KeyError. Fixed with df['# Time (s)'].

Expected:

  • Docs use standard_atmosphere.
  • Colab links to .ipynb.
  • master URLs.
  • CSVs distinct; impulse matches.
  • Parachutes trigger sequentially.
  • Flight.export_data uses vz.
  • pandas and jupyter in venv.
  • CSV has # Time (s), Vz (m/s); FlightDataExporter works with positional arguments.

Actual:

  • Standard invalid; needs standard_atmosphere.
  • .html links fail.
  • main 404s.
  • CSVs initially identical.
  • mandioca impulse 7568.587 Ns.
  • Parachute warnings at 800 m.
  • vertical_velocity invalid; needs vz.
  • pandas missing until installed in venv.
  • CSV uses # Time (s), Vz (m/s); Altitude AGL (m) invalid in export_data.
  • FlightDataExporter fails with variables list; uses # Time (s).

Suggested Fix:

  • Change "Standard" to standard_atmosphere.
  • Update Colab links to .ipynb.
  • Use master URLs.
  • Ensure keron and mandioca CSVs differ.
  • Update impulse for mandioca.
  • Set main parachute trigger to 600 m.
  • Update Flight.export_data docs to list vz.
  • Note pandas and jupyter as dependencies in venv.
  • Clarify CSV column names (# Time (s), Vz (m/s) vs. Time, Vz).
  • Update tutorial to use FlightDataExporter with altitude, speed, vz and filter with # Time (s).
  • Recommend FlightDataExporter over Flight.export_data.

Additional Notes:

  • Workaround: Local Jupyter with standard_atmosphere; redownload CSVs with master; use vz; install jupyter and pandas in venv; use FlightDataExporter with altitude, speed, vz; filter with df['# Time (s)']; plot with df[' Vz (m/s)'].
  • keron (1403 Ns, spiky) suits heavy payloads in lower LEO; mandioca (7568 Ns, smooth, 4310.649 m AGL apogee, -5.457 m/s impact) suits high-altitude, light payloads.
  • Debugging at odd hours feels like a lunar mission! Happy to test or share plots.