Commit Graph

296 Commits

Author SHA1 Message Date
Vincent Esche e4c37fb282 Changed `mod…` for `R: Float/Double` of ’Arithmetic.swift’ be implemented in terms of `modInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 514702bd11 Added `modPlace` for `R: Float/Double` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche fa47d4e4cc Removed unnecessary array allocation from `add`/`sub` in ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche e736a97b06 Changed `sqrt…` of ’Arithmetic.swift’ be implemented in terms of `sqrtInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 7f12a24c44 Added `sqrtInPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche 3ee5748f87 Changed `pow…` of ’Arithmetic.swift’ be implemented in terms of `powInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 93c0e492bc Added `powInPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche 38cac915a6 Changed `exp2…` of ’Arithmetic.swift’ be implemented in terms of `exp2InPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 2c73c84355 Added `exp2InPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche 91682c61ee Changed `exp…` of ’Arithmetic.swift’ be implemented in terms of `expInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche d0633cf731 Added `expInPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche 2ded0444e4 Changed `remainder…` of ’Arithmetic.swift’ be implemented in terms of `remainderInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 7f92e97c7d Added `remainderInPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche 0cbdb925ea Changed `mod…` of ’Arithmetic.swift’ be implemented in terms of `modInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 315096f78b Added `modInPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche 2919646dd5 Changed `div…` of ’Arithmetic.swift’ be implemented in terms of `divInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 2ce5db6590 Changed `mul…` of ’Arithmetic.swift’ be implemented in terms of `mulInPlace` 2019-09-24 17:21:30 +02:00
Vincent Esche 88e8cb3ef1 Turned `add…`/`sub…` into thin wrappers of `muladd…` (in ‘Arithmetic.swift’) 2019-09-24 17:21:30 +02:00
Vincent Esche 99efd386f7 Added `muladd`/`muladdInPlace` to ‘Arithmetic.swift’ 2019-09-24 17:21:30 +02:00
Vincent Esche e243b08fd0 Renamed ‘General Arithmetic’ directory to ‘Arithmetic’ 2019-09-24 17:21:30 +02:00
Vincent Esche c351ba1884 Renamed `mulAdd…` to `muladd…` to match `elmul`, etc 2019-09-24 17:21:30 +02:00
Vincent Esche 65e6a2b6b5 Re-ordered functions in ‘Arithmetic.swift’ file 2019-09-24 17:21:30 +02:00
Vincent Esche 46b1687a29 Added `mulAdd(Matrix, Matrix)` (multiply-add) and turned existing addition/subtraction into shallow wrappers around it 2019-09-24 17:21:30 +02:00
Vincent Esche 1c274b3ee7 Added `Matrix += Matrix` and turned `Matrix + Matrix` into a shallow wrapper around it 2019-09-24 17:21:30 +02:00
Vincent Esche d3f7a50ad9 Fixed missing target memberships of ‘ScalarTests.swift’ file for non-macOS platforms 2019-09-23 22:54:36 +02:00
Vincent Esche 912854a747 Resolved FIXMEs, adding missing unit tests 2019-09-23 22:54:36 +02:00
Vincent Esche 0dddd7f3af Moved `exp()`/`exp2()` into ‘Arithmetic.swift’ 2019-09-23 22:54:36 +02:00
Vincent Esche 8dc60be7aa Moved `pow()` into ‘Arithmetic.swift’ 2019-09-23 22:54:36 +02:00
Vincent Esche 8d748416da Changed use of `(0..<n).map { Scalar($0) }` to `(1…n).map { Scalar($0) }` avoiding divide-by-zero 2019-09-23 22:54:36 +02:00
Vincent Esche 9933ae5bcd Renamed `func test_grid` to `func test_init_arrayLiteral` 2019-09-23 22:54:36 +02:00
Vincent Esche 741fa9a4cf Added missing `// MARK: - …` to implementation files 2019-09-23 22:54:36 +02:00
Vincent Esche 59a14fdbd2 Moved `func test_mul_empty_float` and added corresponding `func test_mul_empty_double` 2019-09-23 22:54:36 +02:00
Vincent Esche 3e48656227 Moved functions with `Scalar` as `lhs` into separate `ScalarTests` file 2019-09-23 22:54:36 +02:00
Vincent Esche fbdfc14902 Added missing tests for dot product of `Vector<Scalar>` 2019-09-23 22:54:36 +02:00
Vincent Esche 5b86954a46 Added `// MARK: - …` to unit tests to improve ergonomics in Xcode’s minimaps 2019-09-23 22:54:36 +02:00
Vincent Esche d616943927 Added benchmark measurements to `VectorTests` 2019-09-23 22:54:36 +02:00
Vincent Esche 51f09e9f50 Increased size of too-small arrays in performance measurements 2019-09-23 22:54:36 +02:00
Vincent Esche 4ec96e4ff4 Removed test helper functions in favor of explicit literals. K.I.S.S. 2019-09-23 22:54:36 +02:00
Vincent Esche bb38145240 Marked `Vector<Scalar>`’s `func …InPlace` functions as implicitly `internal` access 2019-08-31 10:31:04 +02:00
Vincent Esche 1c700c9bce Removed `func ` from inventory 2019-08-30 18:03:00 +02:00
Vincent Esche 898a908c35 Unified naming of `lhs` and `rhs` arguments (from current mix of `lhs`, `x`, `l`, …) 2019-08-30 13:48:34 +02:00
Vincent Esche da20356543 Reorganized files 2019-08-30 13:48:34 +02:00
Vincent Esche 7f4543704f Replaced `// MARK:` with `// MARK: - ` for nicer visual separation in Xcode 2019-08-30 13:48:34 +02:00
Vincent Esche 4bc8823311 Moved functions/operators with `lhs: Vector` into separate ‘Vector.swift’ file 2019-08-30 13:48:34 +02:00
Vincent Esche c83f890f33 Moved functions/operators with `lhs: Scalar` into separate ‘Scalar.swift’ file 2019-08-30 13:48:34 +02:00
Vincent Esche 8dc7cbc180 Replaced use of named functions in ‘ArithmeticTests.swift’ with operators
By the latter forward to the former we thus essentually test both code-paths in one test.
2019-08-30 13:48:34 +02:00
Vincent Esche 202a4e5ed3 Moved arithmetic operators right next to their corresponding named functions 2019-08-30 13:48:34 +02:00
Vincent Esche 9b63cb159a Unified file encodings to UTF-8 2019-08-30 13:48:34 +02:00
Vincent Esche 725a9baf85 Moved operator-precedence declarations into separate source file 2019-08-30 13:48:34 +02:00
Vincent Esche 03b3a35602 Deleted ‘INVENTORY.md’ 2019-08-30 01:24:20 +02:00