Metody numeryczne

Pomiń łącza nawigacjiStart : Metody numeryczne : Interpolacja : Obliczanie pochodnych i całek 2  
 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.

Interpolacja różniczkowanie i całkowanie różnymi metodami

Interpolowana jest funkcja f(x) =    
Dostępne funkcje Sin, Cos, Exp, Asin, Acos, Tan, Atan, Exp, Log10, ...  i stała pi = 3,141592653589793

W przedziale od a =  do b =  funkcja f(x) jest próbowana w N =  równoodległych węzłach.

Następnie funkcja jest interpolowana na podstawie próbek wybraną poniżej metodą.

Wartość całki funkcji f(x) w przedziale od a do b = metoda nie liczy całki .

Wykonać własny program wzorując się na powyższym

Program powinien zawierać

  1. Próbkowanie funkcji f(x) w przedziale od a do b, próbki umieścić na wykresie.
  2. Interpolację wybranymi metodami na podstawie próbek, wynik przedstawić na wykresie.
  3. Obliczenie 1. i 2. pochodnej oraz całki, wyniki przedstawić na wykresie.

Do obliczania wartości funkcji f(x) wykorzystać bibliotekę NCalc, a do interpolacji bibliotekę MathNet Numerics.

Przykład próbkowania

double h = (b - a) / (N - 1);// Odległość między węzłami
double[] X = new double[N];  // Węzły interpolacji
double[] Y = new double[N];  // Próbki funkcji w węzłach
 
Expression funkcja = new Expression(TextBox1.Text); // Obiekt z biblioteki NCalc;
 
for (int n = 0; n < N; n++)
{
  X[n] = a + n * h;
  funkcja.Parameters["x"] = X[n];
  Y[n] = (double)funkcja.Evaluate();
}

Tworzenie obiektu interpolacji

var Interpol = Interpolate.Polynomial(X, Y);

Wykorzystanie obiektu interpolacjipolacji

Interpolacja: Interpol.Interpolate(x),
obliczenie 1. pochodnej: Interpol.Differentiate(x),
obliczenie 1. pochodnej: Interpol.Differentiate2(x),
obliczenie całki oznaczonej w granicach od a do x: Interpol.Integrate(x).

Zbadać różne metody interpolacji na przykładzie różnych funkcji, w tym exp(x) i sin(x).

 

 

 Wydział Elektryczny