<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "Accelerate",
  "identifier" : "/documentation/Accelerate/SparseNumericFactorOptions/scaling",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "Accelerate"
    ],
    "preciseIdentifier" : "c:@SA@SparseNumericFactorOptions@FI@scaling"
  },
  "title" : "scaling"
}
-->

# scaling

An array that scales the matrix before factorization.

```
var scaling: UnsafeMutableRawPointer?
```

## Discussion

This array can either be `nil` or a pointer to an array of real values with a length greater than or equal to the size of the matrix that you’re factoring. The type of the array values is the element type of the matrix (but real, even if the matrix is complex).

If [`scalingMethod`](/documentation/Accelerate/SparseNumericFactorOptions/scalingMethod) is [`SparseScalingUser`](/documentation/Accelerate/SparseScalingUser), and this pointer is `nil`, the system doesn’t apply scaling.

If [`scalingMethod`](/documentation/Accelerate/SparseNumericFactorOptions/scalingMethod) is [`SparseScalingUser`](/documentation/Accelerate/SparseScalingUser), and this pointer isn’t `nil`, the system uses the user-provided array to scale the matrix before factorization.

If [`scalingMethod`](/documentation/Accelerate/SparseNumericFactorOptions/scalingMethod) isn’t [`SparseScalingUser`](/documentation/Accelerate/SparseScalingUser), the factor function computes its own scaling.

If this pointer isn’t `nil`, the computed scaling returns in the array.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)