MultiOmegaSIRENKernelND#

class MultiOmegaSIRENKernelND(
out_dim,
data_dim,
mlp_hidden_dim,
num_layers,
embedding_dim,
omega_0_per_row,
L_cache,
use_bias,
hidden_omega_0=1.0,
film_cfg=None,
film_after_pos_embed=False,
)#

Bases: SIRENKernelND

SIRENKernelND with a per-row ω₀ in the first (positional-embedding) layer.

Identical to SIRENKernelND except that the positional embedding is a MultiOmegaSIRENPositionalEmbeddingND built from the supplied omega_0_per_row schedule. All hidden/output layers retain the usual SIREN init with hidden_omega_0.

The omega_0 attribute reported on the module equals the mean of the schedule, purely for diagnostic purposes.

omega_0#

Mean of omega_0_per_row; for diagnostics.

Type:

float

omega_0_per_row#

Non-persistent float32 buffer of shape [embedding_dim] holding the per-row omega_0 schedule.

Type:

torch.Tensor

positional_embedding#

Per-row omega_0 positional encoder (replaces the scalar-omega parent’s SIRENPositionalEmbeddingND).

Type:

MultiOmegaSIRENPositionalEmbeddingND

hidden_linears, sine, out_linear, film_generator

Inherited from SIRENKernelND; see that class.

Parameters:
  • out_dim (int) – Number of output channels for the generated kernel.

  • data_dim (int) – Number of spatial/temporal input dimensions.

  • mlp_hidden_dim (int) – Hidden width of the SIREN MLP.

  • num_layers (int) – Total number of SIREN layers (>= 2).

  • embedding_dim (int) – Positional-embedding dimensionality.

  • omega_0_per_row (Sequence[float] | Tensor) – Sequence of embedding_dim strictly-positive floats giving the per-row omega_0 in the first layer.

  • L_cache (int | Sequence[int]) – Cache extent (controls the initial grid cache size).

  • use_bias (bool) – Whether to include biases in linear layers.

  • hidden_omega_0 (float) – Frequency scaling for hidden SIREN layers (unchanged from the parent).

  • film_cfg (LazyConfig | None) – Same semantics as in the parent.

  • film_after_pos_embed (bool) – Same semantics as in the parent.

__init__(
out_dim,
data_dim,
mlp_hidden_dim,
num_layers,
embedding_dim,
omega_0_per_row,
L_cache,
use_bias,
hidden_omega_0=1.0,
film_cfg=None,
film_after_pos_embed=False,
)#

Initialize the per-row multi-omega SIREN kernel; see the class docstring for argument semantics.

Parameters: