» »

Računanje matrične enačbe

Računanje matrične enačbe

soulfly ::

Lep pozdrav,

imam primer matrične enačbe: 2X + B = AX - 3A zanima me samo kako pripraviti enačbo za nadaljno reševanje?

Dobil sem tako rešitev in me zanima, če je pravilna?

1.korak
2X + B = AX - 3A

2.korak
2X - AX = -3A - B

3.korak
(2 - A)X = -3A -B

Rešitev:
X = (2 - A)^-1 * (-3A - B)

Math Freak ::

Koliko pa je 2 - A (število - matrika)?

McHusch ::

Ja, tam vmes ti manjka identiteta

TheCyborg ::

Kje vmes manjka identiteta? Ali lahko mogoče napišeš postopek?

Lp

dragana ::

Nič ne manjka. Rešitev je pravilna (če te v enačbi zanima x).

Math Freak ::

Mogoče bosta lažje razumela na primeru:
vse matrike so dimenzije 2x2.

X = [1 2;3 4]
B = [-6 -8;-5 -13]
A = [-1 -2;-2 -1]

1. korak
2*[1 2;3 4] + [-6 -8;-5 -13] = [-1 -2;-2 -1]*[1 2;3 4] - 3*[-1 -2;-2 -1]

2. korak
2*[1 2;3 4] - [-1 -2;-2 -1]*[1 2;3 4] = - 3*[-1 -2;-2 -1] - [-6 -8;-5 -13]

3. korak
(2 - [-1 -2;-2 -1])*[1 2;3 4] = - 3*[-1 -2;-2 -1] - [-6 -8;-5 -13]

Težko boš odštel: 2 - [-1 -2;-2 -1].
Pravilno bi bilo: [2 0;0 2] - [-1 -2;-2 -1].
Oziroma: 2*I - [-1 -2;-2 -1].

Math Freak ::

Dve matriki lahko seštejemo/odštejemo le, če sta enakih dimenzij. Skalar 2 je matrika dimenzije 1x1, matrika A pa je v mojem primeru dimenzije 2x2. Bo šlo?

Zgodovina sprememb…

technolog ::

Nop. Skalar ni 1x1 matika.

Da ne boš preveč šopiril, glej tole spodaj:

https://math.stackexchange.com/question...

lebdim ::

ja, potem je pa rešitev: (2I - A)-1*(-3A-B)

Math Freak ::

@technolog

zanimivo, tebi zgledajo moji odgovori kot šopirjenje. Ok, vzeto na znanje.

Ja, matrika 1x1 je skalar, obratno pa ni nujno.

technolog ::

Ja. Iz tona pisanja.

Matrika ni skalar. To sta dva čisto različna matematična objekta.

Sploh pa je enakost simetrična, kar pomeni, če a = b, potem tud b = a. To kar si napisal, nima smisla.

TheCyborg ::

2 - A mislim da ni težko odšteti. Enostavno od 2 odštejemo vsak element v matriki A ali se motim?

Oz. ali je zaradi te enotske matrike (I), ki se pomnoži z 2, potem lažje izračunati inverz matrike? Ker ko sem računal inverz 2-A sem dobil vse ulomke. Ne razumem ravno zakaj bi množil vmes z enotsko matriko, če lahko od 2 normalno odšteješ vsak element v matriki.

Lp

Popravek: Oz. če pravilno razumem, ker števila ne moreš odštevati enostavno od matrike, ga je potrebno množiti z enotsko matriko, posledično dobimo 2 matriki, kateri pa lahko normalno odštejemo? In če gre za matrike 3x3, potem je tudi enotska matrika 3x3 pomnožena s številom?

V mojem primeru je matrika A = [5 4 1; 0 1 2; 0 3 3]. In le odštejem 2*I - A, dobim: [-3 -4 -1; 0 1 -2; 0 -3 -1]. Če pa normalno odštejem matriko A od števila 2, dobim pa

2 - A = [-3 -2 1; 2 1 0; 2 -1 -1]

Verjetno je bolj pravilno da enotsko matriko množiš +2 (oz. skalar) ter jo odšteješ. Saj drugače ne gre matrik odštevat?

Se opravičujem če bolj počasi dojemam, hvala za pomoč do sedaj :)

Zgodovina sprememb…

technolog ::

