Jakub Konka
fe65b1c129
Add Vector::axcpy method
...
The added method `Vector::axcpy` generalises `Vector::gemv` to
noncommutative cases since it allows us to write for `gemv`
`self.axcpy(alpha, &col2, val, beta)`, instead the usual
`self.axpy(alpha * val, &col2, beta)`. Hence, `axcpy` preserves the
order of scalar multiplication which is important for applications where
commutativity is not guaranteed (e.g., matrices of quaternions, etc.).
This commmit also removes helpers `array_axpy` and `array_ax`, and
replaces them with `array_axcpy` and `array_axc` respectively, which
like above preserve the order of scalar multiplication.
Finally, `Vector::axpy` is preserved, however, now expressed in terms of
`Vector::axcpy` like so:
```
self.axcpy(alpha * val, &col2, beta)
```
2020-03-02 12:45:37 +01:00
Jakub Konka
e1c8e1bccf
Fix Vector::axpy for noncommutative cases
...
One example would be performing simple matrix multiplication
over a division algebra such as quaternions.
2020-03-02 12:45:37 +01:00
sebcrozet
0cc1bac816
Bump dependencies.
2019-10-28 14:15:03 +01:00
Edoardo Morandi
d0d1172d4b
Rand 0.6 -> 0.7
...
* Bumped rand version to 0.7
* Added dependency to rand_distr
* Bumped quickcheck version to 0.9 (because of rand)
* Bumped rand_xorshift version to 0.2
2019-10-28 14:15:03 +01:00
thibault
67f3379b34
Corrected typo.
2019-10-28 14:15:03 +01:00
thibault
7773f13016
Changed name. Changed argument. Added documentation line.
2019-10-28 14:15:03 +01:00
thibault
dacd15e927
Added function to compute the mean quaternion from a vector of unit quaternions.
2019-10-28 14:15:03 +01:00
Pierre Avital
b5f43c6efc
Switched fmt implementation to a macro, applied that macro to all formats in std
2019-10-28 14:15:03 +01:00
Pierre Avital
6ee0e02612
implemented LowerExp
2019-10-28 14:15:03 +01:00
sebcrozet
be41cb96e8
GEMM on empty matrices: properly take the beta parameter into account.
2019-10-28 14:15:03 +01:00
sebcrozet
8e759ade83
Fix multiplication between matrices of dimension 0.
...
Fix #644
2019-10-28 14:15:03 +01:00
Koen Deschacht
fba61923ae
.min() and .max(): updated examples to be more concise
2019-10-28 14:15:03 +01:00
Koen Deschacht
8f0ee9fa90
Allow getting .min() and .max() of matrices of unsigned integers
2019-10-28 14:15:03 +01:00
sebcrozet
cfb654240c
Matrix::transform_point: correctly take the normalization term into account.
...
Fix #640
2019-08-27 22:05:28 +02:00
Fabian Löschner
e170729f67
Simplified ordering check
2019-08-27 22:05:28 +02:00
Fabian Löschner
a06b833343
More elegant initial value for xcmp
2019-08-27 22:05:28 +02:00
Fabian Löschner
c625a37525
Undo breaking changes
2019-08-27 22:05:28 +02:00
Fabian Löschner
a4a5750ccd
Clarified documentation of min/max behaviour
2019-08-27 22:05:28 +02:00
Fabian Löschner
d21c65f755
Fix for [a,ca]min/max methods.
...
Panic on empty matrices, propagate NaN, fix of wrong results, added doc tests
2019-08-27 22:05:28 +02:00
Jake Shadle
4fa4a6b854
HTTPS All The Things ( #608 )
...
* Use https for all links where it is valid
* Fix random links to external sites
2019-08-27 22:05:28 +02:00
Las
3d97b21aea
Fix incorrect documentation from s/Real/&Field
2019-08-27 22:05:28 +02:00
Jack Wrenn
c8ae3839c1
simplify anti-aliasing assertion
2019-08-27 22:05:28 +02:00
Jack Wrenn
2e273ad6c5
prevent constructing MatrixSliceMutMN
for which disjoint indices may alias the same linear index
...
Fixes #486 .
2019-08-27 22:05:28 +02:00
Stefan Mesken
e86ab5db3d
removed depedency on Vec
2019-08-27 22:05:28 +02:00
Stefan Mesken
4add995c1b
addressed Trevis CI error
2019-08-27 22:05:28 +02:00
Stefan Mesken
3baefb1319
Allow the removal of multiple rows/columns given an array of indices. #530
2019-08-27 22:05:28 +02:00
Sébastien Crozet
b5f452087e
Release v0.18.0
2019-03-31 17:32:40 +02:00
sebcrozet
bb06701eff
Fix the return type of convolve_same
to match the documentation.
2019-03-31 17:04:20 +02:00
sebcrozet
ae4afa3d2c
Merge branch 'master-public' into dev
...
# Conflicts:
# Cargo.toml
# src/base/matrix.rs
# src/geometry/quaternion.rs
2019-03-31 16:33:25 +02:00
sebcrozet
b5b81a0ba9
Bump version numbers.
2019-03-31 15:25:54 +02:00
sebcrozet
94a8babcdc
Uncomment the fast renormalization of Rotation2.
2019-03-31 14:34:07 +02:00
sebcrozet
18b9f82042
Fix warnings.
2019-03-31 13:32:26 +02:00
sebcrozet
7dbff7c389
Continue reexporting the deprecated alga::general::Real trait.
2019-03-31 12:26:20 +02:00
sebcrozet
55873cae37
Fix compilation with no-std.
2019-03-31 12:06:26 +02:00
sebcrozet
ba40e8eb55
Fix merge errors due to the switch to rust 2018.
2019-03-31 10:53:31 +02:00
sebcrozet
38ef0cbf7b
Merge branch 'dev' into complex
...
# Conflicts:
# src/base/ops.rs
# src/geometry/isometry.rs
# src/geometry/quaternion.rs
# src/geometry/quaternion_construction.rs
# src/geometry/rotation.rs
# src/geometry/similarity.rs
# src/geometry/transform.rs
# src/geometry/translation.rs
# src/geometry/unit_complex.rs
2019-03-31 10:48:59 +02:00
Adam Nemecek
1e04053a21
refactoring
2019-03-31 10:34:03 +02:00
Adam Nemecek
e416360fc9
geometric operations
2019-03-31 10:34:03 +02:00
Simon Puchert
74aefd9c23
Improve precision of UnitQuaternion::angle ( #569 )
...
The previous implementation had stability problems for small angles due
to the behaviour of the arccosine it used. In particular, it needs a
hack to handle "cosines" greater than 1 and the smallest obtainable
nonzero angle for e.g. f32 is acos(1-2^-22) = 0.00069...
These problems can be fixed by using an arctangent-based formula.
2019-03-31 10:32:34 +02:00
sebcrozet
56f961c4bc
Reexport Complex from num_complex.
2019-03-26 18:02:14 +01:00
sebcrozet
3b6cd04a80
Adapt BLAS tests to complex numbers.
2019-03-26 18:02:03 +01:00
sebcrozet
4ef4001836
Rename Real to RealField.
2019-03-25 11:21:41 +01:00
sebcrozet
5b28c39fa7
Rename Complex to ComplexField.
2019-03-25 11:19:36 +01:00
Samuel Hurel
b4d800f3e2
Fix matrix slerp function ( #568 )
...
* Fix matrix slerp function
* Adding slerp doc test
2019-03-24 21:44:49 +01:00
sebcrozet
3cbe60523a
2018 edition.
2019-03-23 14:33:47 +01:00
sebcrozet
ce24ea972e
Remove all spurious allocation introduced by complex number support on decompositions.
2019-03-23 14:13:00 +01:00
sebcrozet
921a05d523
Implement some BLAS opertaions involving adjoint.
2019-03-23 11:48:12 +01:00
sebcrozet
1001e8ee0f
Cleanup warnings and rename Schur -> RealSchur
2019-03-23 11:46:56 +01:00
sebcrozet
fd65738738
Fix icamax_full doc-test.
2019-03-19 22:56:32 +01:00
sebcrozet
cb367a645d
Fix mint tests.
2019-03-19 22:53:21 +01:00