Matrica yra eilutės ešelono forma, jei ji turi šias savybes:
- Bet kuri eilutė, kurią sudaro tik nuliai, yra matricos apačioje.
- Kiekvienos eilutės, kurioje nėra vien nulių, pirmasis įrašas, kuris nėra nulis, yra 1 (vadinamas pirmuoju 1).
- Dviejų iš eilės (ne nulio) eilučių pirmaujanti 1 aukštesnėje eilutėje paliekama toliau nei pirmaujanti apatinėje eilutėje.
Sumažintos eilutės ešelono formoje kiekvienos eilutės priekiniame 1 yra 0 žemiau ir virš jos tame stulpelyje.
Žemiau pateikiamas eilės-ešelono formos pavyzdys:
numpy linspace
ir sumažinta eilės-ešelono forma:
Bet kuri matrica gali būti transformuota į sumažintą eilės ešelono formą, naudojant metodą, vadinamą Gauso eliminacija. Tai ypač naudinga sprendžiant tiesinių lygčių sistemas.
Gauso eliminacija
Gauso eliminacija yra būdas konvertuoti matricą į sumažintos eilės ešelono formą. Jis taip pat gali būti naudojamas kaip būdas rasti tiesinių lygčių sistemos sprendimą. Idėja yra ta, kad atliekame keletą matematinių veiksmų eilutėje ir tęsiame tol, kol lieka tik vienas kintamasis.
Žemiau yra keletas operacijų, kurias galime atlikti:
s python
- Sukeiskite bet kurias dvi eilutes
- Pridėkite dvi eilutes kartu.
- Padauginkite vieną eilutę iš ne nulio konstantos (t. y. 1/3, -1/5, 2).
Pateikta tokia tiesinė lygtis:
ir aukščiau esanti padidinta matrica
t ff
Dabar turime tai konvertuoti į eilės-ešelono formą. Norėdami tai konvertuoti į eilės ešelono formą, turime atlikti Gauso eliminavimą.
- Pirma, turime atimti 2 * r1iš r2ir 4*r1iš r3gauti 0 pirmoje r vietoje2ir r3.
- Toliau mes sukeisime eilutes, r2 ir r3, o po to atimsime 5 * r2nuo r3gauti antrą 0 trečioje eilutėje.
- Dabar galime nustatyti vertę Su nuo r3,y. 10 z =0 ⇾ z=0. Naudodami reikšmę z =0, galime įdėti ją į r2, y = 2. Panašiai y ir z reikšmes galime įdėti į r1ir gauname reikšmę x=3
Matricos rangas
Matricos rangas yra nulinių eilučių skaičius eilutės ešelono formoje. Norėdami rasti rangą, turime atlikti šiuos veiksmus:
- Raskite duotosios matricos eilės-ešelono formą
- Suskaičiuokite nulinių eilučių skaičių.
Paimkime pavyzdinę matricą:
jei kitaip jei kitaip jei java
Dabar mes sumažiname aukščiau pateiktą matricą į eilės-ešelono formą
Čia tik dviejose eilutėse yra elementų, kurie skiriasi nuo nulio. Vadinasi, matricos rangas yra 2.
Įgyvendinimas
- Norėdami konvertuoti matricą į sumažintą eilučių ešelono formą, naudojome Sympy paketą python, pirmiausia turime jį įdiegti.
Python3
# install sympy> ! pip install sympy> # import sympy> import> sympy> # find the reduced row echelon form> sympy.Matrix([[> 4> ,> 0> ,> 1> ],[> 2> ,> 0> ,> 2> ],[> 3> ,> 0> ,> 3> ]]).rref()> # find the rank of matrix> print> ('Rank of matrix :',sympy.Matrix([[> 4> ,> 0> ,> 1> ],[> 2> ,> 0> ,> 2> ],[> 3> ,> 0> ,> 3> ]]).rank())> |
>
>
Išvestis:
(Matrix([ [1, 0, 0], [0, 0, 1], [0, 0, 0]]), (0, 2)) Rank of matrix : 2>