Implementering af Matrixdekomposition i Python
Stryg for at vise menuen
Matrixdekompositionsteknikker er væsentlige værktøjer i numerisk lineær algebra, der muliggør løsninger af ligningssystemer, stabilitetsanalyse og matrixinversion.
Udførelse af LU-dekomposition
LU-dekomposition opdeler en matrix i:
L: nedre trekantsmatrix;U: øvre trekantsmatrix;P: permutationsmatrix til at tage højde for rækkebytninger.
123456789101112import numpy as np from scipy.linalg import lu # Define a 2x2 matrix A A = np.array([[6, 3], [4, 3]]) # Perform LU decomposition: P, L, U such that P @ A = L @ U P, L, U = lu(A) # Verify that P @ A equals L @ U by reconstructing A from L and U print(f'L * U:\n{np.dot(L, U)}')
Hvorfor dette er vigtigt: LU-dekomponering anvendes i vid udstrækning i numeriske metoder til effektiv løsning af lineære ligningssystemer og inversion af matricer.
Udførelse af QR-dekomponering
QR-dekomponering faktoriserer en matrix i:
Q: Ortogonal matrix (bevarer vinkler/længder);R: Øvre trekantet matrix.
123456789101112import numpy as np from scipy.linalg import qr # Define a 2x2 matrix A A = np.array([[4, 3], [6, 3]]) # Perform QR decomposition: Q (orthogonal), R (upper triangular) Q, R = qr(A) # Verify that Q @ R equals A by reconstructing A from Q and R print(f'Q * R:\n{np.dot(Q, R)}')
Hvorfor dette er vigtigt: QR anvendes ofte til at løse mindste kvadraters problemer og er mere numerisk stabil end LU i visse scenarier.
1. Hvad er permutationmatricen P's rolle i LU-dekomponering?
2. Antag, at du skal løse systemet A⋅x=b ved hjælp af QR-dekomponering. Hvilken kodeændring skal du foretage?
Var alt klart?
Tak for dine kommentarer!
Sektion 4. Kapitel 9
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 1.96Sektion 4. Kapitel 9