Update nalgebra requirement from 0.17 to 0.18
Created by: dependabot[bot]
Updates the requirements on nalgebra to permit the latest version.
Changelog
Sourced from nalgebra's changelog.
[0.18.0]
This release adds full complex number support to nalgebra. This includes all common vector/matrix operations as well as matrix decomposition. This excludes geometric type (like
Isometry
,Rotation
,Translation
, etc.) from thegeometry
module.Added
Quaternion and geometric operations
- Add trigonometric functions for quaternions:
.cos, .sin, .tan, .acos, .asin, .atan, .cosh, .sinh, .tanh, .acosh, .asinh, .atanh
.- Add geometric algebra operations for quaternions:
.inner, .outer, .project, .rejection
- Add
.left_div, .right_div
for quaternions.- Add
.renormalize
toUnit<...>
andRotation3
to correct potential drift due to repeated operations. Those drifts could cause them not to be pure rotations anymore.Convolution
.convolve_full(kernel)
returns the convolution ofself
bykernel
..convolve_valid(kernel)
returns the convolution ofself
bykernel
after removal of all the elements relying on zero-padding..convolve_same(kernel)
returns the convolution ofself
bykernel
with a result of the same size asself
.Complex number support
- Add the
::from_matrix
constructor too all rotation types to extract a rotation from a raw matrix.- Add the
::from_matrix_eps
constructor too all rotation types to extract a rotation from a raw matrix. This takes more argument than::from_matrix
to control the convergence of the underlying optimization algorithm.- Add
.camax()
which returns the matrix component with the greatest L1-norm.- Add
.camin()
which returns the matrix component with the smallest L1-norm.- Add
.ad_mul(b)
for matrix-multiplication ofself.adjoint() * b
.- Add
.ad_mul_to(b)
which is the same as.ad_mul
but with a provided matrix to be filled with the result of the multiplication.- Add BLAS operations involving complex conjugation (following similar names as the original BLAS spec):
.dotc(rhs)
equal toself.adjoint() * rhs
..gerc(alpha, x, y, beta)
equivalent toself = alpha * x * y.adjoint() + beta * self
.hegerc
which is likegerc
but for Hermitian matrices..syger
which is the new name of.ger_symm
which is equivalent toself = alpha * x * y.transpose() + beta * self
..sygemv
which is the new name of.gemv_symm
which is equivalent toself = alpha * a * x + beta * self
witha
symmetric..hegemv(alpha, a, x, beta)
which is like.sygemv
but witha
Hermitian..gemv_ad(alpha, a, x, beta)
which is equivalent toself = alpha * a.adjoint() * x + beta * self
..gemm_ad(alpha, a, b, beta)
which is equivalent toself = alpha * a.adjoint() * b + beta * self
..icamax()
which returns the index of the complex vector component with the greatest L1-norm.Note that all the other BLAS operation will continue to work for all fields, including floats and complex numbers.
Renamed
RealSchur
has been renamedSchur
because it can now work with complex matrices.[0.17.0]
Added
... (truncated)
- Add swizzling up to dimension 3 for vectors. For example, you can do
v.zxy()
as an equivalent toVector3::new(v.z, v.x, v.y)
.- Add swizzling up to dimension 3 for points. For example, you can do
p.zxy()
as an equivalent toPoint3::new(p.z, p.x, p.y)
.- Add
.copy_from_slice
to copy matrix components from a slice in column-major order.- Add
.dot
to quaternions.
Commits
-
96d864c
Release v0.18.0 -
e536671
Minor rewording on the changelog. -
d759912
Update changelog. -
bb06701
Fix the return type ofconvolve_same
to match the documentation. -
ae4afa3
Merge branch 'master-public' into dev -
b5b81a0
Bump version numbers. -
31bc336
Merge pull request #567 from rustsim/complex -
94a8bab
Uncomment the fast renormalization of Rotation2. -
18b9f82
Fix warnings. -
86fa4be
Remove the criterion dependency and add comment to re-add it to run benchmarks. - Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot ignore this [patch|minor|major] version
will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) -
@dependabot use these labels
will set the current labels as the default for future PRs for this repo and language -
@dependabot use these reviewers
will set the current reviewers as the default for future PRs for this repo and language -
@dependabot use these assignees
will set the current assignees as the default for future PRs for this repo and language -
@dependabot use this milestone
will set the current milestone as the default for future PRs for this repo and language -
@dependabot badge me
will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot dashboard:
- Update frequency (including time of day and day of week)
- Automerge options (never/patch/minor, and dev/runtime dependencies)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Finally, you can contact us by mentioning @dependabot.