Functions
Introduction
The available functions are:
- arithmetic operators
- usual mathematical functions admitted by Fortran
- functions for treatment of complex quantities
- functions for treatment of vector quantities
- other specific functions (Modulo, Valid, Trapez, …)
Operators
The arithmetic operators are described in the table below.
Operator | Description |
---|---|
+ | add two values |
subtract two values | |
* | multiply two values |
/ | divide two values |
** or ^ | raise the left operand to the power specified by the right hand operand |
Mathematical functions
The usual mathematical functions are gathered in the tables below.
Square function and absolute value | |
---|---|
Sqrt(x) | Square root of the expression x |
Abs(x) | Absolute value of the expression x |
Logarithm and exponential functions | |
---|---|
Exp(x) | Exponential function of the expression x |
Log(x) | Natural logarithm of the expression x |
Log10(x) | Common logarithm of the expression x |
Other functions | |
---|---|
Int(x) | Integral part of the expression x |
Modulo(x,x1) | Remainder of the division of x by x1 |
Min(x1,x2) | Minimum of the expressions x1 and x2 |
Max(x1,x2) | Maximum of the expressions x1 and x2 |
Sign(x) |
Sign of the expression x: Sign(x)=+1 if x>0; = -1 if x<0; = 0 if x=0 |
Trigonometry
The usual trigonometric functions are gathered in the tables below.
Trigonometric functions | |
---|---|
Sin(x) | Sine of the angle x expressed in radians |
Cos(x) | Cosine of the angle x expressed in radians |
Tan(x) | Tangent of the angle x expressed in radians |
Asin(x) | Arcsine in radians of the expression x; x ∈ [-1,1] |
Acos(x) | Arccosine in radians of the expression x; x ∈ [-1,1] |
Atan2(x,y) | Arctangent in radians of the expression (x/y) |
Sind(x) | Sine of the angle x expressed in degrees |
Cosd(x) | Cosine of the angle x expressed in degrees |
Tand(x) | Tangent of the angle x expressed in degrees |
Asind(x) | Arcsine in degrees of the expression x; x ∈ [-1,1] |
Acosd(x) | Arccosine in degrees of the expression x; x ∈ [-1,1] |
Atan2d(x,y) | Arctangent in degrees of the expression (x/y) |
Sinh(x) | Hyperbolic sine of the expression x |
Cosh(x) | Hyperbolic cosine of the expression x |
Tanh(x) | Hyperbolic tangent of the expression x |
Asinh(x) | Arcsine hyperbolic of the expression x; x ∈ [-1, ∝[ |
Acosh(x) | Arccosine hyperbolic of the expression x; x ∈]-∝ , ∝[ |
Atan2h (x,y) | Arctangent hyperbolic of the expression (x/y); x ∈ [-1,1] |
Treatment of complex quantities
The functions for treatment of the complex quantities are gathered in the table below.
Functions for treatment of the complex quantities | |
---|---|
ModC(z) | Complex modulus of the complex expression z |
Arg(z) | Argument (in radians) of the complex expression z |
Inst(z,t) | Value at the instant t (in degrees) of the complex expression z |
Real(z) | Real part of the complex expression z |
Imag(z) | Imaginary part of the complex expression z |
Conj(z) | Conjugate of the complex expression z |
Cmplx(x,y) |
Complex expression built starting from the real expressions x and y |
Vector treatment
The functions for treatment of the vectors are gathered in the table below.
Functions for vector treatment | |
---|---|
ModV(v) | Vector modulus of the vector expression v |
Comp(i,v) | Component i of the vector expression v |
PVec(v1,v2) | Vector product of 2 real vector expressions |
Vec2(x,y) | 2D vector built starting from the real expressions x and y |
Vec3(x,y,z) | 3D vector built starting from the real expressions x, y and z |
Mod(x) | General modulus of the expression x: Mod(x)=ModV(ModC(x)) |
Modification of the coordinate system
The modification of a coordinate system is obtained with the functions in the table below.
CLCS(r,i) |
Component i of coordinates in the local coordinate system r (i=1, 2 or 3) |
VLCS(r,v) | Vector v in the local coordinate system r |
Other functions
The other functions (or specific functions) are gathered in the table below.
Other functions | ||
---|---|---|
Valid(x,x1,x2) |
if x1 ≤ x<x2: else: |
Valid(x,x1,x2)= 1 Valid(x,x1,x2)= 0 |
Trapez(x,x1,x2,x3) |
if x1 ≤ x ≤ x1+x2: if x<0 or x>x1+x2+x3: |
Trapez(x,x1,x2,x3)= 1 Trapez(x,x1,x2,x3)= 0 |
Trapezper(x,x1,x2,x3,x4,x5,x6,x7) |
Periodic trapezoidal function see § Trapezper function |