Odwracanie macierzy poprzez eliminację Gaussa
-
- Użytkownik
- Posty: 41
- Rejestracja: 6 lis 2015, o 13:00
- Płeć: Mężczyzna
- Podziękował: 20 razy
Odwracanie macierzy poprzez eliminację Gaussa
Dzień dobry cześć i czołem!
Mam do Was pytanie, robię w Mathematice projekt i teraz mam do Was pytanie.
Czy mogę odwrócić macierz eliminacją Gaussa w taki sposób, że najpierw robię sobie macierz trójkątną od 'dołu', tym samym działając na mojej macierzy jednastkowej, a następnie macierz trójkątną od góry, też przy tym samym wykonując działania na mojej macierzy jednostkowej?
Np.
\(\displaystyle{ \begin{bmatrix} 1&3&2\\2&1&3\\1&3&1\end{bmatrix}}\)
\(\displaystyle{ \begin{bmatrix} 1&0&0\\0&1&0\\0&0&1\end{bmatrix}}\)
Następnie
\(\displaystyle{ \begin{bmatrix} 1&3&2\\0&-5&-1\\0&0&-1\end{bmatrix}}\)
\(\displaystyle{ \begin{bmatrix} 1&0&0\\-2&1&0\\-1&0&1\end{bmatrix}}\)
I teraz moje pytanie, czy to samo mogę zrobić z elementami ponad górną przekątną?
Pozdrawiam serdecznie
Mam do Was pytanie, robię w Mathematice projekt i teraz mam do Was pytanie.
Czy mogę odwrócić macierz eliminacją Gaussa w taki sposób, że najpierw robię sobie macierz trójkątną od 'dołu', tym samym działając na mojej macierzy jednastkowej, a następnie macierz trójkątną od góry, też przy tym samym wykonując działania na mojej macierzy jednostkowej?
Np.
\(\displaystyle{ \begin{bmatrix} 1&3&2\\2&1&3\\1&3&1\end{bmatrix}}\)
\(\displaystyle{ \begin{bmatrix} 1&0&0\\0&1&0\\0&0&1\end{bmatrix}}\)
Następnie
\(\displaystyle{ \begin{bmatrix} 1&3&2\\0&-5&-1\\0&0&-1\end{bmatrix}}\)
\(\displaystyle{ \begin{bmatrix} 1&0&0\\-2&1&0\\-1&0&1\end{bmatrix}}\)
I teraz moje pytanie, czy to samo mogę zrobić z elementami ponad górną przekątną?
Pozdrawiam serdecznie
Odwracanie macierzy poprzez eliminację Gaussa
Możesz dopóki wykonujesz wszystko na tej macierzy jednostkowej
-
- Użytkownik
- Posty: 41
- Rejestracja: 6 lis 2015, o 13:00
- Płeć: Mężczyzna
- Podziękował: 20 razy
Odwracanie macierzy poprzez eliminację Gaussa
Dzięki za odpowiedź, czyli jeżeli mam już pętlę, która tworzy mi właśnie takie wartości w macierzy jak w przykładzie na górze, to teraz wystarczy powiedzmy 'odwrócić w pewien sposób tą pętlę', by działać na wyrażeniach znajdujących się ponad główną przekątną? Chce się upewnić tylko ^^.
Mój algorytm wygląda tak:
1) Losuję wartości do macierzy
2) Tworzę macierz jednostkową
3) Tworzę macierz trójkątną dolną ( jak na przykładzie wyżej )
4) W tym samym momencie działam na macierzy jednostkowej
5)Tu teraz powtarzam algorytm z punktu 3 dla macierzy trójkątnej górnej
6)Adekwatnie macierz jednostkowa
7)Jako, że nie ruszałem wartości na głównej przekątnej, to dzielę zarówno wartości w mojej macierzy głównej przez ten element, jak i w macierzy jednostkowej
8)Uzyskuję wynik
Czy mógłbyś zweryfikować, czy to jest dobre rozwiązanie? Mam jeszcze drugie pytanie, czy mogę użyć transpozycji jako, że to jest przekształcenie elementarne i zamienić wartości ponad główną przekątną z wartościami poniżej głównej przekątnej, by ułatwić sobie trochę życie i użyć tej samej pętli wtedy dla tych właśnie wartości po transpozycji?
Pozdrawiam! Mam nadzieję, że ogólnie jasno jakoś to napisałem
Mój algorytm wygląda tak:
1) Losuję wartości do macierzy
2) Tworzę macierz jednostkową
3) Tworzę macierz trójkątną dolną ( jak na przykładzie wyżej )
4) W tym samym momencie działam na macierzy jednostkowej
5)Tu teraz powtarzam algorytm z punktu 3 dla macierzy trójkątnej górnej
6)Adekwatnie macierz jednostkowa
7)Jako, że nie ruszałem wartości na głównej przekątnej, to dzielę zarówno wartości w mojej macierzy głównej przez ten element, jak i w macierzy jednostkowej
8)Uzyskuję wynik
Czy mógłbyś zweryfikować, czy to jest dobre rozwiązanie? Mam jeszcze drugie pytanie, czy mogę użyć transpozycji jako, że to jest przekształcenie elementarne i zamienić wartości ponad główną przekątną z wartościami poniżej głównej przekątnej, by ułatwić sobie trochę życie i użyć tej samej pętli wtedy dla tych właśnie wartości po transpozycji?
Pozdrawiam! Mam nadzieję, że ogólnie jasno jakoś to napisałem
Odwracanie macierzy poprzez eliminację Gaussa
Możesz, ale też łatwo napisać algorytm który od razu robi pod/nad przekątną jednocześnieDzięki za odpowiedź, czyli jeżeli mam już pętlę, która tworzy mi właśnie takie wartości w macierzy jak w przykładzie na górze, to teraz wystarczy powiedzmy 'odwrócić w pewien sposób tą pętlę', by działać na wyrażeniach znajdujących się ponad główną przekątną? Chce się upewnić tylko ^^.
Algorytm wygląda ok
Jak używasz transpozycji to musisz uważać co robisz z macierzą jednostkową
-
- Użytkownik
- Posty: 41
- Rejestracja: 6 lis 2015, o 13:00
- Płeć: Mężczyzna
- Podziękował: 20 razy
Odwracanie macierzy poprzez eliminację Gaussa
No właśnie koleżanka w grupie robi takim sposobem, że działa od razu na całej macierzy, jak mi przedstawiała, jak się za to zabiera, to rzeczywiście, nie taki trudny sposób, ale jako, że już mam zrobione trochę tego projektu, to nie chciałoby mi się w tym momencie zmieniać.
A to jeżeli używam transpozycji, to co się dzieję z jednostkową? Czy też muszę ją transponować?
Dzięki bardzo @miodzio1988 za zainteresowanie wątkiem
A to jeżeli używam transpozycji, to co się dzieję z jednostkową? Czy też muszę ją transponować?
Dzięki bardzo @miodzio1988 za zainteresowanie wątkiem
Odwracanie macierzy poprzez eliminację Gaussa
Zrób sobie na przykładzie to zobaczyszA to jeżeli używam transpozycji, to co się dzieję z jednostkową? Czy też muszę ją transponować?
-
- Użytkownik
- Posty: 41
- Rejestracja: 6 lis 2015, o 13:00
- Płeć: Mężczyzna
- Podziękował: 20 razy
Odwracanie macierzy poprzez eliminację Gaussa
Jedyne co zauważyłem, to to, że jak transponuję zarówno macierz jednostkową i główną, następnie wykonuję ten algorytm dla macierzy transponowanych to poprawnego wyniku nie otrzymuję.