I have a third degree equation, with variable a matrix of 256*256. How can I solve it in MATLAB?

1 vue (au cours des 30 derniers jours)
I have tried to solve it using fsolve; but it is solving only upto 64*64 matrix. The equation is ax^3+bx^2+cx+d=0; where a,b,c and d are constant matrix of 256*256 size. And x is variable of same size 256*256.
  2 commentaires
KSSV
KSSV le 14 Sep 2017
Then you can split your matrix into sub blocks of size 64*64 and solve it..:)
By the way what equation it is? You have to show us the code.
Anshika Goel
Anshika Goel le 14 Sep 2017
Modifié(e) : Anshika Goel le 15 Sep 2017
ax^3+bx^2+cx+d=0; where a,b,c and d are constant matrix of 256*256 size. And x is variable of same size 256*256.
By splitting the matrix into sub blocks, the program is taking much time to execute.

Connectez-vous pour commenter.

Réponse acceptée

KSSV
KSSV le 15 Sep 2017
Let A,B,C,D be your respective coefficients (Ax^3+Bx^2+Cx+D=0) of size 256*256..
R = zeros(n,n,3) ; % roots initialized
for i = 1:n
for j = 1:n
p = [A(i,j) B(i,j) C(i,j) D(i,j)] ;
r = roots(p) ;
R(i,j,:) = r ;
end
end

Plus de réponses (0)

Catégories

En savoir plus sur Polynomials dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by