Motiš se. Odštejemo samo od diagonalnih elementov, ostale pustimo pri miru.

Zgodovina sprememb…

Math Freak ::

@technolog

Na temo ali je 1x1 matrika skalar ali matrika imaš celo poplavo tem, kjer eni z rečejo da je 1x1 matrika skalar. Seveda je treba biti pozoren kako množiš to matriko z ostalimi matrikami.

Tudi Matlab interpretira skalar kot 1x1 matriko. Če ti to ni všeč tudi prav. Samo vidim da imaš kar težave z razumevanjem matrik.

technolog ::

Ti pa z razumevanjem ekvivalenčnih relacij.

Matlab pa seveda to lahko naredi, vendar zato zavrže pravilo, ki pravi, da če množiš matriki dimenzij a x b in c x d, potem mora veljat b == c.

Zgodovina sprememb…

Math Freak ::

@TheCyborg
Če matriko množiš z identiteto, dobiš prvotno matriko nazaj.

2X - AX = -3A - B
2*I*X - A*X = -3*A - B
(2*I-A)*X = -3*A - B

Zgodovina sprememb…

lebdim ::

folks, hehe, ne se prepirat zaradi traparij ...
množenje matrik je smiselno in tudi možno, če množimo matriko dimenzije a x b in matriko dimenzije c x d, takrat, kadar je b = c.

1 x 3 in 3 x 1 = 1 x 1
3 x 1 in 1 x 3 = 3 x 3

technolog ::

Ja, ampak matlab ti bo množil tudi 3x3 matriko z 1x1 matriko.

Ravno zato pravim, da če nekaj počne matlab, to ni nujo matematično sprejemljivo in je zato Freakov agrument neveljaven.

Zgodovina sprememb…

lebdim ::

ker sem pa zadevo (enakost, ki jo je podal avtor) obrnil, sem pa dobil mnogo lepšo obliko:

X = (A - 2I)-1 (3A + B)
tako, da bi jaz rezultat pustil v taki obliki-

3x3 ti bo matlab (octave) množil z 1x1 matriko, ker bo to 1x1 matriko vzel kot številko ...

sicer je pa zame takole: če smo v "svetu matrik", je potem tudi realna konstanta, ki je dimenzije 1x1 potem matrika, če pa nismo v tem svetu, pa se tudi ne pogovarjat o matrikah ...

Zgodovina sprememb…

  • spremenil: lebdim ()

TheCyborg ::

Aha, jaz sem pa tudi tam kjer je 0 odštel. Torej odštejemo samo diagonalno, ostale vrednosti pa le prepišemo?

In še to bi rad imel potrjeno, torej v kolikor imam število*matrika, je potrebno število prvo pomnožiti z enotsko matriko in potem uveljaviti rezultat? Oziroma če računaš kar na pamet, lahko tako ali tako samo diagnonalne vrednosti spremeniš, ostale pa pustiš.

Lp

technolog ::

2 - A => ni definirano
- A + 2I (oz. 2I - A) => prištejemo 2 samo diagonali

Zgodovina sprememb…

TheCyborg ::

Oz odštejemo v tem primeru?

Če je 2I - A, potem od 2 odštejemo diagonalne vrednosti matrike A.

soulfly ::

OK najbolje da dam gor še matrike zraven pa eden reši celo zadevo :D

A B
|5 4 1|...........|4 2 1|
|0 1 2|...........|-1 3 0|
|0 3 3|...........|5 2 1|

torej 3x3 matrike.

Zgodovina sprememb…

  • spremenilo: soulfly ()

Math Freak ::

@soulfly

Zakaj sam ne preveriš, matrike znaš množit in seštevat?

Math Freak ::

A rešitev za X imaš?
Matrične enačbe

Zgodovina sprememb…

soulfly ::

Hvala ;)

Zgodovina sprememb…

  • spremenilo: soulfly ()

MaFijec ::

Predenj zaidete predaleč.
Matrika A je samo konkretna predstavitev linearne preslikave iz izbrane baze B_1 v bazo B_2, A_l : B_1 -> B_2.
Bazi B_1 in B_2 sta kolekciji linearno neodvisnih vektorjev, ki razpenjajo cela prostora domene in kodomene. če nekdo ne določi baz B_1 in B_2, je matrika formalno brez pomena.
Ponavadi se seveda privzame standardne baze, da se izognemo preveč pisanja.

