mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-06-27 21:50:34 +08:00
Features and fixes
* added the trace function for a SquareMatrix * added Vector3.hat() and it's counterpart Dcm.vee() for skewsymskew symmetric matrix operations in relation to the cross product see https://en.wikipedia.org/wiki/Hat_operator * Matrix::write_string produced runtime errors when I used it in PX4 posix simulation, i simplified it * a Matrix3f is a SquareMatrix * added tests for SquareMatrix.trace, Vector3.hat and Dcm.vee * added a test for quaternion initialisation from array * preventing buffer overflows in Matrix.write_string method
This commit is contained in:
committed by
James Goppert
parent
07fba8322a
commit
65679fbcbb
@@ -0,0 +1,23 @@
|
||||
#include <stdio.h>
|
||||
#include "test_macros.hpp"
|
||||
|
||||
#include <matrix/math.hpp>
|
||||
|
||||
using namespace matrix;
|
||||
|
||||
template class SquareMatrix<float, 3>;
|
||||
|
||||
int main()
|
||||
{
|
||||
Euler<float> euler(0.1f, 0.2f, 0.3f);
|
||||
Dcm<float> R(euler);
|
||||
Dcm<float> skew = R - R.T();
|
||||
Vector3<float> w = skew.vee();
|
||||
Vector3<float> w_check(0.1348f, 0.4170f, 0.5647f);
|
||||
|
||||
TEST(isEqual(w, w_check));
|
||||
TEST(isEqual(skew, w.hat()));
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* vim: set et fenc=utf-8 ff=unix sts=0 sw=4 ts=4 : */
|
||||
Reference in New Issue
Block a user