Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

fmaf(3) [opendarwin man page]

FMA(3)							   BSD Library Functions Manual 						    FMA(3)

NAME
fma -- multiply and add, then round SYNOPSIS
#include <math.h> double fma(double x, double y, double z); float fmaf(float x, float y, double z); DESCRIPTION
The fma() and fmaf() functions compute (x*y)+z, rounded as one ternary operation: they compute the value (as if) to infinite precision and round once to the result format, according to the current rounding mode. SPECIAL VALUES
fma(x, y, z) returns a NaN and optionally raises the "invalid" floating-point exception if one of x and y is infinite, the other is 0, and z is a NaN. fma(x, y, z) returns a NaN and raises the "invalid" floating-point exception if one of x and y is infinite, the other is 0, and z is not NaN. fma(x, y, z) returns a NaN and raises the "invalid" floating-point exception if x times y is an exact infinity, and z is also an infinity but with the opposite sign. SEE ALSO
fdim(3), fmax(3), fmin(3) STANDARDS
The fma() and fmaf() functions conform to ISO/IEC 9899:1999(E). BSD
July 24, 2003 BSD

Check Out this Related Man Page

fma(3M) 						  Mathematical Library Functions						   fma(3M)

NAME
fma, fmaf, fmal - floating-point multiply-add SYNOPSIS
c99 [ flag... ] file... -lm [ library... ] #include <math.h> double fma(double x, double y, double z); float fmaf(float x, float y, float z); long double fmal(long double x, long double y, long double z); DESCRIPTION
These functions compute (x * y) + z, rounded as one ternary operation. They compute the value (as if) to infinite precision and round once to the result format, according to the rounding mode characterized by the value of FLT_ROUNDS. RETURN VALUES
Upon successful completion, these functions return (x * y) + z, rounded as one ternary operation. If x or y are NaN, a NaN is returned. If x multiplied by y is an exact infinity and z is also an infinity but with the opposite sign, a domain error occurs and a NaN is returned. If one of x and y is infinite, the other is 0, and z is not a NaN, a domain error occurs and a NaN is returned. If x*y is not 0*Inf nor Inf*0 and z is a NaN, a NaN is returned. ERRORS
These functions will fail if: Domain Error The value of x*y+z is invalid or the value x*y is invalid. If the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, the invalid floating-point exception will be raised. Range Error The result overflows. If the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, the overflow floating-point exception will be raised. USAGE
An application wanting to check for exceptions should call feclearexcept(FE_ALL_EXCEPT) before calling these functions. On return, if fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an exception has been raised. An application should either examine the return value or check the floating point exception flags to detect exceptions. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
feclearexcept(3M), fetestexcept(3M), math.h(3HEAD), attributes(5), standards(5) SunOS 5.11 12 Jul 2006 fma(3M)
Man Page

4 More Discussions You Might Find Interesting

1. Solaris

Script fails when generated output file reaches a particular size

Hi All, New to unix. Here is the problem. Running a script that extracts data from hyperion essbase and generates a file in unix. This script fails most of the times with a very low success rate. The data has increased a lot in the last few months resulting in the file being more than 2 gb. ... (2 Replies)
Discussion started by: noufalshaw
2 Replies

2. Solaris

Solaris SPARC speed issue

Hello helpful Unix gurus! First, I appreciate any help I can get. I have a product that we have ported (for years now) on Solaris SPARC 7.x OS from 1998 (or around that time I guess) that is compiled to a 32 executable. It has run (with various modifications over the years) on any Solaris... (10 Replies)
Discussion started by: Pug
10 Replies

3. Shell Programming and Scripting

Merging two year files

Hi All, I need to merge few files as belowABC_NYFWFX.txt ABC_NYFQTFX.txt ABC_NYFMAFX.txt ABC_NYFAVFX.txt ABC_CYFWFX.txt ABC_CYFQTFX.txt ABC_CYFMAFX.txt ABC_CYFAVFX.txt ABC_CYBWFX.txt ABC_NYFWFX.txt & ABC_CYFWFX.txt should be merged into a single file and name should be... (3 Replies)
Discussion started by: Hypesslearner
3 Replies

4. UNIX for Beginners Questions & Answers

Changing date format with script

I'm trying to change date format using this script from day/month/year to month/day/year #!/bin/bash while read line; do echo "$line" date=$(echo "$line" | cut -d/ -f1 ) month=$(echo "$line" | cut -d/ -f2 ) echo $month"/"$date"/2017" done < ~/Downloads/Dates.csv But I get output as... (5 Replies)
Discussion started by: sharat
5 Replies