novacrazy / dual_num

Dual Number library for Rust
https://docs.rs/dual_num/
17 stars 4 forks source link

Update nalgebra requirement from 0.17 to 0.20 #29

Closed dependabot-preview[bot] closed 4 years ago

dependabot-preview[bot] commented 4 years ago

Updates the requirements on nalgebra to permit the latest version.

Changelog

Sourced from nalgebra's changelog.

[0.20.0]

Added

  • cholesky.rank_one_update(...) which performs a rank-one update on the cholesky decomposition of a matrix.
  • From<&Matrix> is now implemented for matrix slices.
  • .try_set_magnitude(...) which sets the magnitude of a vector, while keeping its direction.
  • Implementetanions of From and Into for the conversion between matrix slices and standard (&[N] &mut [N]) slices.

Modified

  • We started some major changes in order to allow non-Copy types to be used as scalar types inside of matrices/vectors.

[0.19.0]

Added

  • .remove_rows_at and remove_columns_at which removes a set of rows or columns (specified by indices) from a matrix.
  • Several formatting traits have been implemented for all matrices/vectors: LowerExp, UpperExp, Octal, LowerHex, UpperHex, Binary, Pointer.
  • UnitQuaternion::quaternions_mean(...) which computes the mean rotation of a set of unit quaternions. This implements the algorithm from _Oshman, Yaakov, and Avishy Carmi, "Attitude estimation from vector observations using a genetic-algorithm-embedded quaternion particle filter."

Modified

  • It is now possible to get the min/max element of unsigned integer matrices.

Added to nalgebra-glm

  • Some infinite and reversed perspectives: ::infinite_perspective_rh_no, ::infinite_perspective_rh_zo, ::reversed_perspective_rh_zo, and ::reversed_infinite_perspective_rh_zo.

[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 the geometry 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 to Unit<...> and Rotation3 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 of self by kernel.
  • .convolve_valid(kernel) returns the convolution of self by kernel after removal of all the elements relying on zero-padding.
  • .convolve_same(kernel) returns the convolution of self by kernel with a result of the same size as self.

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 of self.adjoint() * b.
... (truncated)
Commits


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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)
dependabot-preview[bot] commented 4 years ago

Superseded by #30.