Mercurial > repos > public > sbplib
diff +grid/evalOn.m @ 628:0609a72dcdfe feature/grids
Factor out function for reordering components
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Fri, 20 Oct 2017 23:28:08 +0200 |
parents | c602fe0a778c |
children | 94f0f0b0d721 |
line wrap: on
line diff
--- a/+grid/evalOn.m Fri Oct 20 23:24:42 2017 +0200 +++ b/+grid/evalOn.m Fri Oct 20 23:28:08 2017 +0200 @@ -19,13 +19,7 @@ k = numberOfComponents(func); gf = func(x{:}); - - % Reorganize gf - gf_temp = gf; - gf = zeros(g.N*k, 1); - for i = 1:k - gf(i:k:end) = gf_temp((i-1)*g.N + 1 : i*g.N); - end + gf = reorderComponents(gf, k); end % Find the number of vector components of func @@ -35,3 +29,12 @@ assert(size(f0,2) == 1, 'grid:evalOn:VectorValuedWrongDim', 'A vector valued function must be given as a column vector'); k = length(f0); end + +% Reorder the components of the function to sit together +function gf = reorderComponents(a, k) + N = length(a)/k; + gf = zeros(N*k, 1); + for i = 1:k + gf(i:k:end) = a((i-1)*N + 1 : i*N); + end +end