1% test symmetry package 2% implementation of theory of linear representations 3% for small groups 4 5availablegroups(); 6 7printgroup(D4); 8 9generators(D4); 10 11charactertable(D4); 12 13characternr(D4,1); 14characternr(D4,2); 15characternr(D4,3); 16characternr(D4,4); 17characternr(D4,5); 18irreduciblereptable(D4); 19irreduciblerepnr(D4,1); 20irreduciblerepnr(D4,2); 21irreduciblerepnr(D4,3); 22irreduciblerepnr(D4,4); 23irreduciblerepnr(D4,5); 24 25 26rr:=mat((1,0,0,0,0), 27 (0,0,1,0,0), 28 (0,0,0,1,0), 29 (0,0,0,0,1), 30 (0,1,0,0,0)); 31 32sp:=mat((1,0,0,0,0), 33 (0,0,1,0,0), 34 (0,1,0,0,0), 35 (0,0,0,0,1), 36 (0,0,0,1,0)); 37 38rep:={D4,rD4=rr,sD4=sp}; 39 40canonicaldecomposition(rep); 41 42character(rep); 43 44symmetrybasis(rep,1); 45symmetrybasis(rep,2); 46symmetrybasis(rep,3); 47symmetrybasis(rep,4); 48symmetrybasis(rep,5); 49symmetrybasispart(rep,5); 50allsymmetrybases(rep); 51 52 53% Ritz matrix from Stiefel, Faessler p. 200 54m:=mat((eps,a,a,a,a), 55 (a ,d,b,g,b), 56 (a ,b,d,b,g), 57 (a ,g,b,d,b), 58 (a ,b,g,b,d)); 59 60 61diagonalize(m,rep); 62 63% eigenvalues are obvious. Eigenvectors may be obtained with 64% the coordinate transformation matrix given by allsymmetrybases. 65 66r1:=mat((0,1,0), 67 (0,0,1), 68 (1,0,0)); 69 70repC3:={C3,rC3=r1}; 71 72mC3:=mat((a,b,c), 73 (c,a,b), 74 (b,c,a)); 75 76diagonalize(mC3,repC3); 77 78% note difference between real and complex case 79 80on complex; 81diagonalize(mC3,repC3); 82off complex; 83 84end; 85