Skip to content

Releases: itt-ustutt/num-dual

v0.7.0

29 May 09:47
522d975
Compare
Choose a tag to compare

Added

  • Added new HyerHyperDual number for the calculation of third partial derivatives. #51
  • Added new functions first_derivative, gradient, jacobian, second_derivative, hessian, third_derivative, second_partial_derivative, partial_hessian, third_partial_derivative and third_partial_derivative_vec that provide a convenient interface for the calculation of derivatives. #52
  • Added new functions try_first_derivative, try_gradient, try_jacobian, try_second_derivative, try_hessian, try_third_derivative, try_second_partial_derivative, try_partial_hessian, try_third_partial_derivative and try_third_partial_derivative_vec that provide the same functionalities for fallible functions. #52
  • Implemented the RealField and ComplexField traits from nalgebra for DualVec. #59
  • Added the python_macro feature that provides the impl_dual_num macro. #63

Changed

  • Renamed derive* methods to derivative*. #52
  • Generalized the implementation of vector dual numbers to use both statically and dynamically sized arrays internally. #58
  • Removed Copy, Send and Sync as supertraits of DualNum. The individual dual number data types still implement the traits if they are statically allocated. #58
  • Renamed type aliases from, e.g., DualVec to DualSVec and DualDVec for statically and dynamically allocated dual numbers, respectively. #58

Removed

  • Removed the StaticMat struct in favor of the analogous implementations from nalgebra. #52
  • Removed the derive* methods for vector types due to the change to nalgebra. #52
  • Removed the derive* functions in Python in favor of the aforementioned new functions. #52
  • Removed the build_wheel workspace crate. The main crate is now also used to build the Python package. #63

v0.6.0

20 Jan 18:46
d40afc2
Compare
Choose a tag to compare

Added

  • Publicly exposed all Python classes that are being generated. #47
  • Exported the impl_dual_num macro that implements the arithmetic operators for dual numbers in Python. #47

Packaging

  • Updated pyo3 and numpy dependencies to 0.18. #49

v0.5.3

11 Nov 09:17
81ece50
Compare
Choose a tag to compare

Added

  • Implemented ScalarOperand for non-scalar dual numbers. #46

v0.5.2

23 May 16:03
be0994a
Compare
Choose a tag to compare

Added

  • Added method is_derivative_zero to check whether all non-real parts of a generalized dual number are zero. #43

v0.5.1

09 Mar 13:14
0dcb7d0
Compare
Choose a tag to compare

[0.5.1] - 2022-03-09

Fixed

  • Removed unused features and added missing linalg feature. #41

v0.5.0

08 Mar 14:00
8be547d
Compare
Choose a tag to compare

Packaging

  • Updated pyo3 dependency to 0.16. #39

Removed

  • Removed ndarray-linalg feature. #38

v0.4.1

20 Dec 15:34
cbce9a6
Compare
Choose a tag to compare

Added 0th, 1st and 2nd order Bessel functions of the first kind (bessel_j0, bessel_j1, bessel_j2) for double precision dual numbers. #36

v0.4.0

16 Dec 16:53
499a441
Compare
Choose a tag to compare

Make the crate usable without BLAS and LAPACK dependencies.

v0.3.0

10 Aug 14:32
c980b42
Compare
Choose a tag to compare

Added python package.