Re: [問題] 解方程式 如何只保留實數的解已回收
※ 引述《nanokevin (明日幸福今日修)》之銘言:
: 感謝板友的回應
: 我土法煉鋼找到了兩種方法
: 1.因為我初始值給實數 所以虛數沒出現 不過這個方法如果遇到有兩個實根可能就不行了
: syms x;
: fzero('(x^3-3*x^2+x-3)', 1)
: 2.這個方法一開始宣告x是實數 所以跑出了實數解 這應該是比較好的方法
: x = sym('x', 'real')
: Solve('x^3-3*x^2+x-3',x)
: 所以目前的問題是
: syms p;
: x = sym('x', 'real')
: p=3;
: Solve('x^3-3*x^2+x-p',x)
: 還是沒辦法跑
: 有辦法先讓Solve先認得p是多少的方式嗎?
: 謝謝
clear
clc
syms x;
p=3;
b=eval(eval(['solve(''x^3-' num2str(p) '*x^2+x-' num2str(p) ''',x)']));
for j=1:length(b)
Index(j)=isreal(b(j));
end
b=b(Index==1)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.122.23
※ 編輯: zzs2005 來自: 140.123.122.23 (04/01 15:32)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):