Custom Components Package#

class jaxqsofit.custom_components.CustomComponentSpec(name, parameter_priors, evaluate, metadata=<factory>)[source]#

Bases: object

Generic additive continuum component.

The component is fully defined by: - parameter_priors: local parameter names -> prior config dictionaries - evaluate: callable evaluate(wave, params, metadata)

The evaluator is responsible for any shifts, broadenings, template interpolation, or other transformations.

Parameters:
  • name (str)

  • parameter_priors (Mapping[str, Mapping[str, Any]])

  • evaluate (Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any])

  • metadata (Mapping[str, Any])

name: str#
parameter_priors: Mapping[str, Mapping[str, Any]]#
evaluate: Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any]#
metadata: Mapping[str, Any]#
property prefix: str#

Return the parameter-site prefix used in samples/priors.

property output_name: str#

Return the public output component key.

property deterministic_site_name: str#

Return the Predictive deterministic site name.

site_name(param_name)[source]#

Return the full NumPyro sample-site name for one local parameter.

Parameters:

param_name (str)

Return type:

str

to_state()[source]#

Return a pickle-friendly representation.

Return type:

dict[str, Any]

classmethod from_state(state)[source]#

Rebuild a spec from to_state().

Parameters:

state (Mapping[str, Any])

Return type:

CustomComponentSpec

__init__(name, parameter_priors, evaluate, metadata=<factory>)#
Parameters:
  • name (str)

  • parameter_priors (Mapping[str, Mapping[str, Any]])

  • evaluate (Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any])

  • metadata (Mapping[str, Any])

Return type:

None

class jaxqsofit.custom_components.CustomLineComponentSpec(name, parameter_priors, evaluate, line_kind='broad', metadata=<factory>)[source]#

Bases: object

Generic additive emission-line component.

Parameters:
  • name (str)

  • parameter_priors (Mapping[str, Mapping[str, Any]])

  • evaluate (Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any])

  • line_kind (str)

  • metadata (Mapping[str, Any])

name: str#
parameter_priors: Mapping[str, Mapping[str, Any]]#
evaluate: Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any]#
line_kind: str = 'broad'#
metadata: Mapping[str, Any]#
property prefix: str#

Return the parameter-site prefix used in samples/priors.

property output_name: str#

Return the public output component key.

property deterministic_site_name: str#

Return the Predictive deterministic site name.

site_name(param_name)[source]#

Return the full NumPyro sample-site name for one local parameter.

Parameters:

param_name (str)

Return type:

str

to_state()[source]#

Return a pickle-friendly representation.

Return type:

dict[str, Any]

classmethod from_state(state)[source]#

Rebuild a line component spec from to_state().

Parameters:

state (Mapping[str, Any])

Return type:

CustomLineComponentSpec

__init__(name, parameter_priors, evaluate, line_kind='broad', metadata=<factory>)#
Parameters:
  • name (str)

  • parameter_priors (Mapping[str, Mapping[str, Any]])

  • evaluate (Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any])

  • line_kind (str)

  • metadata (Mapping[str, Any])

Return type:

None

jaxqsofit.custom_components.make_custom_component(name, parameter_priors, evaluate, *, metadata=None)[source]#

Build a generic additive custom component.

Parameters:
  • name (str)

  • parameter_priors (Mapping[str, Mapping[str, Any]])

  • evaluate (Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any])

  • metadata (Mapping[str, Any] | None)

Return type:

CustomComponentSpec

jaxqsofit.custom_components.make_custom_line_component(name, parameter_priors, evaluate, *, line_kind='broad', metadata=None)[source]#

Build a generic additive custom line component.

Parameters:
  • name (str)

  • parameter_priors (Mapping[str, Mapping[str, Any]])

  • evaluate (Callable[[Any, Mapping[str, Any], Mapping[str, Any]], Any])

  • line_kind (str)

  • metadata (Mapping[str, Any] | None)

Return type:

CustomLineComponentSpec

jaxqsofit.custom_components.make_template_component(name, wave, flux, *, fit_fwhm=False, fit_shift=False, base_fwhm_kms=900.0, default_fwhm_kms=3000.0, normalize_template=True, target_amp=1.0)[source]#

Build a broadened/shifted additive template component.

Parameters:
  • name (str)

  • wave (Sequence[float])

  • flux (Sequence[float])

  • fit_fwhm (bool)

  • fit_shift (bool)

  • base_fwhm_kms (float)

  • default_fwhm_kms (float)

  • normalize_template (bool)

  • target_amp (float)

Return type:

CustomComponentSpec