view find_elements.m @ 1012:1e437c9e5132 feature/advectionRV

Create residual viscosity package +rv and generalize the ResidualViscosity class - Generalize residual viscosity, by passing user-defined flux and calculating the time derivative outside of the update. - Create separate RungekuttaRV specifically using interior RV updates - Separate the artifical dissipation operator from the scheme AdvectionRV1D so that the same scheme can be reused for creating the diff op used by the ResidualViscosity class
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Wed, 05 Dec 2018 13:44:10 +0100
parents 48b6fb693025
children
line wrap: on
line source

% I = find_elements(a,b)
% Finds the index of elements a in b.
% a and b have to be in the same order.
function I = find_elements(a,b)
    I = [];

    j = 1;
    for i = 1:length(a)
        while b(j) ~= a(i)
            j = j + 1;
        end
        I(end+1) = j;
        j = j+1;
    end

    assert(length(I) == length(a),'Expected %d but got %d elements',length(a),length(I))
end