7fd59977 |
1 | -- File: math_GaussSetIntegration.cdl |
2 | -- Created: Mon Jan 22 1996 |
3 | -- Author: Philippe MANGIN |
4 | -- <lpa@topsn3> |
5 | ---Copyright: Matra Datavision 1991, 1996 |
6 | |
7 | |
8 | |
9 | class GaussSetIntegration from math |
10 | ---Purpose: -- This class implements the integration of a set of N |
11 | -- functions of M variables variables between the |
12 | -- parameter bounds Lower[a..b] and Upper[a..b]. |
13 | -- Warning: - The case M>1 is not implemented. |
14 | |
15 | |
16 | uses Vector from math, |
17 | IntegerVector from math, |
18 | FunctionSet from math, |
19 | OStream from Standard, |
20 | NotDone from StdFail |
21 | |
22 | raises NotDone, NotImplemented |
23 | |
24 | is |
25 | |
26 | Create(F: in out FunctionSet; Lower, Upper: Vector; |
27 | Order: IntegerVector) |
28 | ---Purpose: |
29 | -- The Gauss-Legendre integration with Order = points of |
30 | -- integration for each unknow, is done on the function F |
31 | -- between the bounds Lower and Upper. |
32 | returns GaussSetIntegration |
33 | raises NotImplemented; |
34 | |
35 | IsDone(me) |
36 | ---Purpose: returns True if all has been correctly done. |
37 | ---C++: inline |
38 | |
39 | returns Boolean |
40 | is static; |
41 | |
42 | Value(me) |
43 | ---Purpose: returns the value of the integral. |
44 | ---C++: inline |
45 | ---C++: return const& |
46 | |
47 | returns Vector |
48 | raises NotDone |
49 | is static; |
50 | |
51 | |
52 | Dump(me; o: in out OStream) |
53 | ---Purpose: Prints information on the current state of the object. |
54 | is static; |
55 | |
56 | |
57 | |
58 | |
59 | fields |
60 | |
61 | Val: Vector; |
62 | Done: Boolean; |
63 | |
64 | end GaussSetIntegration; |