IGLib  1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Meta.Numerics.Spin.Spin Struct Reference

Represents a spinor. More...

Public Member Functions

 Spin (double j)
 Instantiates a new spinor. More...
 
SpinState[] States ()
 Returns the set of spinor states. More...
 
override bool Equals (object obj)
 Determines whether the given object represents the same spinor. More...
 
override int GetHashCode ()
 Computes a hash function for the spinor. More...
 
override string ToString ()
 Produces a string representation of the spinor. More...
 

Static Public Member Functions

static bool operator== (Spin a, Spin b)
 Determines whether two spinors are equal. More...
 
static bool operator!= (Spin a, Spin b)
 Determines whether two spinors are unequal. More...
 

Properties

double J [get]
 Gets the spin of the spinor. More...
 
static Spin SpinZero [get]
 Gets a spin-0 spinor. More...
 
static Spin SpinOneHalf [get]
 Gets a spin-1/2 spinor. More...
 
static Spin SpinOne [get]
 Gets a spin-1 spinor. More...
 
int Dimension [get]
 Gets the dimension of the spinor. More...
 

Static Private Member Functions

static bool Equals (Spin a, Spin b)
 

Private Attributes

int twoJ
 

Detailed Description

Represents a spinor.

From a physicist's point of view, a spinor is an object with a particular quantum-mechanical spin. The quantum state of such an object is represented by a SpinState object.

From a mathematician's point of view, a spinor labels an irreducible representation of the SO(3) or SU(2) Lie group. Individual vectors within each irreducible representation are represented by SpinState objects.

Constructor & Destructor Documentation

Meta.Numerics.Spin.Spin.Spin ( double  j)
inline

Instantiates a new spinor.

Parameters
jThe spin, which must be an integer or half-integer.

Member Function Documentation

SpinState [] Meta.Numerics.Spin.Spin.States ( )
inline

Returns the set of spinor states.

Returns
An array of spin states that spans the spinor subspace.

Referenced by Test.SpinTest.ClebschGordonOrthonormalityJM(), and Test.SpinTest.SpinEquality().

static bool Meta.Numerics.Spin.Spin.Equals ( Spin  a,
Spin  b 
)
inlinestaticprivate
static bool Meta.Numerics.Spin.Spin.operator== ( Spin  a,
Spin  b 
)
inlinestatic

Determines whether two spinors are equal.

Parameters
aThe first spin.
bThe second spin.
Returns
True if a and b are equal, otherwise false.
static bool Meta.Numerics.Spin.Spin.operator!= ( Spin  a,
Spin  b 
)
inlinestatic

Determines whether two spinors are unequal.

Parameters
aThe first spin.
bThe second spin.
Returns
False if a and b are equal, otherwise true.
override bool Meta.Numerics.Spin.Spin.Equals ( object  obj)
inline

Determines whether the given object represents the same spinor.

Parameters
objThe object to compare.
Returns
True if obj is an equal spin, otherwise false.
override int Meta.Numerics.Spin.Spin.GetHashCode ( )
inline

Computes a hash function for the spinor.

Returns
An integer which is guaranteed equal for equal spinors, an unlikely to be equal for unequal spinors.
override string Meta.Numerics.Spin.Spin.ToString ( )
inline

Produces a string representation of the spinor.

Returns
A string representation of the spinor.

Referenced by Meta.Numerics.Spin.SpinState.ToString().

Member Data Documentation

int Meta.Numerics.Spin.Spin.twoJ
private

Property Documentation

Spin Meta.Numerics.Spin.Spin.SpinZero
staticget

Gets a spin-0 spinor.

Referenced by Test.SpinTest.SixJSpecialCase(), and Test.SpinTest.SpinEquality().

Spin Meta.Numerics.Spin.Spin.SpinOneHalf
staticget

Gets a spin-1/2 spinor.

Referenced by Test.SpinTest.SixJSpecialCase().

Spin Meta.Numerics.Spin.Spin.SpinOne
staticget

Gets a spin-1 spinor.

Referenced by Test.SpinTest.SixJZeroMinimum(), and Test.SpinTest.SpinEquality().

int Meta.Numerics.Spin.Spin.Dimension
get

Gets the dimension of the spinor.

Referenced by Test.SpinTest.SpinEquality().


The documentation for this struct was generated from the following file: