Mateusz Bis
Projekt został zrealizowany w ramach przedmiotu Równania różniczkowe i różnicowe na II roku studiów na kierunku Informatyka na Wydziale Informatyki Akademii Górniczo-Hutniczej.
Otrzymałem do wykonania problem obliczeniowy nr 4.2 - „Wibracje akustyczne warstwy materiału”, o równaniu:
Aby rozwiązać zadanie:
- Wyprowadziłem sformułowanie wariacyjne równania.
- Napisałem procedurę, która generuje i rozwiązuje układ równań liniowych, a także rysuje wykres rozwiązania.
Wyprowadzenie jest dostępne w pliku pdf.
Procedura powinna:
- przyjmować argument (n) - liczbę elementów skończonych większą lub równą 3,
- rysować wykres wyliczonego przybliżenia funkcji,
- liczyć całki numerycznie.
Do stworzenia procedury wykorzystałem język C# na platformie .NET 8, oraz dwie biblioteki:
- ScottPlot.NET do tworzenia wykresów i zapisywania ich jako obrazki,
- Math.NET do obliczania numerycznie całek metodą Gauss-Legendre.
Rozwiązanie składa się z dwóch plików:
- Solver.cs - klasa
Solverzawierająca metodęSolve(), czyli właściwą procedurę, - Program.cs - program główny, który po skompilowaniu można wywołać z terminalu.
n- liczba elementów skończonych większa lub równa 3,saveDirectory- folder do zapisania wykresów w formacie obrazka. Jeśli argument nie zostanie podany, wykresy zostaną otwarte w przeglądarce.
Solve(6, "/home/ubuntu") // wykonaj dla 6 elementów i zapisz wykresy do folderu
Solve(15, "/home/ubuntu") // wykonaj dla 15 elementów i zapisz wykresy do folderu./ProjektRRIR 8 /home/ubuntu # wykonaj dla 8 elementów i zapisz wykresy do folderu
./ProjektRRIR 80 /home/ubuntu # wykonaj dla 80 elementów i zapisz wykresy do folderuDla n = 16:

