Metody numeryczne

Pomiń łącza nawigacjiStart : Metody numeryczne : Algebra liniowa  
 Pomiń łącza nawigacji
Wykresy i błędyRozwiń Wykresy i błędy
SzeregiRozwiń Szeregi
InterpolacjaRozwiń Interpolacja
AproksymacjaRozwiń Aproksymacja
FFTRozwiń FFT
Algebra liniowaRozwiń Algebra liniowa
Równania nlelinioweRozwiń Równania nleliniowe
Zagadnienia początkoweRozwiń Zagadnienia początkowe

Pomiń łącza nawigacji.

Metody numeryczne algebry liniowej biblioteki Math.NET Numerics

Biblioteka Math.NET Numerics realizuje działania na macierzach rzeczywistych i zespolonych. Działania są realizowane na obiektach abstrakcyjnych klas Matrix i Vector. Klasy Matrix i Vector są dostępne w przestrzeniach nazw MathNet.Numerics.LinearAlgebra.Double i MathNet.Numerics.LinearAlgebra.Complex. Konstruktory macierzy to DenseMatrix(), SparseMatrix() i DiagonalMatrix().

Do czytania elementów macierzy wpisanych do okienek tekstowych można stosować metodę Split() obiektu klasy String, np.

Link do przykładowego kodu czytania macierzy z okienka tekstowego

 

W wyniku działania powyższego kodu tworzona jest macierz A zawierająca elementy macierzy wpisanej do okienka tekstowego textBoxA. i podobnie macierz B.

Odwracanie macierzy

Macierz odwrotną oblicza metoda Inverse() obiektu klasy Matrix.

InvA = A.Inverse();

Rozwiązywanie układów algebraicznych równań liniowych

Do rozwiązania układu równań metodą rozkładu LU można użyć następującego kodu.

var lu = A.LU();

var X = lu.Solve(B);

Do wydruku wyniku macierzy X można użyć następującego kodu.

textBoxX.Clear();
for (int w = 0; w < X.RowCount; w++)
{
    for (int k = 0; k < X.ColumnCount; k++)
        textBoxX.AppendText(X[w, k].ToString() + " \t");

    textBoxX.AppendText(Environment.NewLine);
}

lub label1.Text = X.ToString();

Link do przykładowego kodu rozkładu LU z wykorzystaniem biblioteki Math.NET Numerics

 Wydział Elektryczny