Skip to content
Snippets Groups Projects
Commit d2eb344d authored by Matthieu Schaller's avatar Matthieu Schaller
Browse files

Improved automatically generated documentation of the vector power functions.

parent 2287f0e6
No related branches found
No related tags found
1 merge request!328Gravity multi dt
...@@ -15,9 +15,9 @@ def ordinal(num): ...@@ -15,9 +15,9 @@ def ordinal(num):
# Get the order # Get the order
order = int(sys.argv[1]) order = int(sys.argv[1])
print "-------------------------------------------------" print "----------------------------------------------------"
print "Generating code for vector powers of order", order, "(only)." print "Generating code for vector powers of order", order, "(only)."
print "-------------------------------------------------\n" print "----------------------------------------------------\n"
print "/***************************/" print "/***************************/"
print "/* %s order vector powers */"%ordinal(order) print "/* %s order vector powers */"%ordinal(order)
...@@ -30,9 +30,14 @@ for i in range(order+1): ...@@ -30,9 +30,14 @@ for i in range(order+1):
if i + j + k == order: if i + j + k == order:
fact = factorial(i) * factorial(j) * factorial(k) fact = factorial(i) * factorial(j) * factorial(k)
print "/**" print "/**"
print "* @brief \\f$ \\frac{1}{(%d,%d,%d)!}\\vec{v}^{(%d,%d,%d)} \\f$."%(i,j,k,i,j,k) print "* @brief Compute \\f$ \\frac{1}{(%d,%d,%d)!}\\vec{v}^{(%d,%d,%d)} \\f$."%(i,j,k,i,j,k)
print "*" print "*"
print "* Note \\f$ \\frac{1}{(%d,%d,%d)!} = 1/(%d!*%d!*%d!) = 1/%d! = %e"%(i,j,k,i,j,k, fact, 1./fact) print "* Note \\f$ \\vec{v}^{(%d,%d,%d)} ="%(i,j,k),
if i > 0: print "v_x^%d"%i,
if j > 0: print "v_y^%d"%j,
if k > 0: print "v_z^%d"%k,
print "\\f$"
print "* and \\f$ \\frac{1}{(%d,%d,%d)!} = 1/(%d!*%d!*%d!) = 1/%d = %e \\f$"%(i,j,k,i,j,k, fact, 1./fact)
print "*" print "*"
print "* @param v vector (\\f$ v \\f$)." print "* @param v vector (\\f$ v \\f$)."
print "*/" print "*/"
...@@ -40,7 +45,7 @@ for i in range(order+1): ...@@ -40,7 +45,7 @@ for i in range(order+1):
print "" print ""
print " return", print " return",
if fact != 1: if fact != 1:
print "%12.15e"%(1./fact), print "%14.18e"%(1./fact),
else: else:
print "1.", print "1.",
for ii in range(i): for ii in range(i):
...@@ -50,6 +55,6 @@ for i in range(order+1): ...@@ -50,6 +55,6 @@ for i in range(order+1):
for kk in range(k): for kk in range(k):
print "* v[2]", print "* v[2]",
print ";" print ";"
print "}" print "}\n"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment