Belirli bir integralin değerini hesaplamak için Dikdörtgen, Yamuk, Simpson, Romberg, Adaptif ve Spline yöntemlerini sunar.
Sayısal integral, analitik olarak integrali alınması zor olan veya yalnızca belirli noktalardaki değerleri bilinen fonksiyonların belirli integralini, yani eğrinin altında kalan alanı hesaplama yöntemidir. Bu yaklaşım mühendislik, fizik ve finans alanlarında yaygın olarak kullanılır.
Bu modül yedi temel alt yöntemi içerir: Dikdörtgen Yöntemi, Yamuk Yöntemi, Simpson Yöntemi, Romberg İntegrasyonu, Adaptif İntegral, Spline İntegrali ve Sembolik İntegral.
Aşağıdaki uygulamalar PDF kaynaklarındaki pseudo kod akışını modern veri yapılarıyla ifade eder. Kenar durumları görünür bırakıldığı için örnekler doğrudan test edilebilir.
1// Yamuk Yöntemi2function trapezoidRule(f: (x: number) => number, a: number, b: number, n: number): number {3 const h = (b - a) / n;4 let sum = 0.5 * (f(a) + f(b));5 for (let i = 1; i < n; i++) { sum += f(a + i * h); }6 return sum * h;7}8// Simpson Yöntemi9function simpsonRule(f: (x: number) => number, a: number, b: number, n: number): number {10 if (n % 2 !== 0) n++;11 const h = (b - a) / n;12 let sum = f(a) + f(b);13 for (let i = 1; i < n; i++) { sum += (i % 2 === 0 ? 2 : 4) * f(a + i * h); }14 return (sum * h) / 3;15}16// Romberg İntegrasyonu17function rombergIntegration(f: (x: number) => number, a: number, b: number, steps: number): number {18 const R: number[][] = Array.from({ length: steps }, () => Array(steps).fill(0));19 R[0][0] = 0.5 * (b - a) * (f(a) + f(b));20 for (let i = 1; i < steps; i++) {21 const n = Math.pow(2, i), h = (b - a) / n;22 let sum = 0;23 for (let k = 1; k <= n; k += 2) { sum += f(a + k * h); }24 R[i][0] = 0.5 * R[i-1][0] + sum * h;25 for (let j = 1; j <= i; j++) { R[i][j] = R[i][j-1] + (R[i][j-1] - R[i-1][j-1]) / (Math.pow(4, j) - 1); }26 }27 return R[steps - 1][steps - 1];28}Yöntemi, aralığı ve parametreleri girin. Fonksiyon varsayılan olarak x^2 veya girilen ifadeye göre hesaplanır. Örn: trapezoid; 0, 1, 10 veya simpson; 0, 2, 100 veya romberg; 0, 1, 4 veya adaptive; 0, 1, 1e-4 veya spline; 0:0, 1:1, 2:4 veya symbolic; 3x^2
Yöntemi, aralığı ve parametreleri girin. Fonksiyon varsayılan olarak x^2 veya girilen ifadeye göre hesaplanır. Örn: trapezoid; 0, 1, 10 veya simpson; 0, 2, 100 veya romberg; 0, 1, 4 veya adaptive; 0, 1, 1e-4 veya spline; 0:0, 1:1, 2:4 veya symbolic; 3x^2
En İyi Durum: Yamuk/Simpson: O(N), Romberg: O(2^K)
Ortalama Durum: Yamuk/Simpson: O(N), Romberg: O(2^K)
En Kötü Durum: Yamuk/Simpson: O(N), Romberg: O(2^K)
O(1) (Romberg için O(K^2)) - Bu algoritmanın karmaşıklığı belirtilmemiş.
Sayısal İntegral (Numerical Integration / Quadrature) Algoritması ile benzer veya alternatif olarak değerlendirilebilecek diğer başlıklar: