



Expressions
Operators
Built-in functions
Assignments
Conditionnal expressions
Logical operators
Derivatives
Vectors
System resolution
Second order equations
User defined functions
Non-linear evaluation
Operators
Negation | -a |
Invertion | /a |
Factorial | a! |
Addition | a + b |
Substraction | a - b |
Multiplication | a * b |
Parallel | a b |
Division | a / b |
Power | a ^ b |
Or | a | b |
And | a&b |
Xor | a ~ b |
Equal | a == b |
Not Equal | a <> b |
Less Than | a < b |
Less Than or Equal | a <= b |
Greater | a > b |
Greater Than or Equal | a >= b |
Built-in functions
Sinus | sin( a ) |
Cosinus | cos( a ) |
Arcsinus | asin( a ) |
Arccossinus | acos( a ) |
Hyperbolic sinus | hsin( a ) |
Hyperbolic cosinus | hcos( a ) |
Arccossinus | acos( a ) |
Arctangent | atan( a ) |
Exponential | exp( a ) |
Logarithm | log( a ) |
Base-10 Logarithm | log10( a ) |
Square root | sqrt( a ) |
Floor | floor( a ) |
Randomize | rand() |
Minimum | min( a, b ) |
Maximum | max( a, b ) |
Modulo | mod( a, b ) |
Assignments
c = 3 a + b = 6 a - b = 2
Conditionnal expressions
Conditionnal expressions can be of the form :
- if..then
Example :
if( V >= 0 ) a=0; else a=1;
It is possible to use '{}' to enclose code :Example :
if( V >= 0 ) { a=0; } else { a=1; }
- ternary
Example :
d( ramp )/dt = ramp < 1 ? 1000 : 0;
Logical operators
logical AND | 3&1 = 1 |
logical OR | 2 | 1 = 3 |
logical exclusive OR | 4 ~ 6 = 2 |
logical left shift | 1 << 2 = 4 |
arithmetic right shift | 4 >> 2 = 1 |
Derivatives
d(a*t)/dt = a d(sin(a*t))/dt = a*cos(a*t)
Vectors
{0,1,-1}+{1,2,3}={1,3,2} {0,1,-1}[0]=0 {0,1,-1}[1]=1 {0,1,-1}[2]=-1
System resolution
solve( {2*x+3*y+4*z-9 , 3*x+3*y+3*z-9 , 7*x+8*y-9*z-6}, {x,y,z} ) = {1,1,1}
Second order equations
solve(x^2-1,x)[0]=-1 solve(x^2-1,x)[1]=1 Complex j*j = -1 re(2+5j)=2 im(2+5j)=5
User defined functions
conv(x):=re(x)-im(x) conv(2+3j) = 2-3j f(x):=4*x y=f(z)-4*z -> y=0
Non-linear evaluation
sin(x)=0.5 -> x = 0.523598775598