blob: 29199356328d015fa2450ca2e30a2df6a73bac3c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
-- File: PolyFunction.cdl
-- Created: Mon Jan 14 16:20:47 1991
-- Author: Arnaud BOUZY
-- <adn@topsn3>
---Copyright: Matra Datavision 1991
class PolyFunction from Expr
inherits PolyExpression from Expr
---Purpose: Defines the use of an n-ary function in an expression
-- with given arguments.
uses GeneralFunction from Expr,
AsciiString from TCollection,
GeneralExpression from Expr,
NamedUnknown from Expr,
Array1OfNamedUnknown from Expr,
Array1OfReal from TColStd,
Array1OfGeneralExpression from Expr
raises NumericError from Standard,
OutOfRange from Standard,
NotEvaluable from Expr
is
Create(func : GeneralFunction;exps : Array1OfGeneralExpression)
---Purpose: Creates <me> as <func>(<exps_1>,<exps_2>,...,<exps_n>)
returns mutable PolyFunction;
Function(me)
---Purpose: Returns the function defining <me>.
returns GeneralFunction;
ShallowSimplified(me)
---Purpose: Returns a GeneralExpression after a simplification
-- of the arguments of <me>.
returns any GeneralExpression
raises NumericError;
Copy(me)
---Purpose: Returns a copy of <me> having the same unknowns and functions.
returns mutable like me;
IsIdentical(me; Other : GeneralExpression)
---Purpose: Tests if <me> and <Other> define the same expression.
-- This method does not include any simplification before
-- testing.
returns Boolean;
IsLinear(me)
returns Boolean;
Derivative(me; X : NamedUnknown)
---Purpose: Returns the derivative on <X> unknown of <me>
returns any GeneralExpression;
Evaluate(me; vars : Array1OfNamedUnknown; vals : Array1OfReal)
---Purpose: Returns the value of <me> (as a Real) by
-- replacement of <vars> by <vals>.
-- Raises NotEvaluable if <me> contains NamedUnknown not
-- in <vars> or NumericError if result cannot be computed.
returns Real
raises NotEvaluable,NumericError;
String(me)
---Purpose: returns a string representing <me> in a readable way.
returns AsciiString;
fields
myFunction : GeneralFunction;
end PolyFunction;
|