Little Group in 3D
using LatticeTools
unitcell = makeunitcell([1.0 0.0 0.0; 0.0 1.0 0.0; 0 0 1]; SiteType=String)
addsite!(unitcell, "Ox", FractCoord([0,0,0], [0.5, 0.0, 0.0]))
addsite!(unitcell, "Oy", FractCoord([0,0,0], [0.0, 0.5, 0.0]))2
Currently, makelattice in three-dimension is not well supported
lattice = makelattice(unitcell, [4 0 0; 0 4 0; 0 0 3], [1 0 0; 0 1 0; 0 0 1])
tsym = TranslationSymmetry(lattice.hypercube, [1 0 0; 0 1 0; 0 0 1])
psym = project(PointSymmetryDatabase.get(15), [1 0 0; 0 1 0; 0 0 1])
for idx in 1:num_irreps(tsym)
kf = tsym.fractional_momenta[idx]
k = lattice.unitcell.reducedreciprocallatticevectors * kf
psym_little1 = little_symmetry(tsym, idx, psym)
psym_little2 = LatticeTools.little_symmetry_iso(tsym, idx, psym)
println("- irrep_index: $(idx)")
println(" momentum: $(k)")
println(" little_point_group1: { name: \"$(psym_little1.hermann_mauguin)\", order: $(group_order(psym_little1)) }")
println(" little_point_group2: { name: \"$(psym_little2.hermann_mauguin)\", order: $(group_order(psym_little2)) }")
println(" is_psym_compatible: $(iscompatible(tsym, idx, psym))")
println(" is_psym_little1_compatible: $(iscompatible(tsym, idx, psym_little1))")
println(" is_psym_little2_compatible: $(iscompatible(tsym, idx, psym_little2))")
end- irrep_index: 1
momentum: [0.0, 0.0, 0.0]
little_point_group1: { name: "4/mmm", order: 16 }
little_point_group2: { name: "4/mmm", order: 16 }
is_psym_compatible: true
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 2
momentum: [0.25, 0.0, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 3
momentum: [0.5, 0.0, 0.0]
little_point_group1: { name: "mmm", order: 8 }
little_point_group2: { name: "mmm", order: 8 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 4
momentum: [0.75, 0.0, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 5
momentum: [0.0, 0.25, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 6
momentum: [0.25, 0.25, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 7
momentum: [0.5, 0.25, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 8
momentum: [0.75, 0.25, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 9
momentum: [0.0, 0.5, 0.0]
little_point_group1: { name: "mmm", order: 8 }
little_point_group2: { name: "mmm", order: 8 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 10
momentum: [0.25, 0.5, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 11
momentum: [0.5, 0.5, 0.0]
little_point_group1: { name: "4/mmm", order: 16 }
little_point_group2: { name: "4/mmm", order: 16 }
is_psym_compatible: true
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 12
momentum: [0.75, 0.5, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 13
momentum: [0.0, 0.75, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 14
momentum: [0.25, 0.75, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 15
momentum: [0.5, 0.75, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 16
momentum: [0.75, 0.75, 0.0]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 17
momentum: [0.0, 0.0, 0.3333333333333333]
little_point_group1: { name: "4mm", order: 8 }
little_point_group2: { name: "4mm", order: 8 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 18
momentum: [0.25, 0.0, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 19
momentum: [0.5, 0.0, 0.3333333333333333]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 20
momentum: [0.75, 0.0, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 21
momentum: [0.0, 0.25, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 22
momentum: [0.25, 0.25, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 23
momentum: [0.5, 0.25, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 24
momentum: [0.75, 0.25, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 25
momentum: [0.0, 0.5, 0.3333333333333333]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 26
momentum: [0.25, 0.5, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 27
momentum: [0.5, 0.5, 0.3333333333333333]
little_point_group1: { name: "4mm", order: 8 }
little_point_group2: { name: "4mm", order: 8 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 28
momentum: [0.75, 0.5, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 29
momentum: [0.0, 0.75, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 30
momentum: [0.25, 0.75, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 31
momentum: [0.5, 0.75, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 32
momentum: [0.75, 0.75, 0.3333333333333333]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 33
momentum: [0.0, 0.0, 0.6666666666666666]
little_point_group1: { name: "4mm", order: 8 }
little_point_group2: { name: "4mm", order: 8 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 34
momentum: [0.25, 0.0, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 35
momentum: [0.5, 0.0, 0.6666666666666666]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 36
momentum: [0.75, 0.0, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 37
momentum: [0.0, 0.25, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 38
momentum: [0.25, 0.25, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 39
momentum: [0.5, 0.25, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 40
momentum: [0.75, 0.25, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 41
momentum: [0.0, 0.5, 0.6666666666666666]
little_point_group1: { name: "mm2", order: 4 }
little_point_group2: { name: "mm2", order: 4 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 42
momentum: [0.25, 0.5, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 43
momentum: [0.5, 0.5, 0.6666666666666666]
little_point_group1: { name: "4mm", order: 8 }
little_point_group2: { name: "4mm", order: 8 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 44
momentum: [0.75, 0.5, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 45
momentum: [0.0, 0.75, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 46
momentum: [0.25, 0.75, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 47
momentum: [0.5, 0.75, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: true
- irrep_index: 48
momentum: [0.75, 0.75, 0.6666666666666666]
little_point_group1: { name: "m", order: 2 }
little_point_group2: { name: "m", order: 2 }
is_psym_compatible: false
is_psym_little1_compatible: true
is_psym_little2_compatible: trueThis page was generated using Literate.jl.