feat: Implement 3D flight animation methods using Vedo (Issue #523) by Copilot · Pull Request #950 · RocketPy-Team/RocketPy · GitHub
Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
11 changes: 9 additions & 2 deletions CHANGELOG.md
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
author = "RocketPy Team"

# The full version, including alpha/beta/rc tags
release = "1.12.0"
release = "1.12.1"


# -- General configuration ---------------------------------------------------
Expand Down
4 changes: 2 additions & 2 deletions docs/user/compare_flights.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ This is done following the same steps as in the :ref:`firstsimulation` example.

.. jupyter-execute::

after_tomorrow = datetime.now() + timedelta(days=2)
env = Environment(latitude=-23, longitude=-49, date=after_tomorrow)
tomorrow = datetime.now() + timedelta(days=1)
env = Environment(latitude=-23, longitude=-49, date=tomorrow)
env.set_atmospheric_model(type="Forecast", file="GFS")

cesaroni_motor = SolidMotor(
Expand Down
34 changes: 23 additions & 11 deletions docs/user/environment/1-atm-models/ensemble.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _ensemble_atmosphere:

Ensemble
========

Expand All @@ -21,7 +23,21 @@ Ensemble Forecast
Global Ensemble Forecast System (GEFS)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The ``GEFS`` model is a global ensemble forecast model ...
.. danger::

**GEFS shortcut unavailable**: ``file="GEFS"`` is currently disabled in
RocketPy because NOMADS OPeNDAP is deactivated for this endpoint.

.. note::

If you have a GEFS-compatible NetCDF or OPeNDAP dataset from another
provider (or a local copy), you can still load it explicitly by passing the
dataset path/URL in ``file`` and a compatible mapping in ``dictionary``.


The ``GEFS`` model is a global ensemble forecast system useful for uncertainty
analysis, but RocketPy's automatic ``file="GEFS"`` shortcut is temporarily
disabled.


.. code-block:: python
Expand Down Expand Up @@ -71,20 +87,16 @@ CMC Ensemble
resulted in a change of the model's endpoint. Efforts are underway to \
restore access to the CMC Ensemble model as swiftly as possible.

.. code-block:: python
At the moment, there is no built-in ``file="CMC"`` shortcut in
``Environment.set_atmospheric_model``.

env_cmc = Environment(
date=date_info,
latitude=-21.960641,
longitude=-47.482122,
elevation=640,
)
env_cmc.set_atmospheric_model(type="Ensemble", file="CMC")
env_cmc.all_info()
If you have a CMC-compatible NetCDF or OPeNDAP dataset, load it explicitly by
passing the dataset path/URL in ``file`` and a matching mapping dictionary in
``dictionary``.


Ensemble Reanalysis
-------------------

Ensemble reanalyses are also possible with RocketPy. See the
:ref:`reanalysis_ensemble` section for more information.
:ref:`reanalysis_ensemble` section for more information.
40 changes: 9 additions & 31 deletions docs/user/environment/1-atm-models/forecast.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Global Forecast System (GFS)

Using the latest forecast from GFS is simple.
Set the atmospheric model to ``forecast`` and specify that GFS is the file you want.
Note that since data is downloaded from the NOMADS server, this line of code can
Note that since data is downloaded from a remote OPeNDAP server, this line of code can
take longer than usual.

.. jupyter-execute::
Expand Down Expand Up @@ -111,36 +111,15 @@ The same coordinates for SpacePort America will be used.
High Resolution Window (HIRESW)
-------------------------------

The High Resolution Window (HIRESW) model is a sophisticated weather forecasting
system that operates at a high spatial resolution of approximately 3 km.
It utilizes two main dynamical cores: the Advanced Research WRF (WRF-ARW) and
the Finite Volume Cubed Sphere (FV3), each designed to enhance the accuracy of
weather predictions.
.. danger::

You can easily set up HIRESW in RocketPy by specifying the date, latitude, and
longitude of your location. Let's use SpacePort America as an example.
**HIRESW shortcut unavailable**: ``file="HIRESW"`` is currently disabled in
RocketPy because NOMADS OPeNDAP is deactivated for this endpoint.

.. jupyter-execute::

env_hiresw = Environment(
date=tomorrow,
latitude=32.988528,
longitude=-106.975056,
)
If you have a HIRESW-compatible dataset from another provider (or a local copy),
you can still load it explicitly by passing the path/URL in ``file`` and an
appropriate mapping in ``dictionary``.

env_hiresw.set_atmospheric_model(
type="Forecast",
file="HIRESW",
dictionary="HIRESW",
)

env_hiresw.plots.atmospheric_model()

.. note::

The HRES model is updated every 12 hours, providing forecasts with a \
resolution of 3 km. The model can predict weather conditions up to 48 hours \
in advance. RocketPy uses the CONUS domain with ARW core.


Using Windy Atmosphere
Expand Down Expand Up @@ -248,6 +227,5 @@ Also, the servers may be down or may face high traffic.

.. seealso::

To see a complete list of available models on the NOAA's NOMADS server, visit
`NOMADS <https://nomads.ncep.noaa.gov/>`_.

To browse available NCEP model collections on UCAR THREDDS, visit
`THREDDS NCEP Catalog <https://thredds.ucar.edu/thredds/catalog/grib/NCEP/GFS/Global_0p25deg/catalog.html>`_.
25 changes: 8 additions & 17 deletions docs/user/environment/1-atm-models/soundings.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,31 +57,22 @@ This service allows users to download virtual soundings from numerical weather
prediction models such as GFS, RAP, and NAM, and also real soundings from the
Integrated Global Radiosonde Archive (IGRA).

These options can be retrieved as a text file in GSD format.
By generating such a file through the link above, the file's URL can be used to
import the atmospheric data into RocketPy.

We will use the same sounding station as we did for the Wyoming Soundings.
These options can be retrieved as a text file in GSD format. However,
RocketPy no longer provides a dedicated ``set_atmospheric_model`` type for
NOAA RUC Soundings.

.. note::

Select ROABs as the initial data source, specify the station through its \
WMO-ID, and opt for the ASCII (GSD format) button.

Initialize a new Environment instance:

.. code-block:: python
If you need to use RUC-sounding-like data in RocketPy, convert it to one of the
supported workflows:

url = r"https://rucsoundings.noaa.gov/get_raobs.cgi?data_source=RAOB&latest=latest&start_year=2019&start_month_name=Feb&start_mday=5&start_hour=12&start_min=0&n_hrs=1.0&fcst_len=shortest&airport=83779&text=Ascii%20text%20%28GSD%20format%29&hydrometeors=false&start=latest"

env = Environment()
env.set_atmospheric_model(type="NOAARucSounding", file=url)
env.plots.atmospheric_model()
- Use :ref:`custom_atmosphere` after parsing the text data.
- Use :ref:`reanalysis` or :ref:`forecast` with NetCDF/OPeNDAP sources.

.. note::

The leading `r` in the URL string is used to indicate a raw string, which \
is useful when dealing with backslashes in URLs.



is useful when dealing with backslashes in URLs.
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _standard_atmosphere:

Standard Atmosphere
===================

Expand Down Expand Up @@ -29,4 +31,4 @@ The International Standard Atmosphere can also be reset at any time by using the

.. jupyter-execute::

env.set_atmospheric_model(type="standard_atmosphere")
env.set_atmospheric_model(type="standard_atmosphere")
96 changes: 86 additions & 10 deletions docs/user/environment/3-further/other_apis.rst
Loading