File tree Expand file tree Collapse file tree 3 files changed +8
-4
lines changed
Expand file tree Collapse file tree 3 files changed +8
-4
lines changed Original file line number Diff line number Diff line change 22
33All notable changes to this project will be documented in this file.
44
5- ## [ Unreleased ]
5+ ## [ 0.0.10 ] - 2025-04-22
66
77### Changed
88
9- - Update so3.py log function to use arctan2 instead of arccos for better numerical stability
9+ - Update so3.py log function to use arctan2 instead of arccos for better numerical stability.
1010
1111## [ 0.0.9] - 2025-04-21
1212
Original file line number Diff line number Diff line change @@ -85,6 +85,7 @@ def from_matrix(cls, matrix: np.ndarray) -> SO3:
8585 assert matrix .shape == (SO3 .matrix_dim , SO3 .matrix_dim )
8686 wxyz = np .empty (SO3 .parameters_dim , dtype = np .float64 )
8787 mujoco .mju_mat2Quat (wxyz , matrix .ravel ())
88+ # NOTE mju_mat2Quat normalizes the quaternion.
8889 return SO3 (wxyz = wxyz )
8990
9091 @classmethod
@@ -163,7 +164,10 @@ def multiply(self, other: SO3) -> SO3:
163164 def exp (cls , tangent : np .ndarray ) -> SO3 :
164165 axis = np .array (tangent )
165166 theta = mujoco .mju_normalize3 (axis )
166- wxyz = np .zeros (4 )
167+ wxyz = np .empty (4 , dtype = np .float64 )
168+ # NOTE mju_axisAngle2Quat does not normalize the quaternion but is guaranteed
169+ # to return a unit quaternion when axis is a unit vector. In our case,
170+ # mju_normalize3 ensures that axis is a unit vector.
167171 mujoco .mju_axisAngle2Quat (wxyz , axis , theta )
168172 return SO3 (wxyz = wxyz )
169173
Original file line number Diff line number Diff line change @@ -4,7 +4,7 @@ build-backend = "flit_core.buildapi"
44
55[project ]
66name = " mink"
7- version = " 0.0.9 "
7+ version = " 0.0.10 "
88readme = " README.md"
99authors = [
1010 {name = " Kevin Zakka" , email = " zakka@berkeley.edu" },
You can’t perform that action at this time.
0 commit comments