blob: 208fd31f2797561b10b5d0da8debc996b879e1ee (
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
-- File: FunctionDerivative.cdl
-- Created: Mon Jan 14 10:53:24 1991
-- Author: Arnaud BOUZY
-- <adn@topsn3>
---Copyright: Matra Datavision 1991, 1992
class FunctionDerivative from Expr
inherits GeneralFunction from Expr
uses NamedUnknown from Expr,
GeneralExpression from Expr,
Array1OfNamedUnknown from Expr,
Array1OfReal from TColStd,
AsciiString from TCollection
raises OutOfRange from Standard,
DimensionMismatch from Standard,
NumericError from Standard,
NotEvaluable from Expr
is
Create(func : GeneralFunction; withX : NamedUnknown; deg : Integer)
---Purpose: Creates a FunctionDerivative of degree <deg> relative
-- to the <withX> variable.
-- Raises OutOfRange if <deg> lower or equal to zero.
---Level : Advanced
returns mutable FunctionDerivative
raises OutOfRange;
NbOfVariables(me)
---Purpose: Returns the number of variables of <me>.
returns Integer;
Variable(me; index : Integer)
---Purpose: Returns the variable denoted by <index> in <me>.
-- Raises OutOfRange if <index> greater than
-- NbOfVariables of <me>.
returns NamedUnknown
raises OutOfRange;
Evaluate(me; vars : Array1OfNamedUnknown;
values : Array1OfReal)
---Purpose: Computes the value of <me> with the given variables.
-- Raises DimensionMismatch if Length(vars) is different from
-- Length(values).
returns Real
raises DimensionMismatch, NumericError,NotEvaluable;
Copy(me)
---Purpose: Returns a copy of <me> with the same form.
returns mutable like me;
Derivative(me; var : NamedUnknown)
---Purpose: Returns Derivative of <me> for variable <var>.
returns GeneralFunction;
Derivative(me; var : NamedUnknown; deg : Integer)
---Purpose: Returns Derivative of <me> for variable <var> with
-- degree <deg>.
returns GeneralFunction;
IsIdentical(me; func : GeneralFunction)
---Purpose: Tests if <me> and <func> are similar functions (same
-- name and same used expression).
returns Boolean;
IsLinearOnVariable(me; index : Integer)
---Purpose: Tests if <me> is linear on variable on range <index>
returns Boolean;
Function(me)
---Purpose: Returns the function of which <me> is the derivative.
---Level : Internal
returns GeneralFunction
is static;
Degree(me)
---Purpose: Returns the degree of derivation of <me>.
---Level : Internal
returns Integer
is static;
DerivVariable(me)
---Purpose: Returns the derivation variable of <me>.
---Level : Internal
returns NamedUnknown
is static;
GetStringName(me)
returns AsciiString;
Expression(me)
returns GeneralExpression
---Level : Internal
is static;
UpdateExpression(me: mutable);
---Level : Internal
fields
myFunction : GeneralFunction;
myExp : GeneralExpression;
myDerivate : NamedUnknown;
myDegree : Integer;
friends
class NamedFunction from Expr
end FunctionDerivative;
|