sun_diffusion.irreps module¶
Utilities for handling the irreducible representations of SU(N).
- sun_diffusion.irreps.casimir(mu)¶
Computes the value of the \({\rm SU}(N)\) quadratic Casimir operator for the irrep specified by the partition mu.
The formula is given by
\[C_2(\mu) = \sum_{i=1}^N \mu_i (\mu_i - 2i + N + 1) - \frac{1}{N} \left(\sum_{i=1}^N \mu_i\right)^2\]- Parameters:
mu (Tensor) – Tensor of \(N\) decreasing integers
- Return type:
float- Returns:
Quadratic Casimir for irrep mu
- sun_diffusion.irreps.weyl_dimension(mu)¶
Computes the dimension of the \({\rm SU}(N)\) irrep labeled by the partition mu.
The formula is given by
\[{\rm dim}(\mu) = \prod_{1 \leq i < j \leq N} \frac{\mu_i - \mu_j + j - i}{j - i},\]and we conventionally take \(\mu_N \equiv 0\).
- Parameters:
mu (Tensor) – Partition for the irrep as tensor of decreasing integers
- Return type:
float- Returns:
Weyl dimension for the irrep corresponding to mu.
- sun_diffusion.irreps.weyl_character(thetas, mu)¶
Evaluates the Weyl character \(\chi_\mu(\theta)\) on \({\rm SU}(N)\) eigenangles thetas.
The general formula, as in Drouffe and Zuber (1983), is
\[\chi_\mu(U) = \frac{ \det_{i,j}\left[\lambda_i^{\mu_j + N - j}\right]}{ \det_{i,j}\left[\lambda_i^{N - j}\right]}\]where the eigenvalues are \(\lambda_j = e^{i \theta_j}\).
- Parameters:
thetas (Tensor) – Batch of eigenangles, shaped [B, Nc]
mu (Tensor) – Partition corresponding to SU(N) irrep
- Return type:
Tensor- Returns:
Batch of character values as floats
- sun_diffusion.irreps.grad_character(thetas, mu)¶
Computes the gradient of the Weyl character with respect to eigenangles.
- Parameters:
thetas (Tensor) – Batch of eigenangles, shaped [B, Nc]
mu (Tensor) – Partition corresponding to SU(N) irrep
- Return type:
Tensor- Returns:
Gradient of the character with respect to thetas
- sun_diffusion.irreps.generate_partitions(Nc, max_weight)¶
Generates a list of partitions labeling \({\rm SU}(N)\) irreps.
Each partition \(\mu\) is a list of decreasing integers
\[\mu = (\mu_1, ..., \mu_N), \quad \mu_1 \geq \mu_2 \geq \cdots \geq \mu_N = 0.\]The infinite sum is truncated by specifying the max_weight parameter, which only allows partitions of weight less than the maximum.
- Parameters:
Nc (int) – Dimension of the fundamental rep
max_weight (int) – Highest weight of irreps to include
- Returns:
List containing integer tuples labeling irreps
- Return type:
ptns (list)