How to create a symbolic vandermonde matrix in matlab?

8 vues (au cours des 30 derniers jours)
Anshuman
Anshuman le 20 Sep 2022
Commenté : Anshuman le 20 Sep 2022
I am trying to create a symbolic vandermonde matrix in matlab, but not able to do! I see the function vander() creates a matrix with numbers. But I want to create a symbolic representation; so that I can further take an inverse of that.
AX = b ; I know A = vandermonder matrix of size (nxn) and I know b is of size (nx1) both A and b are arbitraty and A is vandermonde type matrix.
How to create that A and also such that I can take the inverse as well!
Any help with this! Thanks.
  1 commentaire
Matt J
Matt J le 20 Sep 2022
Modifié(e) : Matt J le 20 Sep 2022
But I want to create a symbolic representation; so that I can further take an inverse of that.
Why would you wish to do that? Why not just use polyfit(), as is normally done?

Connectez-vous pour commenter.

Réponse acceptée

Chunru
Chunru le 20 Sep 2022
Modifié(e) : Chunru le 20 Sep 2022
N = 4;
A = sym('A', [N, N])
A = 
v = sym('v', [N, 1]);
A = v.^(N-1:-1:0)
A = 
inv(A)
ans = 
  3 commentaires
Chunru
Chunru le 20 Sep 2022
M = 4; N = 5;
A = sym('A', [M, N])
A = 
v = sym('v', [M, 1]);
A = v.^(N-1:-1:0)
A = 
Anshuman
Anshuman le 20 Sep 2022
Also how to create a vandermonde MxN matrix, with entries from 0-1 equal spaced; I can create it for MxM type matrix but not able to do so in MxN ;
In MxM I have ; what to do in MxN ; where M is between [0-1] equally spaced and N is the degree to which I want to take the vandermonde matrix.
t1 = linspace(0,1,M);
A = fliplr(vander(t1));

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by