Množica matrik dimenzije 1X1 nad obsegom O je izomorfna kar samemu obsegu O.
f:x -> (x)
Da je to izomorfizem je očitno.
Zato nihče ne komplicira pri predstavitvi skalarja z 1x1 matriko, čeprav to ni čisto matematično korektno. Sploh ker je vsaka matrika, oz. tenzor v Matlabu, implementirana kot array, ki omogoča seveda tudi linearno indeksiranje (matrike so stolpčno orientirane).
Recimo A = (1 2 3
-1 4 1
5 7 9)
je interno predstavljen kot
A = (1
-1
5
2
4
7
3
1
9)
To pomeni, A(i, j) = A(m*(j-1) + i), kjer je matrika A dimenzije mxn.
Druge Matlabove posebnosti so že stvar konkretne implementacije in je treba pri njih biti previden.
C=2 - A je matrika, ki ima elemente C(i, j) = 2 - A(i, j), kar dela samo zaradi pripravnosti, ni pa sploh matematično pravilno.

Ponavadi ne kompliciramo do onemoglosti, saj postanje zapis preprostih stvar preobširen in nepregleden.
Dobro je pa seveda zmeraj vedeti pri čem smo, če hočemo zares razumeti zakaj gre.

Math Freak ::

@MaFijec

Se strinjam s povedanim =).

TheCyborg ::

technolog je izjavil:

Motiš se. Odštejemo samo od diagonalnih elementov, ostale pustimo pri miru.

technolog je izjavil:

2 - A => ni definirano
- A + 2I (oz. 2I - A) => prištejemo 2 samo diagonali


Moram dodati, da je tu napaka! Glede na to, da je Math Freak s pomočjo MatLaba izračunal X in izhajajoč iz tega, da se MatLab ne moti, je napaka pri tvoji izjavi, da kadar odštevamo ali prištevamo enotsko matriko, rabimo tudi ničle upoštevati, ne samo diagonalne vrednosti.

V tem primeru pomeni da tudi od "0" odštejemo vrednosti matrike A, posledično se vrednosti obrnejo v negativno (tiste pozitivne).

In to lahko potrdim, saj sem s pomočjo online orodij še enkrat zračunal inverz popravljene matrike in sem dobil pravilno matriko, katero sem potem pomnožil z (-3A * B) (v našem primeru) in dokončno dobil rezultat (matriko X), ki je enaka Math Freakovi računici v MatLabu.

Takšne napake, te stanejo nalogo :) Samo to sem želel dodati, da ne bomo sherali napačnih informacij.

Dodajam tudi odlično povezavo za računanje matrik kar online: http://matrix.reshish.com/

Lp

Zgodovina sprememb…

technolog ::

>> Moram dodati, da je tu napaka! Glede na to, da je Math Freak s pomočjo MatLaba izračunal X in izhajajoč iz tega, da se MatLab ne moti, je napaka pri tvoji izjavi, da kadar odštevamo ali prištevamo enotsko matriko, rabimo tudi ničle upoštevati, ne samo diagonalne vrednosti.

Ne, ne rabimo upoštevat ničelnih elementov, ker karkoli * 0 je 0 in X plus 0 je X.

Zgodovina sprememb…

TheCyborg ::

Se strinjam, ampak to pri množenju! Če še enkrat preveriš enačbo, je pa 2I - A, torej odštevanje..

Lp

technolog ::

ja, odštevanje od nič.

soulfly ::

in 0-2 = 2 ? :D

technolog ::

Ne dojameš. jst pravim, da je samo -2 enako 0-2.

soulfly ::

ja, vidim da se nismo razumeli ;) ni panike :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Baza v vektorskem prostoru

Oddelek: Šola
182479 (977) BivšiUser2
»

Matrike

Oddelek: Šola
121519 (1102) Sqrt2
»

Strassenovo množenje matrik

Oddelek: Programiranje
102035 (1776) eXoo
»

Pomoc pri resevanju Matematicnih nalog - NUJNO PROSIM (strani: 1 2 )

Oddelek: Šola
563634 (2979) PiKi
»

Išče se hiter algoritem za izračun ene čudne matrične operacije.

Oddelek: Znanost in tehnologija
172112 (1603) Thomas

Več podobnih tem