view +noname/benchmark.m @ 362:ded4156e53e2

Added 2nd order accurate 2nd derivative with variable coefficents in a separate implementation file, used by the class D2Variable.
author Martin Almquist <martin.almquist@it.uu.se>
date Tue, 20 Dec 2016 15:04:02 +0100
parents 1fe783681f9f
children
line wrap: on
line source

% animate(discretization, N, time_method)
%
% Example:
%      benchmark(discr,100)
%      benchmark(discr,1000,'rk4')

function hand = benchmark(discretization,N ,time_method,do_profile)
    default_arg('N',100);
    default_arg('time_method',[]);
    default_arg('do_profile',true);

    fprintf('Creating time discretization');
    tic
    ts = discretization.getTimestepper(time_method);
    fprintf(' - done  %fs\n', toc());

    if do_profile
        profile on
    end

    fprintf('Taking %d steps',N);
    tic;
    ts.stepN(N,true);
    fprintf(' - done  %fs\n', toc());

    if do_profile
        profile viewer
    end
end