chiark / gitweb /
symbolic.py: prettier, introduce debug
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 15 Nov 2017 18:31:46 +0000 (18:31 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 15 Nov 2017 18:31:46 +0000 (18:31 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
symbolic.py

index 251859ae0ee0d7d42c7242a1c0eb8014865155ee..aa42d0766f58a9026420a4d5ebab1b63227b646c 100755 (executable)
@@ -10,7 +10,7 @@ if sys.stdout.encoding is None:
 
 init_printing(use_unicode=True)
 
-r, theta, s, la, mu = symbols('r theta s la mu')
+r, theta, s, la, mu = symbols('r theta s lambda mu')
 
 # start      original formulation
 # rightvars  replaces 
@@ -23,13 +23,16 @@ p_start = Matrix([
 
 p_rightvars = p_start.subs( theta, s/r ).subs( r, 1/la )
 
-print
-pprint(p_rightvars)
+def dbg(*args):
+  for vn in args:
+    print('\n' + vn + '\n')
+    pprint(eval(vn))
+
+dbg('p_rightvars')
 
 p_dirn_rightvars = diff(p_rightvars, s)
 
-print
-pprint(p_dirn_rightvars)
+dbg('p_dirn_rightvars')
 
 zeta = Wild('zeta')
 
@@ -41,8 +44,7 @@ p_nosing[1] = (p_nosing[1]
             .replace( sin(zeta) , zeta * sinc(zeta)                )
                )
 
-print
-pprint(p_nosing,)
+dbg('p_nosing')
 
 t = symbols('t')
 
@@ -51,12 +53,7 @@ q_dirn_owncoords = p_dirn_rightvars.replace(s,t).replace(la,-la)
 
 q_dirn_owncoords_0 = q_dirn_owncoords.replace(t,0)
 
-print
-pprint(q_owncoords)
-print
-pprint(q_dirn_owncoords)
-print
-pprint(q_dirn_owncoords_0)
+dbg('q_owncoords','q_dirn_owncoords','q_dirn_owncoords_0')
 
 p2q_translate = p_nosing
 #p2q_rotate_2d = Matrix([ p_dirn_rightvars[0:2],
@@ -67,18 +64,16 @@ p2q_rotate[0:2, 1] = p_dirn_rightvars[0:2]
 #p2q_rotate.add_col([0,0])
 #p2q_rotate.add_row([0,0,1])
 
-print('\n p2q_rotate\n')
-pprint(p2q_rotate)
+dbg('p2q_rotate')
 
 assert(Eq(p2q_rotate * Matrix([0,1,mu]), p_dirn_rightvars))
 
 print('\n eye3 subs etc.\n')
-pprint(Eq(eye(3) * Matrix([1,0,mu]),
-          p_dirn_rightvars .cross(Matrix([0,0,1]) .subs(s,0))))
+dbg('''Eq(eye(3) * Matrix([1,0,mu]),
+     p_dirn_rightvars .cross(Matrix([0,0,1]) .subs(s,0)))''')
 
-print('\n eye3 etc.\n')
-pprint(Eq(p2q_rotate * Matrix([1,0,mu]),
-          p_dirn_rightvars .cross(Matrix([0,0,1]))))
+dbg('''Eq(p2q_rotate * Matrix([1,0,mu]),
+          p_dirn_rightvars .cross(Matrix([0,0,1])))''')
 
 #eq = Eq(qmat * q_dirn_owncoords_0, p_dirn_rightvars)
 #print