怎么用matlab求方程的根?
1、創(chuàng)建迭代公式,即 x(k+1)=sqrt(10/x(k)-4*x(k))
2、確定初值,x(1)=1.5
3、使用while循環(huán)語句,進(jìn)行迭代
4、當(dāng)x(k+1)-x(k)<ε=1e-5,則x(k)為方程的根。
實(shí)現(xiàn)代碼:
x(1)=1.5
k=1;
while k<10000
x(k+1)=sqrt(10/x(k)-4*x(k));
if abs(x(k+1)-x(k))<1e-5
disp('f(x)=x^3+4*x^2-10=0 在【1,2】上的一個根為')
disp(x(k))
break
end
k = k + 1;
end
由于使用該迭代公式無法收斂,故該法不適應(yīng)求解其方程。應(yīng)該考慮其他數(shù)值方法,如二分法,牛頓法等
其實(shí)數(shù)解為1.3652
從零開始的matlab學(xué)習(xí)筆記——(12)其它求根方法
在之前的內(nèi)容中探討了多項(xiàng)式的根,本篇我們將轉(zhuǎn)向討論方程組和超越方程的求解方法。對于多元一次方程組,如3x+2y=7.5和5x+7y=23.5,我們可以運(yùn)用克拉默法則,通過矩陣運(yùn)算求解。以下是基本的步驟:首先定義系數(shù)矩陣a和常數(shù)矩陣b:a = [3 2; 5 7];b = [7.5; 23.5];然后利用inv(a)*b得到...
matlab中怎么求解一元高次方程呢?
作為實(shí)例,假設(shè)我們要解方程x^2 - 3x + 2 = 0。首先,我們需要定義該多項(xiàng)式的系數(shù)向量。在這個例子中,向量p被設(shè)為[1, -3, 2],代表方程x^2 - 3x + 2 = 0。接著,我們使用roots函數(shù)計(jì)算方程的根。執(zhí)行以下Matlab代碼即可求解:定義系數(shù)向量:p = [1, -3, 2];求解方程:roots_of_...
怎么用matlab解方程
matlab怎么解方程方法如下:一般用matlab求解方程有兩種方法:用軟件自帶的solve()函數(shù)、fsolve()函數(shù)、roots()函數(shù)等;利用數(shù)值分析的方法(如二分法,牛頓法等)自行編程其數(shù)值函數(shù)。
怎么樣用Matlab計(jì)算復(fù)雜方程的根?
p = [135 280 370 665 1150 1300];t = [];for i = 1:numel(p) t = [t; zeros(numel(p)-i+1, 1)+p(i)];endR = .7;a = .1;f = @(m)sum(t.^m .* log(t))\/sum(t.^m) - log(log(R)\/log(a) * sum(t.^m))^(1\/m);m = fsolve(f, 1)
matlab 語言 用弦截法任意實(shí)數(shù)方程求實(shí)根
由于y=0是一個沒有意義的點(diǎn),故從0.01開始。輸入:y=secant('0.15\/y-y*sin(0.15^y)-1',0.01,5)結(jié)果:y=0.其中secant.m 內(nèi)容為:functionroot=Secant(f,a,b,eps)if(nargin==3)eps=1.0e-6;endf1=subs(sym(f),findsym(sym(f)),a);f2=subs(sym(f),findsym(sym(f)),b);if...
Matlab編寫程序用二分法求解非線性方程的根
用二分法求方程x*x-x-1=0的正根,要求精確到小數(shù)點(diǎn)后四位。(matlab)l1 計(jì)算公式 f(ak)*f(bk)<0;bk-ak=1\/2k-1*(b-a);a1<=a2<=… <=ak<=…,b1<=b2<=…<=bk<=…。l2 算法分析 設(shè)f(x)∈C[a,b],且f(a)f(b)<0,在[a,b]間尋找實(shí)根,記[a1,b1]=[a,b],取x1=(...
怎樣用MATLAB求一元四次方程的根?
eqn = @(x) 4*x^4-4*x^2;fzero(eqn, 0)fzero(eqn, -1.1)fzero(eqn, -1)fzero(eqn, -0.9)fzero(eqn, 0.0)fzero(eqn, 1)fzero(eqn, 1.1)
Matlab求解一元四次方程的實(shí)數(shù)根,一定要實(shí)數(shù)要, 自己編寫函數(shù)求解_百度...
二分法:%假定方程為x^4-1\/2=0 1.定義函數(shù) function y=f(x)y=x^4-1\/2;2.計(jì)算程序---已調(diào)試好了。clear;clc;a=0;b=1;tol=1;while tol>1e-4 c=(a+b)\/2;y1=f(c);if y1==0 tol=0;else if f(a)*f(c)<0 b=c;else a=b;b=c;end c=(a+b)\/2;y2=f(c);tol...
如何用matlab求代數(shù)方程3x5+4x4+7x3+2x2+9x+12=0的根
【1】>> roots([3 4 7 2 9 12])ans = -0.8612 + 1.4377i -0.8612 - 1.4377i 0.6737 + 1.0159i 0.6737 - 1.0159i -0.9583 【2】>> f=sym('(x+3)*(x+5)*(x+8)*(x+9)')f = (x+3)*(x+5)*(x+8)*(x+9)>> expand(f)ans = x^4+25*x^3+223*x^...
求用MATLAB編制方程求根的二分法和Newton法的 Matlab 程序!!!謝謝...
1 區(qū)間二分法求出的僅僅是方程的一個單根,如果方程有重根或者多個根時,在做區(qū)間二分法時就會出現(xiàn)分叉,這樣方程有幾個根,就會產(chǎn)生幾個實(shí)數(shù)序列,每一個實(shí)數(shù)序列的極限便是方程的一個根 2 通常用區(qū)間二分法為一些迭代法提供靠近x^*的初始選代值;3 區(qū)間二分法的缺點(diǎn)是不能求方程的復(fù)數(shù)根。format lon...
相關(guān)評說:
金牛區(qū)模幅: ______[答案] 代碼如下:function rtn=newton1(fx,dfx,x0,tol,N)% Newton Method% The first parameter fx is a external function with respect to viable x.% The second parameter dfx is the first order diffential function ...
金牛區(qū)模幅: ______[答案] 若a=2,b=3,c=1,程序如下 p=[2 3 1]; x=roots(p)
金牛區(qū)模幅: ______[答案] 用>> ezplot('exp(x)+x^3+x^2+1',[-1,1])可以看出,方程沒有實(shí)根.>> solve('exp(x)+x^3+x^2+1=0')ans =6.3951031211035325819457205443799+5.0863211229750221515823443830895*i
金牛區(qū)模幅: ______ 用法以這個為例: x+A*y=10 x-B*y=1 其中x,y為變量,A,B為字母系數(shù). 只要在Matlab中輸入 syms x,y,A,B [x y]=solve('x+A*y=10','x-B*y=1','x','y') 即可求出解 x = (A + 10*B)/(A + B) y = 9/(A + B) 對于函數(shù)solve的具體用法,可以通過輸入help solve來學(xué)...
金牛區(qū)模幅: ______ clear;clc fq=@(x)sin(x)*cos(x)-x^2; fplot(fq,[-3 3]) hold on plot([-5 5],[0 0],'r') x0=[0 1]; for ii=1:2 [x(ii) fval(ii)]=fzero(fq,x0(ii)); end x plot(x,fval,'*')
金牛區(qū)模幅: ______ 對于a*x^2+b*x+c這種方程的根求解方法,有 方法一 syms x syms a b c solve(a*x^2+b*x+c,'x') 運(yùn)行結(jié)果 ans = -(b + (b^2 - 4*a*c)^(1/2))/(2*a)-(b - (b^2 - 4*a*c)^(1/2))/(2*a) 方法二 p=[a b c]; x=roots(p) 運(yùn)行結(jié)果 x = -(b + (b^2 - 4*a*c)^(1/2))/(2*a)-(b - (b^2 - 4*a*c)^(1/2))/(2*a)
金牛區(qū)模幅: ______[答案] 若a=2,b=3,c=1,程序如下 p=[2 3 1]; x=roots(p) 結(jié)果為x =-1.0000 和-0.5000
金牛區(qū)模幅: ______ >> roots([3 4 7 2 9 12]) ans =-0.8612 + 1.4377i-0.8612 - 1.4377i0.6737 + 1.0159i0.6737 - 1.0159i-0.9583
金牛區(qū)模幅: ______[答案] 用牛頓迭代法,求導(dǎo)x=0.29644 >> x0=0;tol=1e-6;x1=newton(x0,tol) n = 6 x1 = 0.29644 >>syms x,ezplot(sin(4*x^2-4*x+1)-(3/4)*x-1/(10*x+3)+9/40),grid on >>hold on,plot(double(x1),0,'p'),text(0.5,1,'Zeros Point') 代碼見附件 圖形見下圖
金牛區(qū)模幅: ______ 一、工具:Matlab2012b 二、操作步驟: A.解一元方程 【1】先舉一例,解方程"x^2+100*x+99=0"在matlab ”Command Window"中輸入如下命令:x=solve('x^2+100*x+99=0','x')見下圖 【2】回車后,matlab就求出了這個一元二次方程...