fma

Multiply and add using fused multiply add approach

Description

example

X = fma(A, B, C) computes A*B+C using a fused multiply add approach. Fused multiply add operations round only once, often making the result more accurate than performing a multiplication operation followed by an addition.

Examples

collapse all

This example shows how to use the fma function to calculate A×B+C using a fused multiply add approach.

Define the inputs and use the fma function to compute the multiply add operation.

a = half(10);
b = half(10);
c = half(2);
x = fma(a, b, c)
x = 

  half

   102

Compare the result of the fma function with the two-step approach of computing the product and then the sum.

temp = a * b;
x = temp + c
x = 

  half

   102

Input Arguments

collapse all

Input array, specified as a floating-point scalar, vector, matrix, or multidimensional array.

Data Types: single | double | half

Input array, specified as a floating-point scalar, vector, matrix, or multidimensional array.

Data Types: single | double | half

Input array, specified as a floating-point scalar, vector, matrix, or multidimensional array.

Data Types: single | double | half

Output Arguments

collapse all

Result of multiply and add operation, A*B+C, returned as a scalar, vector, matrix, or multidimensional array.

See Also

Introduced in R2019a