{"id":21595756,"url":"https://github.com/wigging/numerix","last_synced_at":"2025-08-30T20:15:02.785Z","repository":{"id":257784285,"uuid":"803082474","full_name":"wigging/numerix","owner":"wigging","description":"Linear algebra and numerical computing with Swift on Apple devices.","archived":false,"fork":false,"pushed_at":"2025-07-21T01:42:13.000Z","size":158,"stargazers_count":31,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-21T02:31:44.243Z","etag":null,"topics":["accelerate-framework","ios","linear-algebra","macos","swift"],"latest_commit_sha":null,"homepage":"https://swiftpackageindex.com/wigging/numerix","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wigging.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"wigging","patreon":"wigging","buy_me_a_coffee":"wigging","custom":"https://www.paypal.me/gavinwiggins"}},"created_at":"2024-05-20T03:11:37.000Z","updated_at":"2025-07-21T01:42:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"3c341376-13b0-49e3-9df2-e5facdc82a63","html_url":"https://github.com/wigging/numerix","commit_stats":null,"previous_names":["wigging/numerix"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wigging/numerix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fnumerix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fnumerix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fnumerix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fnumerix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wigging","download_url":"https://codeload.github.com/wigging/numerix/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fnumerix/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272900164,"owners_count":25012034,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["accelerate-framework","ios","linear-algebra","macos","swift"],"created_at":"2024-11-24T17:43:50.969Z","updated_at":"2025-08-30T20:15:02.762Z","avatar_url":"https://github.com/wigging.png","language":"Swift","funding_links":["https://github.com/sponsors/wigging","https://patreon.com/wigging","https://buymeacoffee.com/wigging","https://www.paypal.me/gavinwiggins"],"categories":["Swift"],"sub_categories":[],"readme":"# Numerix\n\nNumerix is an open-source Swift package that provides Complex, Vector, Matrix, and ShapedArray structures for performing linear algebra and other numerical computations on Apple devices. It uses the Accelerate framework to perform high-performance and energy-efficient calculations. More information is available on the [Swift Package Index](https://swiftpackageindex.com/wigging/numerix) and the [documentation website](https://swiftpackageindex.com/wigging/numerix/main/documentation/numerix).\n\n\u003e [!WARNING]\n\u003e Numerix is under heavy development. Many things are missing and breaking changes will likely happen.\n\n## Installation\n\nIf using Xcode, select *File* and choose *Add Package Dependencies...* from the menu, then enter the URL for the Numerix GitHub repository which is `https://github.com/wigging/numerix`.\n\nIf editing a `Package.swift` manifest, add Numerix as a dependency such as:\n\n```swift\ndependencies: [\n    .package(url: \"https://github.com/wigging/numerix\", branch: \"main\")\n]\n\ntargets: [\n    .target(name: \"MyLibrary\", dependencies: [\"Numerix\"])\n]\n```\n\nThe final step is to import the package in a Swift file by using `import Numerix`.\n\n## Usage\n\nThe example below uses the Numerix package to perform matrix multiplication of two 3x3 matrices. The printed result is shown in the comments.\n\n```swift\nimport Numerix\n\nlet a: Matrix = [[1, 2, 3],\n                 [4, 5, 6.0],\n                 [2, 3, 4]]\n\nlet b: Matrix = [[1, 2, 3.5],\n                 [4, 5, 6],\n                 [4, 5, 9.1]]\n\nlet c = a * b\n\nprint(c)\n// ⎛ 21.0  27.0  42.8 ⎞\n// ⎜ 48.0  63.0  98.6 ⎟\n// ⎝ 30.0  39.0  61.4 ⎠\n\ndebugPrint(c)\n// 3x3 Matrix\u003cDouble\u003e\n// ⎛ 21.0  27.0  42.8 ⎞\n// ⎜ 48.0  63.0  98.6 ⎟\n// ⎝ 30.0  39.0  61.4 ⎠\n```\n\nAn N-dimensional array is also available in Numerix. The example below prints a 2x3x5 shaped array.\n\n```swift\nlet shape = [2, 3, 5]\nlet values = Array(1...shape.reduce(1, *)).map { Double($0) }\nlet arr = ShapedArray\u003cDouble\u003e(shape: shape, array: values)\n\nprint(arr)\n// ⎛ ⎛  1.0   2.0   3.0   4.0   5.0 ⎞ ⎞\n// ⎜ ⎜  6.0   7.0   8.0   9.0  10.0 ⎟ ⎟\n// ⎜ ⎝ 11.0  12.0  13.0  14.0  15.0 ⎠ ⎟\n// ⎜                                  ⎟\n// ⎜ ⎛ 16.0  17.0  18.0  19.0  20.0 ⎞ ⎟\n// ⎜ ⎜ 21.0  22.0  23.0  24.0  25.0 ⎟ ⎟\n// ⎝ ⎝ 26.0  27.0  28.0  29.0  30.0 ⎠ ⎠\n```\n\n## Documentation\n\nDocumentation for the Numerix package can be viewed [here](https://swiftpackageindex.com/wigging/numerix/main/documentation/numerix). The documentation can also be built and viewed in Xcode by selecting *Product* then *Build Documentation* from the Xcode menu.\n\n## Contributing\n\nPlease read the [contributing guidelines](CONTRIBUTING.md) if you would like to contribute to the Numerix package. The guidelines discuss testing, documentation, code style, and other practices used for the development of this package.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwigging%2Fnumerix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwigging%2Fnumerix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwigging%2Fnumerix/lists"}