print( "Exact solution minimum : ", min(u_initial), "Numerical solution minimum : ", min(u) )
print( "Exact solution maximum : ", max(u_initial), "Numerical solution maximum : ", max(u) )
- print( "Exact solution variation : ", np.sum([abs(u_initial[i] - u_initial[(i-1)%nx]) for i in range(nx)]), "Numerical solution variation : ", np.sum([abs(u[i] - u[(i-1)%nx]) for i in range(nx)]) )
- print( "l1 numerical error : ", dx*np.sum([abs(u[i] - u_initial[i]) for i in range(nx)])
-
+ print( "Exact solution variation : ", np.sum([abs(u_initial[i] - u_initial[(i-1)%nx]) for i in range(nx)]), "Numerical solution variation : ", np.sum([abs(u[i] - u[(i-1)%nx]) for i in range(nx)]) )
+ print( "l1 numerical error : ", dx*np.sum([abs(u[i] - u_initial[i] ) for i in range(nx)]))
+
print( "Simulation of 1D transport equation with explicit centered scheme done" )
-
- #return min, max, total variation and l1 error
+
return min(u), max(u), np.sum([abs(u[i] - u[(i-1)%nx]) for i in range(nx)]), dx*np.sum([abs(u[i] - u_initial[i]) for i in range(nx)])