It is important to point out that this approach only workd for a very small number of points (nodes). The differentiating matrix D should be rank one deficient. However running the following simple test shows that even for a very small problem D has additional nullspaces. Already with 20 nodes and quadratically spaced point the method generates a degenerate differentiating matrix.
n = 20;
% Generate a seto of linearly spaced nodes 0 <= x <= 1
x1 = linspace( 0, 1, n )';
% generate quadratically spaced nodes as an example of arbitrary
x2 = x1.^2;
%% Compute the Differentiating Matrices
D1 = collocD( x1 );
D2 = collocD( x2 );
%% Compute the Rank of the Matrices
% The following test shows that the matrices do not have a consistent
% rank. It may be concluded that the method, although theoritically
% sound, is serioudly deficient in its numerical behavious.
disp('Rank of the differentiating matrices');
rD1 = rank( D1 )
rD2 = rank( D2 )
% Rank deficiency
disp('Rank deficiency of the differentiating matrices');
disp('All shound be rank-1 deficient.');
rdD1 = length(x1) - rD1
rdD2 = length(x2) - rD2
Hello! It 's the first time I write on the site. This feature I really like and I think I can be of help for the thesis I am doing. I would like to know if someone could help me to understand the inputs. What is f? xn? yn? xf? yf?
Thank you very much!