Products of Irreducible Representations

Perform direct products and symmetric direct products of irreps.

A common group theoretical task is the direct product or symmetric direct product of irreducible representations. The composition of a product is obtained as

pm-irrep-product --point-group Oh --irreps T2g,T2g

# output
# T2gxT2g  = A1g+Eg+T1g+T2g 

The composition of a symmetric product is obtained as

pm-irrep-product --point-group Oh --irreps T2g,T2g --symmetric 

# output
# [T2gxT2g] = A1g+Eg+T2g

An arbitrary number of irreps can be handled

pm-irrep-product --point-group Oh --irreps T2g,T2g,Eg,Eg,A2g

# output
# T2gxT2gxEgxEgxA2g  = 2A1g+2A2g+4Eg+4T1g+4T2g

Another important task is constructing the irreducible representation vectors of the product representation in terms of the rows of the original irreducible representations.

pm-irrep-product --point-group Oh --irreps Eg,Eg  --print-vectors  

# output
#
#  EgxEg  = A1g+A2g+Eg
# 
# irr   Eg.0xEg.0  Eg.0xEg.1  Eg.1xEg.0  Eg.1xEg.1  
# A1g   0.7071     0.0        0.0        0.7071     
# A2g   0.0        0.7071     -0.7071    0.0        
# Eg.0  0.0        0.7071     0.7071     0.0        
# Eg.1  0.7071     0.0        0.0        -0.7071 

The same can be done for the symmetric product

pm-irrep-product --point-group Oh --irreps Eg,Eg  --print-vectors  --symmetric 

# output 
#
# [EgxEg] = A1g+Eg
#
# irr   Eg.0xEg.0  Eg.0xEg.1  Eg.1xEg.1  
# A1g   0.7071     0.0        0.7071     
# Eg.0  0.0        1.0        0.0        
# Eg.1  0.7071     0.0        -0.7071

Last modified September 18, 2023: finished fixing output (db7339b)