Method
trapz
(Function f, double a, double b, int N)
Source from the content-addressed store, hash-verified
| 10 | public class Trapezoidal |
| 11 | { |
| 12 | static public double trapz(Function f, double a, double b, int N) |
| 13 | { |
| 14 | /* |
| 15 | * b / N - 1 \ |
| 16 | * / | ===== | |
| 17 | * | b - a |f(a) + f(b) \ / k (b - a)\| |
| 18 | * | f(x) dx = ----- |----------- + > f|a + ---------|| |
| 19 | * | N | 2 / \ N /| |
| 20 | * / | ===== | |
| 21 | * a \ k = 1 / |
| 22 | */ |
| 23 | double sum =0; |
| 24 | for(int k = 1; k < N; k++) |
| 25 | sum += f.f(a+k*(b-a)/N); |
| 26 | |
| 27 | sum+= (f.f(a)+f.f(b))/2; |
| 28 | |
| 29 | |
| 30 | |
| 31 | return (b-a)/N*sum; |
| 32 | } |
| 33 | } |
Tested by
no test coverage detected