[220] | 1 | #ifndef SIMPS2D_SEEN
|
---|
| 2 | #define SIMPS2D_SEEN
|
---|
| 3 |
|
---|
| 4 | // Integration 2D domaine carre
|
---|
| 5 | // Selon Abramowitz p892-893 formule 25.462, residu ordre 0.5**6
|
---|
| 6 | // 0.387298=0.5*sqrt(3/5) 0.197531=16/81 0.123457=10/81 0.077160=25/324
|
---|
| 7 | #if defined(SIMPSON9)
|
---|
| 8 | static int nd2d = 9;
|
---|
| 9 | static float dx2d[9] = { 0.000000 , 0.000000 , 0.000000
|
---|
| 10 | ,-0.387298 , 0.387298 , -0.387298
|
---|
| 11 | , 0.387298 , -0.387298 , 0.387298 };
|
---|
| 12 | static float dy2d[9] = { 0.000000 , -0.387298 , 0.387298
|
---|
| 13 | , 0.000000 , 0.000000 , -0.387298
|
---|
| 14 | , 0.387298 , 0.387298 , -0.387298 };
|
---|
| 15 | static float w2d[9] = { 0.197531 , 0.123457 , 0.123457
|
---|
| 16 | , 0.123457 , 0.123457 , 0.077157
|
---|
| 17 | , 0.0771605, 0.0771605, 0.0771605};
|
---|
| 18 | #elif defined(SIMPSON4)
|
---|
| 19 | static int nd2d = 4;
|
---|
| 20 | static float dx2d[4] = { 0.288675, 0.288675,-0.288675,-0.288675 };
|
---|
| 21 | static float dy2d[4] = { 0.288675,-0.288675, 0.288675,-0.288675 };
|
---|
| 22 | static float w2d[4] = { 0.250000, 0.250000, 0.250000, 0.250000 };
|
---|
| 23 | #elif defined(INTEG5)
|
---|
| 24 | static int nd2d = 5;
|
---|
| 25 | static float dx2d[5] = { 0. , -0.3, -0.3, 0.3, 0.3 };
|
---|
| 26 | static float dy2d[5] = { 0. , -0.3, 0.3, -0.3, 0.3 };
|
---|
| 27 | static float w2d[5] = { 0.2, 0.2, 0.2, 0.2, 0.2 };
|
---|
| 28 | #elif defined(NOINTEG)
|
---|
| 29 | static int nd2d = 1;
|
---|
| 30 | static float dx2d[1] = { 0. };
|
---|
| 31 | static float dy2d[1] = { 0. };
|
---|
| 32 | static float w2d[1] = { 1. };
|
---|
| 33 | #else
|
---|
| 34 | static int nd2d = 0;
|
---|
| 35 | static float dx2d[1] = { 999999. };
|
---|
| 36 | static float dy2d[1] = { 999999. };
|
---|
| 37 | static float w2d[1] = { 0. };
|
---|
| 38 | #endif
|
---|
| 39 |
|
---|
| 40 | #endif
|
---|