Difference between revisions of "Mathematical Functions"
From Flowcode Help
Jump to navigationJump to searchLine 6: | Line 6: | ||
Flowcode includes an additional set of mathematical functions: | Flowcode includes an additional set of mathematical functions: | ||
− | + | {| class="wikitable" | |
− | float = fadd(float, float) | + | |- |
− | + | ! scope="col"| Function Prototype | |
− | float = fsub(float, float) | + | ! scope="col"| Description |
− | + | |- | |
− | float = fmul(float, float) | + | | float = fadd(float, float) |
− | + | | Add two floating point numbers together | |
− | float = fdiv(float, float) | + | |- |
− | + | | float = fsub(float, float) | |
− | float = fmod(float, float) | + | | Subtract two floating point numbers |
− | + | |- | |
− | byte = isinf(float) | + | | float = fmul(float, float) |
− | + | | Multiply two floating point numbers | |
− | byte = isnan(float) | + | |- |
− | + | | float = fdiv(float, float) | |
− | byte = float_eq(float, float) | + | | Divide two floating point numbers |
− | + | |- | |
− | byte = float_ge(float, float) | + | | float = fmod(float, float) |
− | + | | MOD function for floating point numbers | |
− | byte = float_gt(float, float) | + | |- |
− | + | | byte = isinf(float) | |
− | byte = float_le(float, float) | + | | Checks to see if the floating point number is infinite |
− | + | |- | |
− | byte = float_lt(float, float) | + | | byte = isnan(float) |
− | + | | Checks to see if the floating point is not a number | |
− | int = random() | + | |- |
− | + | | byte = float_eq(float, float) | |
− | + | | Compares two floating point numbers to see if they are equal | |
− | + | |- | |
− | + | | byte = float_ge(float, float) | |
− | + | | Compares two floating point numbers to see if they are greater then or equal | |
− | + | |- | |
− | + | | byte = float_gt(float, float) | |
− | + | | Compares two floating point numbers to see if they are greater then | |
− | fabs( x ), floor( x ), ceil( x ) | + | |- |
− | + | | byte = float_le(float, float) | |
− | fmod( x , y ) | + | | Compares two floating point numbers to see if they are less then or equal |
− | + | |- | |
− | sqrt( x ), cbrt( x ) | + | | byte = float_lt(float, float) |
− | + | | Compares two floating point numbers to see if they are less then | |
− | log( x ), log10( x ) | + | |- |
− | + | | int = random() | |
− | exp( x ), pow( x , y ) | + | | Generates a random number -32768 <=> 32767 |
− | + | |- | |
− | sin( x ), cos( x ), tan( x ) | + | | fabs( x ), floor( x ), ceil( x ) |
− | + | | absolute value, floor and ceiling functions | |
− | asin( x ), acos( x ), atan( x ) | + | |- |
− | + | | fmod( x , y ) | |
− | atan2( y , x ) | + | | floating point modulus (remainder of x divided by y) |
− | + | |- | |
− | sinh( x ), cosh( x ), tanh( x ) | + | | sqrt( x ), cbrt( x ) |
− | + | | square and cube roots | |
− | isnan( x ), isinf( x ) | + | |- |
− | + | | log( x ), log10( x ) | |
− | + | | logarithms (base e and base 10) | |
− | + | |- | |
− | + | | exp( x ), pow( x , y ) | |
− | + | |exponential and power functions (x to the power of y) | |
− | + | |- | |
− | + | | sin( x ), cos( x ), tan( x ) | |
− | + | | trigonometric functions | |
− | fabs( x ), floor( x ), ceil( x ) | + | |- |
− | + | | asin( x ), acos( x ), atan( x ) | |
− | round( x ) | + | | inverse trigonometric functions |
− | + | |- | |
− | fround( x , y ) | + | | atan2( y , x ) |
− | + | | four-quadrant inverse tangent | |
− | fmod( x , y ) | + | |- |
− | + | | sinh( x ), cosh( x ), tanh( x ) | |
− | sqrt( x ), cbrt( x ) | + | | hyperbolic functions |
− | + | |- | |
− | log( x ), log10( x ) | + | | isnan( x ), isinf( x ) |
− | + | | tests for not-a-number and infinity | |
− | exp( x ), pow( x , y ) | + | |- |
− | + | | fabs( x ), floor( x ), ceil( x ) | |
− | sin( x ), cos( x ), tan( x ) | + | | absolute value, floor and ceiling functions |
− | + | |- | |
− | asin( x ), acos( x ), atan( x ), | + | | round( x ) |
− | + | | decimal rounding (x rounded to the nearest integer) | |
− | atan2( y , x ) | + | |- |
− | + | | fround( x , y ) | |
− | sinh( x ), cosh( x ), tanh( x ) | + | | floating point rounding (x rounded to y decimal places) |
− | + | |- | |
− | asinh( x ), acosh( x ), atanh( x ) | + | | fmod( x , y ) |
− | + | | floating point modulus (remainder of x divided by y) | |
− | fact( x ) | + | |- |
− | + | | sqrt( x ), cbrt( x ) | |
− | random( ) | + | | square and cube roots |
− | + | |- | |
− | isnan( x ), isinf( x ) | + | | log( x ), log10( x ) |
+ | | logarithms (base e and base 10) | ||
+ | |- | ||
+ | | exp( x ), pow( x , y ) | ||
+ | | exponential and power functions (x to the power of y) | ||
+ | |- | ||
+ | | sin( x ), cos( x ), tan( x ) | ||
+ | | trigonometric functions | ||
+ | |- | ||
+ | | asin( x ), acos( x ), atan( x ), | ||
+ | | inverse trigonometric functions | ||
+ | |- | ||
+ | | atan2( y , x ) | ||
+ | | four-quadrant inverse tangent | ||
+ | |- | ||
+ | | sinh( x ), cosh( x ), tanh( x ) | ||
+ | | hyperbolic functions | ||
+ | |- | ||
+ | | asinh( x ), acosh( x ), atanh( x ) | ||
+ | | inverse hyperbolic functions | ||
+ | |- | ||
+ | | fact( x ) | ||
+ | | factorial | ||
+ | |- | ||
+ | | random( ) | ||
+ | | random number between 0 and 32767 | ||
+ | |- | ||
+ | | isnan( x ), isinf( x ) | ||
+ | | tests for not-a-number and infinity | ||
+ | |} |
Revision as of 15:01, 17 May 2013
The following mathematical functions can be used in calculations. Some are limited to different chip types.
Functions (Flowcode PIC only)
Flowcode includes an additional set of mathematical functions:
Function Prototype | Description |
---|---|
float = fadd(float, float) | Add two floating point numbers together |
float = fsub(float, float) | Subtract two floating point numbers |
float = fmul(float, float) | Multiply two floating point numbers |
float = fdiv(float, float) | Divide two floating point numbers |
float = fmod(float, float) | MOD function for floating point numbers |
byte = isinf(float) | Checks to see if the floating point number is infinite |
byte = isnan(float) | Checks to see if the floating point is not a number |
byte = float_eq(float, float) | Compares two floating point numbers to see if they are equal |
byte = float_ge(float, float) | Compares two floating point numbers to see if they are greater then or equal |
byte = float_gt(float, float) | Compares two floating point numbers to see if they are greater then |
byte = float_le(float, float) | Compares two floating point numbers to see if they are less then or equal |
byte = float_lt(float, float) | Compares two floating point numbers to see if they are less then |
int = random() | Generates a random number -32768 <=> 32767 |
fabs( x ), floor( x ), ceil( x ) | absolute value, floor and ceiling functions |
fmod( x , y ) | floating point modulus (remainder of x divided by y) |
sqrt( x ), cbrt( x ) | square and cube roots |
log( x ), log10( x ) | logarithms (base e and base 10) |
exp( x ), pow( x , y ) | exponential and power functions (x to the power of y) |
sin( x ), cos( x ), tan( x ) | trigonometric functions |
asin( x ), acos( x ), atan( x ) | inverse trigonometric functions |
atan2( y , x ) | four-quadrant inverse tangent |
sinh( x ), cosh( x ), tanh( x ) | hyperbolic functions |
isnan( x ), isinf( x ) | tests for not-a-number and infinity |
fabs( x ), floor( x ), ceil( x ) | absolute value, floor and ceiling functions |
round( x ) | decimal rounding (x rounded to the nearest integer) |
fround( x , y ) | floating point rounding (x rounded to y decimal places) |
fmod( x , y ) | floating point modulus (remainder of x divided by y) |
sqrt( x ), cbrt( x ) | square and cube roots |
log( x ), log10( x ) | logarithms (base e and base 10) |
exp( x ), pow( x , y ) | exponential and power functions (x to the power of y) |
sin( x ), cos( x ), tan( x ) | trigonometric functions |
asin( x ), acos( x ), atan( x ), | inverse trigonometric functions |
atan2( y , x ) | four-quadrant inverse tangent |
sinh( x ), cosh( x ), tanh( x ) | hyperbolic functions |
asinh( x ), acosh( x ), atanh( x ) | inverse hyperbolic functions |
fact( x ) | factorial |
random( ) | random number between 0 and 32767 |
isnan( x ), isinf( x ) | tests for not-a-number and infinity |