Skip to main content

Code for the Virtual Ship Classroom, where Marine Scientists can combine Copernicus Marine Data with an OceanParcels ship to go on a virtual expedition.

Project description

VirtualShipParcels logo'

Anaconda-release PyPI - Python Version DOI unit-tests codecov


Project Owner Emma Daniels (e.e.daniels1@uu.nl)
Development status Alpha

VirtualShip is a command line simulator allowing students to plan and conduct a virtual research expedition, receiving measurements as if they were coming from actual oceanographic instruments including:

  • ADCP (currents)
  • CTD (conductivity and temperature + biogeochemical variables)
  • XBT (temperature)
  • Ship-mounted underwater measurements (salinity and temperature)
  • Surface drifters
  • Argo float deployments

Along the way, students will encounter realistic problems that may occur during an oceanographic expedition, requiring them to make decisions to adapt their plans accordingly. For example, delays due to equipment failures, pre-depature logistical issues or safety drills.

Installation

For a normal installation do:

conda create -n ship -c conda-forge virtualship
conda activate ship

which creates an environment named ship with the latest version of virtualship. You can replace ship with any name you like.

For a development installation, please follow the instructions detailed in the contributing page.

Usage

[!TIP] See the Quickstart guide in our documentation for a step-by-step introduction to using VirtualShip.

You can run the VirtualShip via the command line interface (CLI) using the virtualship command. It has three subcommands: init, plan, and run.

$ virtualship --help
Usage: virtualship [OPTIONS] COMMAND [ARGS]...

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  init  Initialize a directory for a new expedition, with an...
  plan  Launch UI to help build expedition configuration (YAML) file.
  run   Execute the expedition simulations.
$ virtualship init --help
Usage: virtualship init [OPTIONS] PATH

  Initialize a directory for a new expedition, with an expedition.yaml file.

  If --mfp-file is provided, it will generate the expedition.yaml from the MPF
  file instead.

Options:
  --from-mfp TEXT  Partially initialise a project from an exported xlsx or csv
                   file from NIOZ' Marine Facilities Planning tool
                   (specifically the "Export Coordinates > DD" option). User
                   edits are required after initialisation.
  --help           Show this message and exit.
$ virtualship plan --help
Usage: virtualship plan [OPTIONS] PATH

  Launch UI to help build expedition configuration (YAML) file.

  Should you encounter any issues with using this tool, please report an issue
  describing the problem to the VirtualShip issue tracker at:
  https://github.com/OceanParcels/virtualship/issues"

Options:
  --help  Show this message and exit.
$ virtualship run --help
Usage: virtualship run [OPTIONS] PATH

  Execute the expedition simulations.

Options:
  --from-data TEXT  Use pre-downloaded data, saved to disk, for expedition,
                    instead of streaming directly via Copernicus Marine
                    Assumes all data is stored in prescribed directory, and
                    all variables (as listed below) are present. Required
                    variables are: {'phyc', 'o2', 'so', 'uo', 'po4', 'thetao',
                    'no3', 'vo', 'chl', 'ph', 'nppv'} Assumes that variable
                    names at least contain the standard Copernicus Marine
                    variable name as a substring. Will also take the first
                    file found containing the variable name substring. CAUTION
                    if multiple files contain the same variable name
                    substring.
  --help            Show this message and exit.

For examples of VirtualShip simulation output post-processing, see the tutorials section of our documentation.

Input data

The scripts are written to work with A-grid ocean data from the Copernicus Marine Service.

Source code

The code for this project is hosted on GitHub.

Contributors

All contributions are welcome! See the contributing page in our documentation to see how to get involved. Image made with contrib.rocks.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

virtualship-0.3.4.tar.gz (70.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

virtualship-0.3.4-py3-none-any.whl (75.9 kB view details)

Uploaded Python 3

File details

Details for the file virtualship-0.3.4.tar.gz.

File metadata

  • Download URL: virtualship-0.3.4.tar.gz
  • Upload date:
  • Size: 70.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for virtualship-0.3.4.tar.gz
Algorithm Hash digest
SHA256 e1dd9c11d347f75f39d7e9b3f82a1cf4535887c5d0a9f40c0839b516d95cda5e
MD5 4cda7c04375424972e31dba94e8fa065
BLAKE2b-256 6c51256206638bc0a9eeba965ec6ab0966b47303ecfd7c13126bffe179d17c00

See more details on using hashes here.

Provenance

The following attestation bundles were made for virtualship-0.3.4.tar.gz:

Publisher: cd.yml on Parcels-code/virtualship

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file virtualship-0.3.4-py3-none-any.whl.

File metadata

  • Download URL: virtualship-0.3.4-py3-none-any.whl
  • Upload date:
  • Size: 75.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for virtualship-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0dff14cf832b426424a2a4000d09c15882f645c3457b7f5ef7f35569fbf77d81
MD5 d43bf31c689d892de2986ae11f409895
BLAKE2b-256 ae2631d2d6bf083ed4c75592ad6a69ffaa611af3d7d8ac1c0644cecf66687bf0

See more details on using hashes here.

Provenance

The following attestation bundles were made for virtualship-0.3.4-py3-none-any.whl:

Publisher: cd.yml on Parcels-code/virtualship

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page