├── .github ├── pull_request_template.md └── workflows │ └── matlab_test.yml ├── @DQ ├── Ad.m ├── Adsharp.m ├── DQ.m ├── Q4.m ├── Q8.m ├── T.m ├── acos.m ├── conj.m ├── cross.m ├── crossmatrix4.m ├── ctranspose.m ├── dinv.m ├── disp.m ├── dot.m ├── double.m ├── eq.m ├── exp.m ├── inv.m ├── is_line.m ├── is_plane.m ├── is_pure.m ├── is_pure_quaternion.m ├── is_quaternion.m ├── is_real.m ├── is_real_number.m ├── is_unit.m ├── ldivide.m ├── log.m ├── logical.m ├── minus.m ├── mldivide.m ├── mpower.m ├── mrdivide.m ├── mtimes.m ├── ne.m ├── norm.m ├── normalize.m ├── plot.m ├── plus.m ├── rdivide.m ├── rotation.m ├── rotation_angle.m ├── rotation_axis.m ├── sharp.m ├── times.m ├── translation.m ├── transpose.m └── uminus.m ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── robot_control ├── ControlObjective.m ├── DQ_ClassicQPController.m ├── DQ_KinematicConstrainedController.m ├── DQ_KinematicController.m ├── DQ_PseudoinverseController.m ├── DQ_TaskspaceQuadraticProgrammingController.m └── solvers │ ├── DQ_QuadprogSolver.m │ └── DQ_QuadraticProgramSolver.m ├── robot_modeling ├── DQ_CooperativeDualTaskSpace.m ├── DQ_DifferentialDriveRobot.m ├── DQ_FreeFlyingRobot.m ├── DQ_HolonomicBase.m ├── DQ_JointType.m ├── DQ_Kinematics.m ├── DQ_MobileBase.m ├── DQ_ParameterDH.m ├── DQ_SerialManipulator.m ├── DQ_SerialManipulatorDH.m ├── DQ_SerialManipulatorMDH.m ├── DQ_SerialWholeBody.m └── DQ_WholeBody.m ├── robots ├── Ax18ManipulatorRobot.m ├── BarrettWamArmRobot.m ├── ComauSmartSixRobot.m ├── FrankaEmikaPandaRobot.m ├── FreeFlyingRobot.m ├── KukaLwr4Robot.m ├── KukaYoubot.m ├── LittleJohnRobot.m └── RoombaCreateRobot.m └── utils ├── DQ_Geometry.m └── include_namespace_dq.m /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/matlab_test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/.github/workflows/matlab_test.yml -------------------------------------------------------------------------------- /@DQ/Ad.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/Ad.m -------------------------------------------------------------------------------- /@DQ/Adsharp.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/Adsharp.m -------------------------------------------------------------------------------- /@DQ/DQ.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/DQ.m -------------------------------------------------------------------------------- /@DQ/Q4.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/Q4.m -------------------------------------------------------------------------------- /@DQ/Q8.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/Q8.m -------------------------------------------------------------------------------- /@DQ/T.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/T.m -------------------------------------------------------------------------------- /@DQ/acos.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/acos.m -------------------------------------------------------------------------------- /@DQ/conj.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/conj.m -------------------------------------------------------------------------------- /@DQ/cross.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/cross.m -------------------------------------------------------------------------------- /@DQ/crossmatrix4.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/crossmatrix4.m -------------------------------------------------------------------------------- /@DQ/ctranspose.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/ctranspose.m -------------------------------------------------------------------------------- /@DQ/dinv.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/dinv.m -------------------------------------------------------------------------------- /@DQ/disp.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/disp.m -------------------------------------------------------------------------------- /@DQ/dot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/dot.m -------------------------------------------------------------------------------- /@DQ/double.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/double.m -------------------------------------------------------------------------------- /@DQ/eq.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/eq.m -------------------------------------------------------------------------------- /@DQ/exp.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/exp.m -------------------------------------------------------------------------------- /@DQ/inv.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/inv.m -------------------------------------------------------------------------------- /@DQ/is_line.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_line.m -------------------------------------------------------------------------------- /@DQ/is_plane.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_plane.m -------------------------------------------------------------------------------- /@DQ/is_pure.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_pure.m -------------------------------------------------------------------------------- /@DQ/is_pure_quaternion.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_pure_quaternion.m -------------------------------------------------------------------------------- /@DQ/is_quaternion.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_quaternion.m -------------------------------------------------------------------------------- /@DQ/is_real.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_real.m -------------------------------------------------------------------------------- /@DQ/is_real_number.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_real_number.m -------------------------------------------------------------------------------- /@DQ/is_unit.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/is_unit.m -------------------------------------------------------------------------------- /@DQ/ldivide.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/ldivide.m -------------------------------------------------------------------------------- /@DQ/log.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/log.m -------------------------------------------------------------------------------- /@DQ/logical.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/logical.m -------------------------------------------------------------------------------- /@DQ/minus.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/minus.m -------------------------------------------------------------------------------- /@DQ/mldivide.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/mldivide.m -------------------------------------------------------------------------------- /@DQ/mpower.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/mpower.m -------------------------------------------------------------------------------- /@DQ/mrdivide.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/mrdivide.m -------------------------------------------------------------------------------- /@DQ/mtimes.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/mtimes.m -------------------------------------------------------------------------------- /@DQ/ne.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/ne.m -------------------------------------------------------------------------------- /@DQ/norm.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/norm.m -------------------------------------------------------------------------------- /@DQ/normalize.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/normalize.m -------------------------------------------------------------------------------- /@DQ/plot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/plot.m -------------------------------------------------------------------------------- /@DQ/plus.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/plus.m -------------------------------------------------------------------------------- /@DQ/rdivide.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/rdivide.m -------------------------------------------------------------------------------- /@DQ/rotation.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/rotation.m -------------------------------------------------------------------------------- /@DQ/rotation_angle.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/rotation_angle.m -------------------------------------------------------------------------------- /@DQ/rotation_axis.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/rotation_axis.m -------------------------------------------------------------------------------- /@DQ/sharp.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/sharp.m -------------------------------------------------------------------------------- /@DQ/times.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/times.m -------------------------------------------------------------------------------- /@DQ/translation.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/translation.m -------------------------------------------------------------------------------- /@DQ/transpose.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/transpose.m -------------------------------------------------------------------------------- /@DQ/uminus.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/@DQ/uminus.m -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/README.md -------------------------------------------------------------------------------- /robot_control/ControlObjective.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/ControlObjective.m -------------------------------------------------------------------------------- /robot_control/DQ_ClassicQPController.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/DQ_ClassicQPController.m -------------------------------------------------------------------------------- /robot_control/DQ_KinematicConstrainedController.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/DQ_KinematicConstrainedController.m -------------------------------------------------------------------------------- /robot_control/DQ_KinematicController.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/DQ_KinematicController.m -------------------------------------------------------------------------------- /robot_control/DQ_PseudoinverseController.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/DQ_PseudoinverseController.m -------------------------------------------------------------------------------- /robot_control/DQ_TaskspaceQuadraticProgrammingController.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/DQ_TaskspaceQuadraticProgrammingController.m -------------------------------------------------------------------------------- /robot_control/solvers/DQ_QuadprogSolver.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/solvers/DQ_QuadprogSolver.m -------------------------------------------------------------------------------- /robot_control/solvers/DQ_QuadraticProgramSolver.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_control/solvers/DQ_QuadraticProgramSolver.m -------------------------------------------------------------------------------- /robot_modeling/DQ_CooperativeDualTaskSpace.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_CooperativeDualTaskSpace.m -------------------------------------------------------------------------------- /robot_modeling/DQ_DifferentialDriveRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_DifferentialDriveRobot.m -------------------------------------------------------------------------------- /robot_modeling/DQ_FreeFlyingRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_FreeFlyingRobot.m -------------------------------------------------------------------------------- /robot_modeling/DQ_HolonomicBase.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_HolonomicBase.m -------------------------------------------------------------------------------- /robot_modeling/DQ_JointType.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_JointType.m -------------------------------------------------------------------------------- /robot_modeling/DQ_Kinematics.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_Kinematics.m -------------------------------------------------------------------------------- /robot_modeling/DQ_MobileBase.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_MobileBase.m -------------------------------------------------------------------------------- /robot_modeling/DQ_ParameterDH.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_ParameterDH.m -------------------------------------------------------------------------------- /robot_modeling/DQ_SerialManipulator.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_SerialManipulator.m -------------------------------------------------------------------------------- /robot_modeling/DQ_SerialManipulatorDH.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_SerialManipulatorDH.m -------------------------------------------------------------------------------- /robot_modeling/DQ_SerialManipulatorMDH.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_SerialManipulatorMDH.m -------------------------------------------------------------------------------- /robot_modeling/DQ_SerialWholeBody.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_SerialWholeBody.m -------------------------------------------------------------------------------- /robot_modeling/DQ_WholeBody.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robot_modeling/DQ_WholeBody.m -------------------------------------------------------------------------------- /robots/Ax18ManipulatorRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/Ax18ManipulatorRobot.m -------------------------------------------------------------------------------- /robots/BarrettWamArmRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/BarrettWamArmRobot.m -------------------------------------------------------------------------------- /robots/ComauSmartSixRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/ComauSmartSixRobot.m -------------------------------------------------------------------------------- /robots/FrankaEmikaPandaRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/FrankaEmikaPandaRobot.m -------------------------------------------------------------------------------- /robots/FreeFlyingRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/FreeFlyingRobot.m -------------------------------------------------------------------------------- /robots/KukaLwr4Robot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/KukaLwr4Robot.m -------------------------------------------------------------------------------- /robots/KukaYoubot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/KukaYoubot.m -------------------------------------------------------------------------------- /robots/LittleJohnRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/LittleJohnRobot.m -------------------------------------------------------------------------------- /robots/RoombaCreateRobot.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/robots/RoombaCreateRobot.m -------------------------------------------------------------------------------- /utils/DQ_Geometry.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/utils/DQ_Geometry.m -------------------------------------------------------------------------------- /utils/include_namespace_dq.m: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dqrobotics/matlab/HEAD/utils/include_namespace_dq.m --------------------------------------------------------------------------------