Line | |
---|
1 | namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
|
---|
2 | public interface IAlgebraicType<T> {
|
---|
3 | T Zero { get; } // Zero and One must create new objects
|
---|
4 | T One { get; }
|
---|
5 |
|
---|
6 | T AssignAbs(T a); // set this to assign abs(a)
|
---|
7 | T Assign(T a); // assign this to same value as a (copy!)
|
---|
8 | T AssignNeg(T a); // set this to negative(a)
|
---|
9 | T AssignInv(T a); // set this to inv(a);
|
---|
10 | T Scale(double s); // scale this with s
|
---|
11 | T Add(T a); // add a to this
|
---|
12 | T Sub(T a); // subtract a from this
|
---|
13 | T Mul(T a); // multiply this with a
|
---|
14 | T Div(T a); // divide this by a
|
---|
15 | T AssignLog(T a); // set this to log a
|
---|
16 | T AssignExp(T a); // set this to exp(a)
|
---|
17 | T AssignSin(T a); // set this to sin(a)
|
---|
18 | T AssignCos(T a); // set this to cos(a)
|
---|
19 | T AssignTanh(T a); // set this to tanh(a)
|
---|
20 | T AssignIntPower(T a, int p);
|
---|
21 | T AssignIntRoot(T a, int r);
|
---|
22 | T AssignSgn(T a); // set this to sign(a)
|
---|
23 | T AssignMin(T other); // set this min(this, other)
|
---|
24 | T AssignMax(T other); // set this max(this, other)
|
---|
25 | T Clone();
|
---|
26 | }
|
---|
27 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.