Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 452 of 909
FSQRT(value)
Floating-Point Square Root
APPLICATION: Math function
DESCRIPTION: Gets the floating-point square root of the specified variable or
number
EXECUTION: Immediate
CONDITIONAL TO: N/A
LIMITATIONS: N/A
READ/REPORT: RFSQRT(value)
WRITE: N/A
LANGUAGE ACCESS: Formulas and conditional testing
UNITS: Floating-point number
RANGE OF VALUES:
Input: Non-negative floating-point variable range, integer
inputs or literal values are limited to 0 to 2147483647
Output: Non-negative floating-point value range
TYPICAL VALUES:
Input: Non-negative floating-point variable range, integer
inputs or literal values are limited to 0 to 2147483647
Output: Non-negative floating-point value range
DEFAULT VALUE: N/A
FIRMWARE VERSION: 5.x and later
COMBITRONIC: N/A
DETAILED DESCRIPTION:
FSQRT takes a value and reports the floating-point square root:
af[1]=FSQRT(arg)
where arg may be an integer (e.g., a or aw[0]) or floating-point variable (e.g., af[0]). Integer
or floating-point constants may also be used (e.g., 23 or 23.7, respectively).
This command cannot have within the parenthesis: math operators, other parenthetical
functions, or a Combitronic request from another motor. For example, x=FABS(PA) is
allowed, but x=FABS(PA:3) is not allowed.
The result of this function is a floating-point type. If used in an equation, the operations in the
equation that are processed after this function are automatically promoted to a float. This is
dependent on the mathematical order of operations in the equation. As with other equations
(e.g., x=a+b), the variable to the left of "=" may be an integer variable to accept the result.
However, the value will be truncated to fit to that integer type. For example, the assignment
"aw[0]=" will drop any fractional amount and truncate the result to the range -32768 to 32767
(aw[0]=100.5 will report as 100, and aw[0]=40000.0 will report as -25536).
Although the floating-point variables and their standard binary operations conform to
IEEE-754 double precision, the floating-point square root and trigonometric functions only
Part 2: Commands: FSQRT(value)