Spin¶
Irreducible representation label for SU(2).
Spin
¶
SU(2) irreducible representation label, stored as doubled integer 2j.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
j_doubled
|
int
|
The doubled spin value |
required |
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Examples:
>>> import yuzuha
>>> j_half = yuzuha.Spin(1) # j = 1/2
>>> j1 = yuzuha.Spin(2) # j = 1
>>> print(j_half.value())
0.5
>>> print(j1.dimension())
3
value
¶
Return the spin as a float j = j_doubled / 2.
Returns:
| Type | Description |
|---|---|
float
|
The spin value j. |
twice
¶
Return the internal doubled integer 2j.
Returns:
| Type | Description |
|---|---|
int
|
The doubled spin value. |
dimension
¶
Return the representation dimension 2j + 1.
Returns:
| Type | Description |
|---|---|
int
|
The number of magnetic quantum number states. |
is_integer
¶
Return True if j is a non-negative integer.
Returns:
| Type | Description |
|---|---|
bool
|
True for integer spin, False for half-integer spin. |
is_half_integer
¶
Return True if j is a strict half-integer.
Returns:
| Type | Description |
|---|---|
bool
|
True for half-integer spin, False for integer spin. |
Description¶
Spin represents an SU(2) irreducible representation by its spin quantum number
\(j \in \{0, \frac{1}{2}, 1, \frac{3}{2}, \ldots\}\). Internally, spins are stored
as doubled integers \(2j\) to avoid floating-point arithmetic throughout all
computations.
The constructor takes the doubled spin value as an integer argument:
import yuzuha
j0 = yuzuha.Spin(0) # j = 0
jhalf = yuzuha.Spin(1) # j = 1/2
j1 = yuzuha.Spin(2) # j = 1
j32 = yuzuha.Spin(3) # j = 3/2
Properties¶
value()— spin as a Python float (\(j = n/2\))twice()— internal doubled integer \(2j\)dimension()— representation dimension \(2j + 1\)is_integer()— True if \(j\) is a non-negative integeris_half_integer()— True if \(j\) is a strict half-integer
See Also¶
- Edge: Combines a
Spinwith aDirection - CGSpec: Specifies a full CG tensor from a list of
Edgevalues - Yuzuha Protocol — Type System: Abstract
RepLabelspecification thatSpinimplements for SU(2)
Notes¶
Spin values are immutable. Equality, hashing, and < ordering are all supported:
Spin objects can be used as dictionary keys and in sets, and lists of spins can be
passed to sorted() directly without a key function.
The identity representation is Spin(0) (\(j = 0\)), which has dimension 1 and
contributes a trivial factor in all coupling coefficients.