ardupilot/libraries/AP_Math
Gustavo Jose de Sousa c7eb46fae2 AP_Math: AP_GeodesicGrid: optimize _from_neighbor_umbrella()
This is the second optimization. With that we don't have to iterate over the
umbrella's components.

The table below summarizes the mean CPU time in ns from the brenchmark results
on an Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz processor:

       | Naive implementation | First Optimization | Second Optimization
------------------------------------------------------------------------
Min.   |                 26.0 |              28.00 |                26.0
1st Qu.|                 78.0 |              48.75 |                39.0
Median |                132.0 |              57.00 |                41.0
Mean   |                130.1 |              61.20 |                41.6
3rd Qu.|                182.2 |              76.00 |                47.0
Max.   |                234.0 |              98.00 |                54.0
2016-05-16 19:08:36 -03:00
..
benchmarks AP_Math: benchmark_geodesic_grid: add benchmark 2016-05-16 19:08:36 -03:00
examples AP_Math: added from_axis_angle() method on Matrix3f 2016-04-22 10:28:15 +10:00
tests AP_Math: test_geodesic_grid: test triangles indexes 2016-05-16 19:08:36 -03:00
AP_GeodesicGrid.cpp AP_Math: AP_GeodesicGrid: optimize _from_neighbor_umbrella() 2016-05-16 19:08:36 -03:00
AP_GeodesicGrid.h AP_Math: AP_GeodesicGrid: optimize _from_neighbor_umbrella() 2016-05-16 19:08:36 -03:00
AP_Math.cpp AP_Math: Fix typos 2016-05-13 19:20:06 -03:00
AP_Math.h AP_Math: Replace is_zero() with a template function 2016-05-16 19:08:35 -03:00
definitions.h AP_Math: define golden ratio constant 2016-05-16 19:08:35 -03:00
edc.cpp AP_Math: Fix typos 2016-05-13 19:20:06 -03:00
edc.h AP_Math: stop using Progmem.h 2015-12-27 15:58:12 -02:00
keywords.txt Beginnings of a math library for ArduPilot(Mega) systems. 2010-09-08 08:21:46 +00:00
location.cpp AP_Math: Fix typos 2016-05-13 19:20:06 -03:00
location.h AP_Math: add location sanity checker/fixer util 2016-03-02 08:48:26 -08:00
matrix3.cpp AP_Math: Matrix3: add inverse() and invert() functions 2016-05-16 19:08:35 -03:00
matrix3.h AP_Math: Matrix3: add inverse() and invert() functions 2016-05-16 19:08:35 -03:00
matrix_alg.cpp AP_Math: Fix typos 2016-05-13 19:20:06 -03:00
polygon.cpp uncrustify libraries/AP_Math/polygon.cpp 2012-08-21 19:03:34 -07:00
polygon.h AP_Math: reorganize headers 2016-05-10 11:41:26 -03:00
quaternion.cpp AP_Math: quaternion: fix style 2016-05-10 16:16:37 +10:00
quaternion.h AP_Math: quaternion: fix style 2016-05-10 16:16:37 +10:00
rotations.h AP_Math: reorganize headers 2016-05-10 11:41:26 -03:00
vector2.cpp AP_Math: Replace the pythagorous* functions with a variadic template 2016-05-10 11:41:26 -03:00
vector2.h Global: start using cmath instead of math.h 2016-04-05 21:06:19 -07:00
vector3.cpp AP_Math: Replace the pythagorous* functions with a variadic template 2016-05-10 11:41:26 -03:00
vector3.h AP_Math: Fix typos 2016-05-13 19:20:06 -03:00
vectorN.h AP_Math: remove trailing whitespace on headers 2016-05-10 11:41:26 -03:00