1D Evaluator

1D evaluator for the compiled backend.

All component functions live in trspecfit.functions.energy as the single source of truth. For 1D evaluation, parameters are plain scalars (no (n_time, 1) broadcasting needed).

trspecfit.eval_1d.eval_expr_program_1d(program: ExprProgram, values: ndarray) float[source]

Evaluate an RPN ExprProgram against a scalar parameter vector.

Parameters:
  • program – Compiled RPN instruction array.

  • values(n_params,) scalar parameter vector.

Returns:

Scalar result.

Return type:

float

trspecfit.eval_1d.evaluate_1d(plan: ScheduledPlan1D, theta: ndarray) ndarray[source]

Evaluate the compiled 1D model at optimizer parameters theta.

Parameters:
  • plan – Immutable compiled execution schedule from schedule_1d.

  • theta(n_opt,) optimizer parameter vector. Order must match plan.opt_param_names.

Returns:

(n_energy,) model spectrum.

Return type:

ndarray

Raises:

ValueError – If len(theta) != len(plan.opt_indices).