Skip to content

Instantly share code, notes, and snippets.

@pwl
Last active August 29, 2015 14:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pwl/186431cd2e31e52c8ff0 to your computer and use it in GitHub Desktop.
Save pwl/186431cd2e31e52c8ff0 to your computer and use it in GitHub Desktop.

Problem:

F(t,y,dy)=dy+y

Scalar equation

  • Noniterative
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=1, atol=1e-7)
3.997765492
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=2, atol=1e-7)
0.025012011
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=3, atol=1e-7)
0.008247573
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=4, atol=1e-7)
0.007423725
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=5, atol=1e-7)
0.004146738
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=6, atol=1e-7)
0.005667398
  • Iterative
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=1, abstol=1e-7)
0.623115234
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=2, abstol=1e-7)
0.023304359
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=3, abstol=1e-7)
0.015252668
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=4, abstol=1e-7)
0.005367174
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=5, abstol=1e-7)
0.00623578
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, 1.0, [0.0,10.0], maxorder=6, abstol=1e-7)
0.005821019

Vector equation

  • Noniterative
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=2)
3.122567168
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=3)
1.734124095
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=4)
1.234607904
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=5)
1.167958011
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=6)
1.427251313
  • Iterative
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=2)
2.783649465
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=3)
1.776995509
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=4)
1.223649448
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=5)
1.129902725
julia> @elapsed (tn,yn,dyn)=dasslSolve(F, [1.0:1000.0], [0.0,10.0], maxorder=6)
1.78581883
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment