国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

線性方程組的解法及軟件實(shí)現(xiàn)

2018-01-18 10:03:58田睿
課程教育研究 2018年42期
關(guān)鍵詞:線性方程組

田睿

【摘要】一般線性方程組的性質(zhì)和其求解方法是基礎(chǔ)數(shù)學(xué)領(lǐng)域下代數(shù)分支的基本內(nèi)容,在其解的研究發(fā)展中產(chǎn)生了矩陣、秩以及行列式等概念。本文圍繞線性方程組的求解,從解的存在定理、解的三種基本解法等理論研究到手動(dòng)求解。再?gòu)氖謩?dòng)求解到利用軟件進(jìn)行求解做了一系列系統(tǒng)的探究,其中軟件部分是針對(duì)MATLAB,Python的實(shí)際應(yīng)用。

【關(guān)鍵詞】線性方程組 ?解的存在定理 ?三種解法 ?Matlab ?Python

【中圖分類號(hào)】G633.6 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】2095-3089(2018)42-0143-03

線性方程組及其解法涉及到秩、矩陣、行列式、向量等高階線性代數(shù)的基本概念,是線性代數(shù)的基本內(nèi)容。本篇論文中研究的線性方程組及其解法是我們小學(xué)、初高中線性方程組解法的更高階的知識(shí)擴(kuò)充,是用矩陣和行列式等概念將方程組本身和它的解的結(jié)構(gòu)抽象出來,從簡(jiǎn)單的解具體線性方程組的現(xiàn)象中提煉出求解步驟的本質(zhì)規(guī)律的過程。本篇論文從理論入手,介紹了線性方程組的定義,深入地研究了線性方程組的三種解法及其相互對(duì)比,然后用手動(dòng)求解具體案例的方法加以應(yīng)用,最后研究總結(jié)了如何利用Matlab和Python軟件進(jìn)行求解線性方程組。

1.線性方程組解的相關(guān)定義

1.1線性方程組及矩陣

一般線性方程組的形式為:

a11x1+a12x2+…+a1nxn=b1a21x1+a22x2+…+a2nxn=b2……am1x1+am2x2+…+amnxn=bm ? ? ? (1)

其中x1,x2,…,xn是n個(gè)未知量(也稱為“元”),其余都為常數(shù)項(xiàng)。

線性方程組(1)的系數(shù)矩陣記為:

A=■

線性方程組(1)的增廣矩陣記為:

當(dāng)b1,b2,…,bm全都等于0時(shí)所對(duì)應(yīng)的方程組稱為(1)的導(dǎo)出組。

1.2矩陣的乘法

兩個(gè)矩陣相乘依然得出一個(gè)矩陣,且定義規(guī)定兩個(gè)矩陣能夠相乘當(dāng)且僅當(dāng)矩陣一的列數(shù)和等于矩陣二的行數(shù),即設(shè)m、n、p均為常數(shù),那么形狀為m?鄢n與 n?鄢p的兩個(gè)矩陣可以相乘,并且按照如下規(guī)則進(jìn)行計(jì)算:

(AB)ij=■aikbkj=ai1b1j+ai2b2j+…+aipbpj

例如:

若A=■ B=■

則C=AB=■

2.線性方程組的求解方法

2.1高斯消元法

高斯消元法的本質(zhì)是不斷的利用三種初等變換對(duì)線性方程組進(jìn)行消元,最后使得方程組呈現(xiàn)階梯型。其中初等變換總共分為三種:

(1)讓方程乘以一個(gè)非0的數(shù)

(2)兩個(gè)方程相加

(3)互換兩個(gè)方程的位置

其中基于的原理為:對(duì)方程組進(jìn)行以上三種初等變換本質(zhì)上只是對(duì)未知數(shù)前的系數(shù)進(jìn)行乘法和加法,不會(huì)使得方程組的解有變化。根據(jù)最后所得的階梯型矩陣的具體情況可知線性方程組的解分為三種情況:

(1)無解。若所得梯形方程組為:

c11x1+c12x2+…+c1rxr+…+c1nxn=d1, ? ? ? c22x2+…+c2rxr+…+c2nxn=d2, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?…… ? ? ? ? ? ? ? ? ? ?crrxr+…+crnxn=dr, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 0=dr+1, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0=0, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? …… ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0=0.

其中d1,d2…dr,dr+1均不為零,由于0等于非0的數(shù)始終不成立,所以方程組無解。

(2)有唯一解:

若所得階梯方程組為:

c11x1+c12x2+…+c1nxn=d1, ? ? ? c22x2+…+c2nxn=d2, ? ? ? ? ? ? ? ? ? ? ?…… ? ? ? ? ? ? ? ? ? cnnxn=dn.

最終仍有n個(gè)非0的方程,那么通過xn=dn/cnn層層倒推可得出相應(yīng)唯一的一組xn-1,…,x2,x1。

(3)有無數(shù)組解:

若所得階梯方程組為:

c11x1+c12x2+…+c1rxr+c1r+1xr+1+…+c1nxn=d1, ? ? ? c22x2+…+c2rxr+c2r+1xr+1+…+c2nxn=d2, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? …… ? ? ? ? ? ? ? ? ? ?crrxr+crr+1xr+1+…+crnxn=dn.

此時(shí)r<n,可將任意一組滿足條件的xr,xr+1,…xn帶入第r個(gè)方程,再將第r個(gè)方程分別帶入前r-1個(gè)方程,可分別求出一組x1,x2…xr-1。因?yàn)榭烧业綗o數(shù)組滿足第r個(gè)方程的xr,xr+1…xn,所以線性方程組有無數(shù)組解。

綜上所述,

(1)若r(A)≠ r([A,b]),則無解(其中r代表秩);

(2)若r(A)=r([A,b])=n,則有唯一解,

(3)若r(A)≠r([A,b])<n,則有無數(shù)解。

容易證明,在第情況(3)下,該方程組任意一個(gè)解,都可以用該線性方程組的一個(gè)特解及其導(dǎo)出組的基礎(chǔ)解系刻畫。

2.2 Cramer法則

行列式在數(shù)學(xué)中是一個(gè)函數(shù),自變量是正方形矩陣,輸出的是一個(gè)數(shù),記作det(A)或 | A | 。

Cramer法則即:若| A |≠0,則方程組有唯一解。且| A |≠0時(shí),方程組的唯一解有如下具體的計(jì)算公式:

x1=■,x2=■,…,xn=■

其中dj 是把矩陣A中第j 列換成方程組的常數(shù)項(xiàng) b1,b2,…所成的矩陣的行列式,即

dj=■,j=1,2,…,n.

2.3 逆矩陣法

逆矩陣:設(shè)A、B均為方陣,若A?鄢B=E(其中E為單位矩陣),則B和A互為逆矩陣。

對(duì)于方程組

a11x1+a12x2+…+a1nxn=b1a21x1+a22x2+…+a2nxn=b2……am1x1+am2x2+…+amnxn=bm

A=■ X=■ B=■

翻譯成矩陣的“語(yǔ)言”,上式等價(jià)于AX=B,若A的逆矩陣存在,左右兩邊同時(shí)乘以A-1,則等式變?yōu)閄=A-1B,從而得到了方程組的解。因此只要求得矩陣A的逆矩陣便可求得方程租的解,可用如下方法求得逆矩陣:

行初等變換法求逆矩陣:

A=■

E=■(E共有n行n列)

(A|E)=■

對(duì)(A|E)進(jìn)行初等變換,并將左邊化為單位矩陣,那么與之得出的對(duì)應(yīng)的右邊部分即為A-1,即得到(E| A-1):

(E|A∧(-1))=■

則A的逆矩陣為:

A∧(-1)=■

由此可求得方程組的解。

2.4 線性方程組三種解法對(duì)比及聯(lián)系

(1)高斯消元法的缺點(diǎn)

不適用于未知數(shù)多或方程個(gè)數(shù)多的情況,過于繁瑣。

(2)若A為方陣,可先用Cramer法則確定線性方程組是否有唯一解后,再選擇用或不用高斯消元法求解。

若| A |=0,則可用高斯消元法求得方程組唯一解。

若| A |≠0,則方程組無解或有無數(shù)組解。此時(shí),當(dāng)r<n時(shí),方程組有無數(shù)組解;反之無解。

(3)Cramer法則缺點(diǎn)

①求解效率較低。

②當(dāng)| A |=0時(shí),不能確定是無解還是有無窮多組解。

③只適用于n?鄢n的矩陣。

2.5 三種解法的實(shí)際運(yùn)用舉例

x1-2x2+3x3-4x4=4x2-x3+x4=-3x1+3x2+x4=1-7x2+3x3+x4=-3

(1)高斯消元法

■→■→■ 由此方程組化為:

x1-2x2+3x3-4x4=4 ? ? ? x2-x3+x4=-3 ? ? ? -x3+2x4=-6 ? ? ? ? ?-2x3=-12→x1=-8x2=3x3=6x4=0

(2)Cramer法則

系數(shù)矩陣的行列式=■

=■+2■+3■+4■

=(0-3+7+3-0+9)+2(0-0+0+1-0+3)+3(0-0+0-1-0-7)+4(0-0+0-3-0+7)=16+8-24+16=16≠0,因此有唯一解

d=16

d1=■=■-3■-■

=(2+6+3+21+28-12)-3(-4-12-9+9+12+36)-(12-28+18+6+9+63)=48-96-80=-128

d2=■=■-4■+3■+4■

=(0+9+1+3+3+0)-4(0+0+1+0+0+3)+3(0+0+3+0+0+3)+4(0+0+9+0+0+3)=16-16+18+48=66

d3=■=96 d4=■=0

x1=d1/d=-8x2=d2/d=3x3=d3/d=6x4=d4/d=0

(3)逆矩陣乘積法

(A|E)=■→■ →■→■→■

因此A^(-1)=■

X= A^(-1)B=■ ■=■

x1=-8x23x3=6x4=0

3.利用軟件求解線性方程組

3.1 利用MATLAB進(jìn)行求解

方法一:X=A\b

對(duì)m×n的線性方程組,用函數(shù)rank()查看A和(A,b)的秩,

(1)若rank(A)= rank (|A,b|)=n,則X=A\b輸出方程的唯一解。

(2)若rank (A)= rank (|A,b|)<n,方程組有無數(shù)組解,此時(shí)X=A\b的輸出結(jié)果為方程租的一個(gè)特解,需進(jìn)一步用null(A)或null(A.‘r)(其中r為A的秩)找到方程組的基礎(chǔ)解系。

(3)若rank (A) ≠rank (|A,b|),此時(shí)輸出結(jié)果為空。

方法二:X=inv(A)?鄢b

此方法為逆矩陣法。適用于m=n=rank (A)的情形。

方法三:X=pinv(A)?鄢b

適用于無解的情形,輸出的為近似解。

方法四:用Cramer法則直接帶入行列式公式(行列式用det()函數(shù)),適用于有唯一解的情況。

3.2利用Python進(jìn)行求解

利用sympy包中的solve函數(shù):

示例:

from sympy import?鄢

a=Matrix([[1,1,3],[1,2,4]]) #定義系數(shù)矩陣

b=Matrix([[1,2]]) ? #定義等號(hào)右邊常數(shù)向量

x=symarray(‘x,3) ?#定義未知數(shù)個(gè)數(shù)

solve(a?鄢x-b)

若結(jié)果為空,則方程組無解;

若結(jié)果為常數(shù)解,則其為唯一的解;

若結(jié)果帶有自由變量,類似于{x_0:-2x_2,x_1:-x_2+1},則方程組有無數(shù)組解。

參考文獻(xiàn):

[1]夏磊.線性方程組的解法探討及MAPLE實(shí)現(xiàn)[J].淮南職業(yè)技術(shù)學(xué)院學(xué)報(bào),2017(6):74-77

[2]曾振新.關(guān)于線性變換乘法和矩陣乘法[J].數(shù)學(xué)學(xué)習(xí)與研究,2016,19:149-151

[3]王萼芳,石生明.高等代數(shù)[M].北京:高等教育出版社,2003:178-179

[4]肖瀅.逆矩陣的判定及計(jì)算方法[J].高等數(shù)學(xué)研究,2016(4):73-76

[5]陳永勝,劉洋萍.基于MATLAB求解非齊次線性方程組[J].赤峰學(xué)院學(xué)報(bào).2009(10):1-2

猜你喜歡
線性方程組
一類整系數(shù)齊次線性方程組的整數(shù)解存在性問題
求解非線性方程組的Newton迭代與Newton-Kazcmarz迭代的吸引域
H-矩陣線性方程組的一類預(yù)條件并行多分裂SOR迭代法
線性方程組解的判別
保護(hù)私有信息的一般線性方程組計(jì)算協(xié)議
基于Matlab實(shí)現(xiàn)線性方程組的迭代解法
呼图壁县| 承德县| 彭山县| 营口市| 阜宁县| 诸城市| 公主岭市| 石林| 焦作市| 泰兴市| 娱乐| 满洲里市| 北海市| 青龙| 安平县| 团风县| 城固县| 弥渡县| 喜德县| 文化| 龙里县| 仁化县| 清流县| 双辽市| 奇台县| 萨迦县| 济阳县| 泗水县| 伊金霍洛旗| 徐州市| 陇西县| 平顶山市| 福海县| 高安市| 万州区| 山阴县| 连云港市| 漳平市| 霍山县| 鲜城| 大姚县|