view +util/semidiscrete2function.m @ 1154:3108963cc42c feature/rv

Improve efficiency of diffOps in Burgers2d, the artificial diffusion operator in rv.constructDiffOps and the RungekuttaExteriorRv time-steppers
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Wed, 06 Mar 2019 09:45:52 +0100
parents 48b6fb693025
children
line wrap: on
line source

function F = semidiscrete2function(D,S)
    % TODO: Find threshhold when sparse makes sense.
    % TODO: Why does having the spase block slow down convergence.m (or does it?)
    if size(D,1) > 500
        D = sparse(D);
    end

    if ~isa(S,'function_handle')
        F = @(w,t)(D*w + S);
    else
        F = @(w,t)(D*w + S(t));
    end
end