Harmonic Regression

This page documents the structured harmonic baseline used to model periodic TE components directly from angular position and operating-condition context.

Harmonic regression baseline for TE prediction over angular position.

class scripts.models.harmonic_regression.HarmonicRegression(input_size, output_size=1, harmonic_order=12, coefficient_mode='static', harmonic_index_list=None)[source]

Structured harmonic regressor for periodic TE components.

Parameters:
  • input_size (int)

  • output_size (int)

  • harmonic_order (int)

  • coefficient_mode (str)

  • harmonic_index_list (Sequence[int] | None)

__init__(input_size, output_size=1, harmonic_order=12, coefficient_mode='static', harmonic_index_list=None)[source]

Initialize the harmonic regression baseline.

Parameters:
  • input_size (int) – Total input feature count including angular position and operating-condition features.

  • output_size (int) – Regression target count. Scalar output keeps the legacy parameter layout for checkpoint compatibility; larger values use one harmonic coefficient set per output channel.

  • harmonic_order (int) – Highest harmonic order used in the Fourier-style expansion of the angular position.

  • coefficient_mode (str) – Coefficient parameterization mode. Supported values are static and linear_conditioned.

  • harmonic_index_list (Sequence[int] | None) – Optional explicit harmonic list. When omitted, the model uses the backward-compatible contiguous basis 1..harmonic_order. When provided, 0 represents the DC/bias term and positive values create sine/cosine feature pairs.

Return type:

None

static resolve_harmonic_index_list(harmonic_order, harmonic_index_list)[source]

Resolve and validate the configured harmonic basis indices.

Parameters:
  • harmonic_order (int) – Contiguous harmonic order used when no explicit harmonic index list is provided.

  • harmonic_index_list (Sequence[int] | None) – Optional explicit harmonic index sequence.

Returns:

Sorted unique harmonic indices used by the model.

Return type:

list[int]

build_harmonic_feature_tensor(angular_position_deg)[source]

Build the harmonic basis evaluated at the given angular positions.

Parameters:

angular_position_deg (Tensor) – Angular position tensor in degrees with shape (batch_size, 1).

Returns:

Harmonic design matrix containing the bias term plus sine and cosine features for each configured harmonic order.

Return type:

torch.Tensor

resolve_coefficient_tensor(normalized_condition_tensor)[source]

Resolve the harmonic coefficient tensor for each batch item.

Parameters:

normalized_condition_tensor (Tensor) – Normalized operating-condition feature tensor excluding the raw angle column.

Returns:

Batch-aligned coefficient tensor used to weight the harmonic basis.

Return type:

torch.Tensor

forward_with_input_context(input_tensor, normalized_input_tensor)[source]

Predict TE using raw angle context plus normalized conditions.

Parameters:
  • input_tensor (Tensor) – Raw input tensor whose first column is the physical angular position in degrees.

  • normalized_input_tensor (Tensor) – Normalized input tensor used for the conditioning features.

Returns:

TE prediction tensor with shape (batch_size, output_size).

Return type:

torch.Tensor