How to fix this error in interpolation?

1 回表示 (過去 30 日間)
Ismail Qeshta
Ismail Qeshta 2019 年 2 月 19 日
コメント済み: Ismail Qeshta 2019 年 2 月 20 日
Hi,
I have a set of data to be interpolated for two files. I could use the code below when the second file (representing Y axis) has 11 columns.
However, when the second file (representing Y axis) has only two columns, it shows the following error:
Error using griddedInterpolant
The grid vectors must contain unique points.
Error in interp1 (line 151)
F = griddedInterpolant(X,V,method);
Error in File11 (line 18)
x2 (k,:) = interp1(y3, x3, A(:,i), 'linear');
clear; clc;
Folder = cd;
N=1;
x2 = zeros(N, 10);
for k = 1:N;
Driftt = sprintf('Drift%d.out', k);
Reactt = sprintf('React%d.out', k);
matDrift = importdata(fullfile(Folder, Driftt));
matReact = importdata(fullfile(Folder, Reactt));
x1= matDrift(:,2);
y1= -matReact(:,2);
[x3, ix] = unique(x1);
y3 = y1(ix);
A=dlmread('result_all.txt');
for i=1:size(A,2)
x2 (k,:) = interp1(y3, x3, A(:,i), 'linear');
temp=x2(k,:);
temp(isnan(temp))=0.05;
x2(k,:)=temp;
fid=fopen(['result_' num2str(i) '.txt'],'a');
fprintf(fid,'%f\n',x2(k,:));
fclose(fid);
end
end
  1 件のコメント
Ismail Qeshta
Ismail Qeshta 2019 年 2 月 20 日
I have just tried to use "unique" with y3, but I got the following error:
Error using interp1>reshapeAndSortXandV (line 424)
X and V must be of the same length.
Error in interp1 (line 93)
[X,V,orig_size_v] = reshapeAndSortXandV(varargin{1},varargin{2});
Error in File11 (line 19)
x2 (k,:) = interp1(y3, x3, A(:,i), 'linear');

サインインしてコメントする。

回答 (1 件)

Matt J
Matt J 2019 年 2 月 19 日
編集済み: Matt J 2019 年 2 月 19 日
interp1 is complaining that y3 has repeated elements. They are required to be unique and monotonic.
  3 件のコメント
Matt J
Matt J 2019 年 2 月 19 日
Nope.
K>> numel(y3)
ans =
267
K>> numel(unique(y3))
ans =
266
Ismail Qeshta
Ismail Qeshta 2019 年 2 月 20 日
Thanks Matt.
Would it be possible to ask how to incorporate this into my code?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by