Mercurial > repos > public > sbplib
annotate +noname/benchmark.m @ 42:f121bf58c1b9
Added a function for easily benchmarking a Discretization.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Thu, 05 Nov 2015 16:08:57 -0800 |
parents | |
children | 1fe783681f9f |
rev | line source |
---|---|
42
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 % animate(discretization, N, time_method) |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 % |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 % Example: |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 % benchmark(discr,100) |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 % benchmark(discr,1000,'rk4') |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
6 |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
7 function hand = benchmark(discretization,N ,time_method,do_profile) |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
8 default_arg('N',100); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
9 default_arg('time_method',[]); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
10 |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 fprintf('Creating time discretization'); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
12 tic |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
13 ts = discretization.getTimestepper(time_method); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
14 fprintf(' - done %fs\n', toc()); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
15 |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 if do_profile |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
17 profile on |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
18 end |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
19 |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
20 fprintf('Taking %d steps',N); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
21 tic; |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
22 ts.stepN(N,true); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
23 fprintf(' - done %fs\n', toc()); |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
24 |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
25 if do_profile |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
26 profile viewer |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
27 end |
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 end |