reflect_test.py
1 from __future__ import print_function 2 from sympy import * 3 from galgebra.ga import Ga 4 from galgebra.deprecated import MV 5 from galgebra.printer import Format, xpdf, Fmt 6 Format() 7 8 ew,ex,ey,ez = MV.setup('e_w e_x e_y e_z',metric=[1,1,1,1]) 9 10 a = MV('a','vector') 11 a.set_coef(1,0,0) 12 b = ex+ey+ez 13 c = MV('c','vector') 14 print('a =',a) 15 print('b =',b) 16 print('c =',c) 17 18 print(a.reflect_in_blade(ex^ey).Fmt(1,'a\\mbox{ reflect in }xy')) 19 print(a.reflect_in_blade(ey^ez).Fmt(1,'a\\mbox{ reflect in }yz')) 20 print(a.reflect_in_blade(ez^ex).Fmt(1,'a\\mbox{ reflect in }zx')) 21 print(a.reflect_in_blade(ez^(ex+ey)).Fmt(1,'a\\mbox{ reflect in plane }(x=y)')) 22 print(b.reflect_in_blade((ez-ey)^(ex-ey)).Fmt(1,'b\\mbox{ reflect in plane }(x+y+z=0)')) 23 24 print(a.reflect_in_blade(ex).Fmt(1,'\\mbox{Reflect in }\\bm{e}_{x}')) 25 print(a.reflect_in_blade(ey).Fmt(1,'\\mbox{Reflect in }\\bm{e}_{y}')) 26 print(a.reflect_in_blade(ez).Fmt(1,'\\mbox{Reflect in }\\bm{e}_{z}')) 27 28 print(c.reflect_in_blade(ex^ey).Fmt(1,'c\\mbox{ reflect in }xy')) 29 print(c.reflect_in_blade(ex^ey^ez).Fmt(1,'c\\mbox{ reflect in }xyz')) 30 print((ew^ex).reflect_in_blade(ey^ez).Fmt(1,'wx\\mbox{ reflect in }yz')) 31 print((ew^ex).reflect_in_blade(ex^ey).Fmt(1,'wx\\mbox{ reflect in }xy')) 32 33 # xpdf() 34 xpdf(pdfprog=None)