---
title: "add(multiplication:multiplication:result:)"
framework: accelerate
role: symbol
role_heading: Type Method
path: "accelerate/vdsp/add(multiplication:multiplication:result:)-9xe8k"
---

# add(multiplication:multiplication:result:)

Calculates the double-precision element-wise addition of two vector-scalar products.

## Declaration

```swift
static func add<T, U, V>(multiplication multiplicationAB: (a: T, b: Double), multiplication multiplicationCD: (c: U, d: Double), result: inout V) where T : AccelerateBuffer, U : AccelerateBuffer, V : AccelerateMutableBuffer, T.Element == Double, U.Element == Double, V.Element == Double
```

## Parameters

- `multiplicationAB`: A tuple that contains the vector A and the scalar value B in E = (A * B) + (C * D).
- `multiplicationCD`: A tuple that contains the vector C and the scalar value D in E = (A * B) + (C * D).
- `result`: The output vector E in E = (A * B) + (C * D).

## Discussion

Discussion This function calculates the element-wise vector-scalar products of A and B, and C and D, and writes the sum of the products to vector D. for (n = 0; n < N; ++n)     E[n] = A[n]*B + C[n]*D;

The following code shows an example of using this function:     let count = 5          let a: [Double] = [ 1,  2,  3,  4,  5]     let b: Double = 10     let c: [Double] = [ 5,  4,  3,  2,  1]     let d: Double = 50          let e = [Double](unsafeUninitializedCapacity: count) {         buffer, initializedCount in                  vDSP.add(multiplication: (a, b),                   multiplication: (c, d),                  result: &buffer)                  initializedCount = count     }          // Prints "[260.0, 220.0, 180.0, 140.0, 100.0]".     print(e)

## See Also

### Addition

- [add(_:_:)](accelerate/vdsp/add(_:_:)-9mv1a.md)
- [add(_:_:)](accelerate/vdsp/add(_:_:)-2ftxc.md)
- [add(_:_:)](accelerate/vdsp/add(_:_:)-53nh9.md)
- [add(_:_:)](accelerate/vdsp/add(_:_:)-7swvf.md)
- [add(_:_:result:)](accelerate/vdsp/add(_:_:result:)-2531u.md)
- [add(_:_:result:)](accelerate/vdsp/add(_:_:result:)-2w0o9.md)
- [add(_:_:result:)](accelerate/vdsp/add(_:_:result:)-338hl.md)
- [add(_:_:result:)](accelerate/vdsp/add(_:_:result:)-3vzwi.md)
- [add(_:to:count:result:)](accelerate/vdsp/add(_:to:count:result:)-g1dk.md)
- [add(_:to:count:result:)](accelerate/vdsp/add(_:to:count:result:)-75np9.md)
- [add(multiplication:_:)](accelerate/vdsp/add(multiplication:_:)-4e3tj.md)
- [add(multiplication:_:)](accelerate/vdsp/add(multiplication:_:)-1bsuq.md)
- [add(multiplication:_:)](accelerate/vdsp/add(multiplication:_:)-9dxlr.md)
- [add(multiplication:_:)](accelerate/vdsp/add(multiplication:_:)-4667v.md)
- [add(multiplication:_:)](accelerate/vdsp/add(multiplication:_:)-3tw93.md)
