Skip to main content

version pythonversion DOI

SPiP : Spacecraft Pixel footprint Projection

Projection of the pixel footprint from an instrument onboard an orbital spacecraft on a planetary surface.

Installation & Update

Installation: pip3 install planetary-spip

Update: pip3 install planetary-spip --upgrade

Method 2: from the GitHub repository (development version)

Installation: Clone the repository and install with pip:

git clone https://github.com/NAU-PIXEL/spip.git
cd spip
pip3 install .

Update: Go to the previously cloned repository, pull the last updates, and install them with pip:

cd spip
git pull
pip3 install .

Usage

# Package importation
import spip
import numpy as np

# Genaration of a longitude/latitude grid to project the footprint
lon_array = np.arange(0.25, 360, 0.5)   # 0° -> 360°, 2 points per degree
lat_array = np.arange(-89.75, 90, 0.5)  # -90° -> 90°, 2 points per degree
lon_grid, lat_grid = np.meshgrid(lon_array, lat_array)

# Pixel parameters
lon_px, lat_px = 58.2, 79.3         # Longitude/Latitude of the pixel center [deg]
emer = 61.7                         # Emergence angle of the pixel on the surface [deg]
lon_subsc, lat_subsc = 28.0, 24.9   # Longitude/Latitude sub-spacecraft [deg]
d_Mars_sc = 27212                   # Distance aeroid-spacraft [km]
Rmars = spip.emm_emirs.Rmars        # 3390 [km]
ifov = spip.emm_emirs.ifov_emirs    # 2.7e-3 [rad]

# Generation of the mask map of the pixel footprint
#-- EMM/EMIRS spacecraft
mask_footprint = spip.emm_emirs.emirs_ifov_px_projection(
    lon_grid,
    lat_grid,
    lon_px,
    lat_px,
    emer,
    lon_subsc,
    lat_subsc,
    d_Mars_sc,
    Rmars,
    ifov
    )

# To easily handle multiple pixels, there is the spip.emm_emirs.emirs_ifov_multi_px_projection() function.

#-- General case, cirular pixel
a, b, θ = spip.circular_pixels.params_ellipse_fov(
    lon_px,
    lat_px,
    emer,
    lon_subsc,
    lat_subsc,
    d_Mars_sc,
    ifov
    )

mask_footprint = spip.circular_pixels.in_ellipse_spherical(
    lon_grid,
    lat_grid,
    Rmars,
    a,
    b,
    lon_px,
    lat_px,
    θ
    ) * 1.
    
# > mask_footprint
# For each point of the longitude/latitude grid:
#   | 1 -> Within the pixel footprint ellipse.
#   | 0 -> Outside.

Documentation

Planetary Data Workshop 2023: abstract & poster

Credits

© Aurélien Stcherbinine (2023) NAU-PIXEL

Department of Astronomy and Planetary Science, Northern Arizona University, Flagstaff, AZ, USA

License

This package is released under a MIT open source license. See LICENSE for more details.

Metadata

Release files for planetary-spip 1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for planetary-spip 1.2
File Size Uploaded
planetary-spip-1.2.tar.gz 7.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for planetary-spip 1.2
File Interpreter ABI Platform
planetary_spip-1.2-py3-none-any.whl Python 3 none any Details

Total release size: 16.3 kB

Release files / planetary-spip-1.2.tar.gz

Download URL planetary-spip-1.2.tar.gz
Size 7.5 kB
Tags Source
SHA-256 checksum
How to use checksums
dd5f17095c9a3d831470d442cc89a837fb21f8777bf63d90841d427e97de5987
BLAKE2b-256 checksum
How to use checksums
d561742955989bffb2314ed8be411b2c66de01bae452dd19ec99fce0711fe715
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Release files / planetary_spip-1.2-py3-none-any.whl

Download URL planetary_spip-1.2-py3-none-any.whl
Size 8.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ea18e1daf781fd736a0cb20337f0a22014c1d775e628addde9554a2879b9ade3
BLAKE2b-256 checksum
How to use checksums
1ed62ef2830eb844db8726c169b0438fccfd934d5dd299bd12351cd9fd9324ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Release history Release notifications | RSS feed

This release

1.2 This release

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page