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
更适合于一维问题:您是否先尝试过这个?很多好的答案出现了,比如……你是不是先尝试过这个?出现了许多好的答案,例如。。。