lunar_toolkit.isis

ISIS command wrappers (plus ALE isd_generate), returning output paths.

isis(program, cwd=None, **params)

Run any ISIS program with key=value params.

spiceinit(from_cub, spksmithed=True, web=True, **params)

Attach SPICE; web=True uses the USGS SPICE web service.

ISIS's default lunar shape model is the 2 GB LOLA DEM in $ISISDATA (not in a minimal ISISDATA). When it is missing and no other shape is asked for, the ellipsoid is used instead: ASP projects onto its own prior DEM and CSM cameras do not use the ISIS shape model.

system_shape_available()

Whether $ISISDATA (as the ISIS tools see it) has the default lunar shape model.

True when spiceinit cannot be found or under dry_run (nothing to decide then).

reduce(from_cub, to_cub, scale, algorithm='average', **params)

Downsample by scale in both directions (sscale = lscale).

map_project(from_cub, to_cub, projection=DEFAULT_PROJECTION, resolution=None, keep=False)

mosrange → cam2map: project a cube onto a map fitted to its footprint.

Parameters:
  • from_cub (Path) –

    spiceinit'ed input cube and map-projected output cube.

  • to_cub (Path) –

    spiceinit'ed input cube and map-projected output cube.

  • projection (str, default: DEFAULT_PROJECTION ) –

    ISIS projection for mosrange.

  • resolution (float, default: None ) –

    Map resolution in m/pixel (default: mosrange's estimate).

  • keep (bool, default: False ) –

    Keep the <id>.lis / <id>.map files written next to to_cub.

isd_generate(cub, out=None, kernel=None, only_naif_spice=False)

Write a CSM camera (ISD .json) for a spiceinit'ed cube.

kernel defaults to the cube itself, so its attached SPICE is used. Returns the JSON path (<cub stem>.json next to the cube by default).

calibrate_lronac(img, out_dir=None, *, web=True, keep=False, force=False)

lronac2isis → spiceinit → lronaccal → lronacecho for one NAC EDR.

Writes <id>.cal.echo.cub in out_dir (default: next to img) and returns it; an existing output is reused unless force. The raw and calibrated cubes are removed unless keep.

prepare_lronac(src, out_dir, *, csm=True, web=True, force=False)

Calibrated cube and optional CSM camera for one NAC image.

A .cub src is used as is; anything else (an EDR .IMG) goes through calibrate_lronac into out_dir. With csm, <id>.json is written in out_dir by isd_generate. Existing outputs are reused unless force.

Returns:
  • (cube, camera) –

    camera is None without csm.