古いコメントを表示
how to find a roots of a cubic equation in matlab?
回答 (1 件)
Andrei Bobrov
2012 年 2 月 25 日
eg
use roots
%polynomial x^3-6*x^2-50*x-4
p = [1 -6 -50 -4]
out = roots(p)
use solve and Symbolic Math Toolbox
syms x
out2 = solve(x^3-6*x^2-50*x-4)
vpa(out2,6)
on Nasir comment
out = zeros(3,...);
for j1 = 1:....
B = ...
A = ...
out(:,j1) = roots([1, B-1, A-3*B^2, A*B-B^2-B^3]);
end
5 件のコメント
Nasir Qazi
2012 年 2 月 25 日
Walter Roberson
2012 年 2 月 25 日
Careful, there would be three roots for each cubic, so you would not be able to store the output of roots() in to a single array location out(j1)
Andrei Bobrov
2012 年 2 月 25 日
Thank you Walter! Corrected.
Nasir Qazi
2012 年 2 月 27 日
Walter Roberson
2012 年 2 月 27 日
I think we would need to see the code.
カテゴリ
ヘルプ センター および File Exchange で Symbolic Math Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!