chiark / gitweb /
findcurve: wip
[moebius3.git] / symbolic.py
index a7dc79e2ec93cb65f693aa6fdf84d962fc826007..ecd94b5bf1b60185f16e4773aa36c681a1edd400 100755 (executable)
@@ -204,7 +204,7 @@ def gen_diff(current, smalls):
     dbg('j')
     j = cse_prep_cprint(j, 'jtmp')
     for ix in range(0, j.cols):
-      cprint(ourccode(j.col(ix), 'J(%d)' % ix))
+      cprint(ourccode(j.col(ix), 'J_COL'))
       cprint('J_END_COL(%d)' % ix)
   else:
     small = smalls[0]
@@ -220,10 +220,14 @@ def gen_diff(current, smalls):
     )
     cprint('} /* %s small */' % small)
 
+def gen_misc():
+  cprintraw('// AUTOGENERATED - DO NOT EDIT\n')
+  cprintraw('#define N %d\n' % len(params))
+
 def gen_x_extract():
-  cprint('#define X_EXTRACT \\')
+  cprint('#define X_EXTRACT')
   for ix in range(0, len(params)):
-    cprint('double %s = X(%d)' % (params[ix], ix))
+    cprint('double %s = X(%d);' % (params[ix], ix))
   cprintraw()
 
 def gen_f_populate():
@@ -236,6 +240,10 @@ def gen_j_populate():
   gen_diff(result_dirnscaled, (sh*sh*la, th*th*la))
   cprintraw('')
 
-gen_x_extract()
-gen_f_populate()
-gen_j_populate()
+def gen_C():
+  gen_misc()
+  gen_x_extract()
+  gen_f_populate()
+  gen_j_populate()
+
+gen_C()