Mercurial > repos > public > sbplib
annotate +noname/benchmark.m @ 1119:8984b12feba6 feature/poroelastic
Add diffOp (currently scheme) for Divergence, not sure if this belongs in +scheme.
| author | Martin Almquist <malmquist@stanford.edu> |
|---|---|
| date | Mon, 06 May 2019 21:23:21 -0700 |
| parents | 1fe783681f9f |
| children |
| 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',[]); |
|
115
1fe783681f9f
noname.benchmark: added deafult value to do_profile.
Jonatan Werpers <jonatan@werpers.com>
parents:
42
diff
changeset
|
10 default_arg('do_profile',true); |
|
42
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
12 fprintf('Creating time discretization'); |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
13 tic |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
14 ts = discretization.getTimestepper(time_method); |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
15 fprintf(' - done %fs\n', toc()); |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
17 if do_profile |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
18 profile on |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
19 end |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
20 |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
21 fprintf('Taking %d steps',N); |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
22 tic; |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
23 ts.stepN(N,true); |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
24 fprintf(' - done %fs\n', toc()); |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
25 |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
26 if do_profile |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
27 profile viewer |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 end |
|
f121bf58c1b9
Added a function for easily benchmarking a Discretization.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
29 end |
