starling.structure.bme_utils.ExperimentalObservable

class ExperimentalObservable[source]

Bases: object

Container for experimental observable data.

Parameters:
  • value (float) – The experimental value of the observable.

  • uncertainty (float) – The experimental uncertainty (standard deviation).

  • constraint (str, optional) – Type of constraint. Must be one of: - “equality” (default): Observable should match value ± uncertainty - “upper”: Observable should not exceed value - “lower”: Observable should not fall below value

  • name (str, optional) – Optional name/description of the observable.

Methods

__init__

get_bounds

Get the optimization bounds for the Lagrange multiplier.

Attributes

constraint

name

value

uncertainty

value: float
uncertainty: float
constraint: str = 'equality'
name: str | None = None
get_bounds() Tuple[float | None, float | None][source]

Get the optimization bounds for the Lagrange multiplier.

These bounds ensure the constraint type is enforced during optimization: - “equality”: No bounds (lambda can be any value) - “upper”: lambda >= 0 (positive lambda pushes observable down) - “lower”: lambda <= 0 (negative lambda pushes observable up)

__init__(value: float, uncertainty: float, constraint: str = 'equality', name: str | None = None) None