---
title: MPSNNBinaryArithmeticNode
framework: metalperformanceshaders
role: symbol
role_heading: Class
path: metalperformanceshaders/mpsnnbinaryarithmeticnode
---

# MPSNNBinaryArithmeticNode

Virtual base class for basic arithmetic nodes.

## Declaration

```swift
class MPSNNBinaryArithmeticNode
```

## Topics

### Initializers

- [init(leftSource:rightSource:)](metalperformanceshaders/mpsnnbinaryarithmeticnode/init(leftsource:rightsource:).md)
- [init(sources:)](metalperformanceshaders/mpsnnbinaryarithmeticnode/init(sources:).md)

### Instance Properties

- [bias](metalperformanceshaders/mpsnnbinaryarithmeticnode/bias.md)
- [maximumValue](metalperformanceshaders/mpsnnbinaryarithmeticnode/maximumvalue.md)
- [minimumValue](metalperformanceshaders/mpsnnbinaryarithmeticnode/minimumvalue.md)
- [primaryScale](metalperformanceshaders/mpsnnbinaryarithmeticnode/primaryscale.md)
- [primaryStrideInFeatureChannels](metalperformanceshaders/mpsnnbinaryarithmeticnode/primarystrideinfeaturechannels.md)
- [primaryStrideInPixelsX](metalperformanceshaders/mpsnnbinaryarithmeticnode/primarystrideinpixelsx.md)
- [primaryStrideInPixelsY](metalperformanceshaders/mpsnnbinaryarithmeticnode/primarystrideinpixelsy.md)
- [secondaryScale](metalperformanceshaders/mpsnnbinaryarithmeticnode/secondaryscale.md)
- [secondaryStrideInFeatureChannels](metalperformanceshaders/mpsnnbinaryarithmeticnode/secondarystrideinfeaturechannels.md)
- [secondaryStrideInPixelsX](metalperformanceshaders/mpsnnbinaryarithmeticnode/secondarystrideinpixelsx.md)
- [secondaryStrideInPixelsY](metalperformanceshaders/mpsnnbinaryarithmeticnode/secondarystrideinpixelsy.md)

### Instance Methods

- [gradientClass()](metalperformanceshaders/mpsnnbinaryarithmeticnode/gradientclass().md)
- [gradientFilters(withSources:)](metalperformanceshaders/mpsnnbinaryarithmeticnode/gradientfilters(withsources:).md)

## Relationships

### Inherits From

- [MPSNNFilterNode](metalperformanceshaders/mpsnnfilternode.md)

### Inherited By

- [MPSNNAdditionNode](metalperformanceshaders/mpsnnadditionnode.md)
- [MPSNNComparisonNode](metalperformanceshaders/mpsnncomparisonnode.md)
- [MPSNNDivisionNode](metalperformanceshaders/mpsnndivisionnode.md)
- [MPSNNMultiplicationNode](metalperformanceshaders/mpsnnmultiplicationnode.md)
- [MPSNNSubtractionNode](metalperformanceshaders/mpsnnsubtractionnode.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Arithmetic Layer Nodes

- [MPSNNAdditionNode](metalperformanceshaders/mpsnnadditionnode.md)
- [MPSNNAdditionGradientNode](metalperformanceshaders/mpsnnadditiongradientnode.md)
- [MPSNNSubtractionNode](metalperformanceshaders/mpsnnsubtractionnode.md)
- [MPSNNSubtractionGradientNode](metalperformanceshaders/mpsnnsubtractiongradientnode.md)
- [MPSNNMultiplicationNode](metalperformanceshaders/mpsnnmultiplicationnode.md)
- [MPSNNMultiplicationGradientNode](metalperformanceshaders/mpsnnmultiplicationgradientnode.md)
- [MPSNNDivisionNode](metalperformanceshaders/mpsnndivisionnode.md)
- [MPSNNArithmeticGradientNode](metalperformanceshaders/mpsnnarithmeticgradientnode.md)
- [MPSNNArithmeticGradientStateNode](metalperformanceshaders/mpsnnarithmeticgradientstatenode.md)
