Difference between revisions of "Mathematical Functions"

From Flowcode Help
Jump to navigationJump to search
Line 79: Line 79:
 
| isnan( x ), isinf( x )
 
| isnan( x ), isinf( x )
 
| tests for not-a-number and infinity
 
| tests for not-a-number and infinity
|-
+
 
| fabs( x ), floor( x ), ceil( x )
 
| absolute value, floor and ceiling functions
 
|-
 
 
| round( x )
 
| round( x )
 
| decimal rounding (x rounded to the nearest integer)
 
| decimal rounding (x rounded to the nearest integer)
Line 88: Line 85:
 
| fround( x , y )
 
| fround( x , y )
 
| floating point rounding (x rounded to y decimal places)
 
| 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 )
 
| asinh( x ), acosh( x ), atanh( x )
Line 121: Line 94:
 
| random( )
 
| random( )
 
| random number between 0 and 32767
 
| random number between 0 and 32767
|-
 
| isnan( x ), isinf( x )
 
| tests for not-a-number and infinity
 
 
|}
 
|}

Revision as of 15:09, 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 round( x ) decimal rounding (x rounded to the nearest integer)
fround( x , y ) floating point rounding (x rounded to y decimal places)
asinh( x ), acosh( x ), atanh( x ) inverse hyperbolic functions
fact( x ) factorial
random( ) random number between 0 and 32767