牛頓迭代法求解非線性方程組matlab

2021-05-21 20:02:04 字數 2226 閱讀 9945

1樓:匿名使用者

g = inline('9*y^2-24*y+13');

gy = inline('18*y-24 ');

a = 2;

e1=0.0001;n=1;

y = a-(g(a)/gy(a));

z = abs(y-a);

while z>e1

y = a-(g(a)/gy(a));

z = abs(y-a);

a = y;n=n+1;

enda,n

求解非線性方程組的牛頓迭代法的具體思想及方法並附有matlab 源程式

2樓:匿名使用者

function x=newton(fname,dfname,x0,e,n)

%用途:newton迭代法解非線性方程f(x)=0

%fname和dfname分別表示f(x)及其導函式的m函式控制代碼或內嵌函式表示式

%x0為迭代初值,e為精度(預設值1e-7)

%x為返回數值解,並顯示計算過程,設定迭代次數上限n以防發散(預設500次)

%例項:解方程ln(x+sin(x))=0

%在matlab視窗中輸入:newton(@(x)log(x+sin(x)),@(x)(1+cos(x))/(x+sin(x)),0.1)

if nargin<5,n=500;end

if nargin<4,e=1e-7;end

x=x0;x0=x+2*e;k=0;

fprintf('x[%d]=%12.9f\n',k,x)

while abs(x0-x)>e&&k

k=k+1;

x0=x;x=x0-feval(fname,x0)/feval(dfname,x0);

fprintf('x[%d]=%12.9f\n',k,x)

endif k==n

fprintf('已達到迭代次數上限');

end上面的程式段只是一個思路,你可以自己再理解一下,其實matlab中有一個內部函式fsolve,就可以直接求解非線性方程組的,很簡單好用的!

祝你解決問題!

3樓:匿名使用者

# include

# include

int main ()

while (fabs(x1 - x0) >= 1e-5);

printf ("%5.2f\n",x1);

return 0;}

matlab用牛頓迭代求解非線性方程的程式

4樓:匿名使用者

給你一個完整版:% 牛頓法求

解非線性方程

組function main()

clc; clear all;

f = @(x)log(x+sin(x)); % 測試函式

df = @(x)(1+cos(x))/(x+sin(x)); % 導數函式

x0 = 0.1; % 迭代初值

x = testnewton(f, df, x0) % 牛頓法求解

function x = testnewton(fname, dfname, x0, e, n)

% 用途:newton迭代法解非線性方程f(x)=0

% fname和dfname分別表示f(x)及其導函式的m函式控制代碼或內嵌函式表示式

% x0為迭代初值,e為精度(預設值1e-7)

% x為返回數值解,並顯示計算過程,設定迭代次數上限n以防發散(預設500次)% 輸入引數

if nargin < 5

n = 500;

endif nargin < 4

e = 1e-7;

endx = x0; % 初值

x0 = x+2*e; % 浮動

k = 0; % 步數

列印資訊

while abs(x0-x)>e && k

k = k+1; % 記錄步數

x0 = x; % 更新x(k)

x = x0 - feval(fname,x0)/feval(dfname,x0); % 更新x(k+1)

列印資訊

endif k == n

fprintf('已達到迭代次數上限'); % 迭代結束

end結果:

如何用牛頓迭代法求非線性方程組的解VB程式x

牛頓迭代法求方程的根 n 0 double x 1.2 初值 double 牛頓迭代法解方程組的解 x0為迭代的初值,n為迭代次數,jingdu為精度 牛頓迭代法求解非線性方程組 matlab 200 g inline 9 y 2 24 y 13 gy inline 18 y 24 a 2 e1 0...

線性代數求方程組通解,線性代數,線性方程組。求通解

對隱式線性方程組copy,注意以下幾點 1.確定係數矩陣的秩r a 由此得 ax 0 的基礎解系所含向量的個數 n r a 2.ax b 的解的線性組合仍是其解的充分必要條件是 組合係數的和等於1.由此得特解 3.ax b 的解的差是ax 0的解 由此得基礎解系 此題 1.r a 3 是已知,四元線...

求解非齊次線性方程組的通解,求解線性代數非齊次線性方程組通解

增廣矩陣 a,b 1 1 3 1 1 3 1 3 4 4 初等行變換為 1 1 3 1 1 0 4 6 7 1 r a,b r a 2 4,方程組有無窮多解。方程組化為 x1 x2 1 3x3 x4 4x2 1 6x3 7x4 取 x3 0,x4 1,得 x2 2,x1 2,即得特版解 2,2,0,...