adam_core.photometry.absolute_magnitude module

class adam_core.photometry.absolute_magnitude.GroupedPhysicalParameters(table: Table, **kwargs: int | float | str)[source]

Bases: Table

object_id

A column for storing large strings (over 231 bytes long). Large string data is stored in variable-length chunks.

physical_parameters

A column which represents an embedded quivr table.

Parameters:
  • table_type – The type of the table to embed.

  • nullable – Whether the column can contain null values.

  • metadata – A dictionary of metadata to attach to the column.

n_fit_detections

A column for storing 64-bit integers.

schema: ClassVar[pa.Schema] = object_id: large_string not null physical_parameters: struct<H_v: double, H_v_sigma: double, G: double, G_sigma: double, sigma_eff: double, chi2_red: doub (... 3 chars omitted)   child 0, H_v: double   child 1, H_v_sigma: double   child 2, G: double   child 3, G_sigma: double   child 4, sigma_eff: double   child 5, chi2_red: double n_fit_detections: int64 not null
table: pa.Table
adam_core.photometry.absolute_magnitude.estimate_absolute_magnitude_v_from_detections(detections: PointSourceDetections, exposures: Exposures, object_coords: CartesianCoordinates, *, composition: str | tuple[float, float], G: float = 0.15, strict_band_mapping: bool = False, reference_filter: str = 'V') PhysicalParameters[source]

Estimate V-band absolute magnitude H from observed apparent magnitudes.

Assumptions

  • Orbit has already been fit; object_coords are the heliocentric object coordinates at the observation times (aligned 1:1 with detections).

  • We estimate H only; G and composition are treated as fixed inputs.

param detections:

Point-source detections. Uses mag and (optionally) mag_sigma.

param exposures:

Exposures referenced by detections.exposure_id. Uses observatory_code and filter.

param object_coords:

Object coordinates aligned with detections (same length and ordering).

param composition:

Required. Bandpass template ID (e.g. ‘NEO’) or (weight_C, weight_S) mix.

param G:

Fixed H-G slope parameter.

param strict_band_mapping:

If True, disallow SDSS/PS1 fallback filters when mapping reported bands.

param reference_filter:

Must be ‘V’ for this function.

adam_core.photometry.absolute_magnitude.estimate_absolute_magnitude_v_from_detections_grouped(detections: PointSourceDetections, exposures: Exposures, object_coords: CartesianCoordinates, object_ids: Array | ChunkedArray | Sequence[str | None], *, composition: str | tuple[float, float], G: float = 0.15, strict_band_mapping: bool = False, reference_filter: str = 'V') GroupedPhysicalParameters[source]

Vectorized grouped H-fit for many objects in one pass.

Parameters:
  • detections – Point-source detections for all groups.

  • exposures – Exposure table referenced by detections.exposure_id.

  • object_coords – Object coordinates aligned 1:1 with detections.

  • object_ids – Group label for each detection row (same length as detections).

Returns:

One row per object_id with nested physical parameters and fit row counts.

Return type:

GroupedPhysicalParameters