-
Notifications
You must be signed in to change notification settings - Fork 24
/
Copy pathuseInterpMap.m
53 lines (42 loc) · 1.54 KB
/
useInterpMap.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
function out = useInterpMap2( in, map, weight )
% function out = useInterpMap2( in, map, weight )
%
% use the indices in the NxM array 'map' to remap the data in the Lx1
% data array 'in' into an interpolated output 'out', with weights in the
% NxM array "weight".
%
% map and weight are produced by findInterpMap2.
%
if isempty(map)
warn('no map in input');
end
if isempty(weight)
warn('no weighting array');
end
if (size(map) ~= size(weight))
warn('map and weight must have same size!');
end
in = in(:);
% must loop, until Rob can find an elegant way
out = in(map(:,1)) .* weight(:,1);
for ii = 2:size(map,2);
out = out + in(map(:,ii)) .* weight(:,ii);
end
% Copyright (C) 2017 Coastal Imaging Research Network
% and Oregon State University
% This program is free software: you can redistribute it and/or
% modify it under the terms of the GNU General Public License as
% published by the Free Software Foundation, version 3 of the
% License.
% This program is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
% You should have received a copy of the GNU General Public License
% along with this program. If not, see
% <http://www.gnu.org/licenses/>.
% CIRN: https://coastal-imaging-research-network.github.io/
% CIL: http://cil-www.coas.oregonstate.edu
%
%key cBathy
%