Skip to main content

Python package to simulate and optimise space-based VLBI missions

Project description

spacevlbi

Python package for simulating and optimising a space-based Very Long Baseline Interferometry (VLBI) mission. This package enables multiple space telescopes to be modelled by propagating their orbital and attitude state. Elements of the spacecraft design that impact when observations can be performed can also be included in the simulation to assess and mitigate their impact on the science return of the mission (e.g. source visibility including Sun/Earth/Moon avoidance, star trackers, radiators, solar panels, ground station access times, etc.).

A ground-based array of radio antenna can also be modelled, enabling the $(u,v)$ coverage that the full interferometer can achieve of a given source(s) to be calculated.

Although the package has been developed specifically for space VLBI applications, it can also be used more generally for modelling other types of astronomy mission and assessing the impact of the spacecraft design on the science return.

Installation

The latest version is available on PyPi. Ensure that pip is installed and run the following command:

pip install spacevlbi

Installing with pip will install/update all of the required libraries automatically (numpy, poliastro, matplotlib, astropy).

Structure

In this repository you can find:

  • spacevlbi/ directory containing the core Python libraries
  • Examples/ directory containing example scripts to demonstrate the use of the package
  • docs/ directory containing readthedocs configuration files

Documentation

More detailed documentation for the package is available here.

Provided in the Examples folder is the script ExampleSetup.py. This script shows how the package can be used to model a VLBI array with a single space element. This example is based upon the preliminary concept for the Black Hole Explorer (BHEX) mission. The script ExampleSpaceTelescope.py shows how an object of the SpaceTelescope class can be defined.

Running the provided example will produce the following figures in an Output folder:

  • AttitudeSphere.pdf
  • GroundStationAccess.pdf
  • Orbit.pdf
  • UV.pdf
  • GroundStationContact.pdf

The terminal will show the simulation progress by printing the current timestep. Once the simulation is complete, additional print statements will confirm the generation of the four figures listed previously. The example script will also calculate the optimal position(s) for a star tracker to avoid Sun and Earth blinding.

Author(s)

This software has been developed by Ben Hudson ORCID logo 0000-0002-3368-1864, Technische Universiteit Delft

License

spacevlbi is licensed under GPLv3. See LICENSE.txt for more details.

Technische Universiteit Delft hereby disclaims all copyright interest in the program "spacevlbi". spacevlbi is a python package to simulate space-based VLBI missions written by the Author(s).
Ben Hudson, Faculty of Aerospace Engineering, Technische Universiteit Delft.

© 2024, B. Hudson

Citation

If you use spacevlbi in your publication, please cite:

Hudson, Ben (2024): Python package for simulating and optimising a space-based VLBI mission. 4TU.ResearchData. software. https://doi.org/10.4121/392b8d8c-4eb2-4420-b46b-1cb697764a2b

Would you like to contribute?

If you have any comments, feedback, or recommendations, feel free to reach out by sending an email to benhudson@tudelft.nl

If you would like to contribute directly, you are welcome to fork this repository.

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

spacevlbi-1.1.7.tar.gz (191.0 kB view details)

Uploaded Source

Built Distribution

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

spacevlbi-1.1.7-py3-none-any.whl (58.2 kB view details)

Uploaded Python 3

File details

Details for the file spacevlbi-1.1.7.tar.gz.

File metadata

  • Download URL: spacevlbi-1.1.7.tar.gz
  • Upload date:
  • Size: 191.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for spacevlbi-1.1.7.tar.gz
Algorithm Hash digest
SHA256 aae8023069df77e0a55abbb9d677011eb8ce010d17de1a77bc5abcd3b696c853
MD5 4bb8628344cdf61ff566ed35c794222b
BLAKE2b-256 2c163ae7a793f02cd00c8e099eb15338a9d00574f63cc6a70c3246b48c6fc7ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for spacevlbi-1.1.7.tar.gz:

Publisher: python-publish.yml on bhudson2/spacevlbi

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

File details

Details for the file spacevlbi-1.1.7-py3-none-any.whl.

File metadata

  • Download URL: spacevlbi-1.1.7-py3-none-any.whl
  • Upload date:
  • Size: 58.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for spacevlbi-1.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 3905bbf9afae649c3026f9470eb4b04ce74bc72b07ed45f355f5f682c5e131ca
MD5 83f78bcdd1b71ec17be47c84a82ef1fe
BLAKE2b-256 bd50fcc6dc30003215da8666defd664d2446ecc13817bd85d3283b4d563341db

See more details on using hashes here.

Provenance

The following attestation bundles were made for spacevlbi-1.1.7-py3-none-any.whl:

Publisher: python-publish.yml on bhudson2/spacevlbi

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