build

build

Back-compat functional entry point over the OO core.

The working, runnable paths now live on :class:cubegenpy.builder.CubeBuilder plus a :class:~cubegenpy.sources.Source (:class:~cubegenpy.sources.SyntheticSource for synthetic builds, :class:~cubegenpy.sources.FitsReadbackSource for recalibration). This module keeps the original functional build_cube signature for the production path — fetch a real PDS product via pyuvis + ingest externally-computed geometry — which is not wired yet (blocked on the Showalter geometry format).

CubeProduct is re-exported from :mod:cubegenpy.product.

Functions

Name Description
build_cube Build a Cassini UVIS PDS4 FITS cube for pds_product_id (production path).

build_cube

build.build_cube(
    pds_product_id,
    geometry,
    spice_kernels,
    target,
    out_dir,
    *,
    write_pds4_label=True,
    calibration='default',
)

Build a Cassini UVIS PDS4 FITS cube for pds_product_id (production path).

Parameters

Name Type Description Default
pds_product_id str Cassini UVIS PRODUCT_ID, e.g. "EUV2013_047_09_33_59". The raw DAT/LBL pair will be fetched via :mod:pyuvis (which delegates to :mod:planetarypy.catalog.fetch_product). required
geometry Mapping[str, Mapping[str, object]] Externally-computed geometry, keyed by FITS HDU name ("SC_GEOM", "BODY_GEOM", "GENERAL_GEOM", "RING_GEOM"). Each value maps a column name to a numpy.ndarray shaped per Mark’s 2026-02 FITS layout proposal. required
spice_kernels Sequence[str] Filenames of SPICE kernels used to compute geometry; written verbatim into the KERNELS HDU. required
target str PDS target name, e.g. "TITAN". required
out_dir str | Path Output directory. The FITS file is written as <pds_product_id>.fits. required
write_pds4_label bool If True (default), emit a sibling PDS4 XML label. True
calibration str Calibration source. "default" maps to "pyuvis"; see :class:~cubegenpy.config.BuildConfig. 'default'

Returns

Name Type Description
CubeProduct Paths to the written FITS and (optional) PDS4 label.

Raises

Name Type Description
NotImplementedError The production PyuvisSource (fetch real PDS product + ingest the Showalter geometry folder) is not built yet. Use :class:cubegenpy.builder.CubeBuilder with :class:~cubegenpy.sources.SyntheticSource or :class:~cubegenpy.sources.FitsReadbackSource for the working paths.