Matlab 用倍频程求解非线性方程组
我对倍频程不熟悉,想知道如何解非线性方程。下面是一个等式示例Matlab 用倍频程求解非线性方程组,matlab,math,octave,Matlab,Math,Octave,我对倍频程不熟悉,想知道如何解非线性方程。下面是一个等式示例 x^4-16x^3+61x^2-22x-12=0 更新: w+x+y+1=3 2w+3x+4y+5=10 w-x+y-1=4 谢谢。是一个很好的起点。是一个很好的起点。用于获取最接近给定x0的解决方案(当然,不一定是最接近的,但是找到的第一个): 这应该起作用: x0 = 0; f = @(x) x^4 - 16*x^3 + 61*x^2 - 22*x - 12; fzero(f,x0); ans = 0.76393 此外
x^4-16x^3+61x^2-22x-12=0
更新:
w+x+y+1=3
2w+3x+4y+5=10
w-x+y-1=4
谢谢。是一个很好的起点。是一个很好的起点。用于获取最接近给定x0
的解决方案(当然,不一定是最接近的,但是找到的第一个):
这应该起作用:
x0 = 0;
f = @(x) x^4 - 16*x^3 + 61*x^2 - 22*x - 12;
fzero(f,x0);
ans = 0.76393
此外,您还应该检查,以获得多项式的所有解
x = [1 -16 61 -22 -12]; % The coefficients of your polynomial
y = roots(x)
y =
10.29150
5.23607
0.76393
-0.29150
好吧,我还是要回答第二个问题:
x = [1 1 1; 2 3 4; 1 -1 1]; % Coefficients of w, x and y
y = [2; 5; 5]; % [3-1; 10-5; 4+1]
b = x\y
b =
2.2500
-1.5000
1.2500
用于获取最接近给定x0
的解决方案(当然,不一定是最接近的,而是找到的第一个):
这应该起作用:
x0 = 0;
f = @(x) x^4 - 16*x^3 + 61*x^2 - 22*x - 12;
fzero(f,x0);
ans = 0.76393
此外,您还应该检查,以获得多项式的所有解
x = [1 -16 61 -22 -12]; % The coefficients of your polynomial
y = roots(x)
y =
10.29150
5.23607
0.76393
-0.29150
好吧,我还是要回答第二个问题:
x = [1 1 1; 2 3 4; 1 -1 1]; % Coefficients of w, x and y
y = [2; 5; 5]; % [3-1; 10-5; 4+1]
b = x\y
b =
2.2500
-1.5000
1.2500
抱歉,我仍然不知道您是如何打印ans=0.76393的?OP在标题中提到的是Octave,而不是Matlab(尽管问题标记为两者),所以您不应该链接到Octave的文档吗?此外,您提到了
fslove
,但随后使用更合适的(因为这是一个一维问题)fzero
@DotNet,而不是键入fzero(f,x0)代码>,类型fzero(f,x0)代码>不带代码>@罗伯特普。你在回答中提到了fsolve
,但你在你的代码中提到了fzero
,这是故意的吗?@am304,不,这不是故意的!谢谢你的提醒。。。我将其更改为fzero
。我看到你在我前面回答了fsolve
,所以我将在我的回答中跳过它。=)@霍奇勒:我已经习惯了MATLAB文档,觉得它通常对倍频程也很好。但我想在这种情况下更合适,是的…=)抱歉,我仍然不知道您是如何打印ans=0.76393的?OP在标题中提到的是Octave,而不是Matlab(尽管问题标记为两者),所以您不应该链接到Octave的文档吗?此外,您提到了fslove
,但随后使用更合适的(因为这是一个一维问题)fzero
@DotNet,而不是键入fzero(f,x0)代码>,类型fzero(f,x0)代码>不带代码>@罗伯特普。你在回答中提到了fsolve
,但你在你的代码中提到了fzero
,这是故意的吗?@am304,不,这不是故意的!谢谢你的提醒。。。我将其更改为fzero
。我看到你在我前面回答了fsolve
,所以我将在我的回答中跳过它。=)@霍奇勒:我已经习惯了MATLAB文档,觉得它通常对倍频程也很好。但我想在这种情况下更合适,是的…=)正如horlchler所提到的,fzero
更适合于一维问题:正如horlchler所提到的,fzero
更适合于一维问题:您是否先尝试过这个?很多好的答案出现了,比如……你是不是先尝试过这个?出现了许多好的答案,例如。。。