83 {
+
84
+
85 double initial_velocity = 5.0;
+
86 double angle = 40.0;
+
87
+
88
+
89 double expected_time_of_flight = 0.655;
+
90 double flight_time_output =
+
91 std::round(physics::ground_to_ground_projectile_motion::time_of_flight(initial_velocity, angle) * 1000.0) /
+
92 1000.0;
+
93
+
+
+
+
+
+
99 assert(flight_time_output == expected_time_of_flight);
+
+
101
+
102
+
103 double expected_horizontal_range = 2.51;
+
104 double horizontal_range_output =
+
105 std::round(physics::ground_to_ground_projectile_motion::horizontal_range(initial_velocity, angle,
+
106 flight_time_output) *
+
107 100.0) /
+
108 100.0;
+
109
+
+
+
+
+
+
+
116 assert(horizontal_range_output == expected_horizontal_range);
+
+
118
+
119
+
120 double expected_max_height = 0.526;
+
121 double max_height_output =
+
122 std::round(physics::ground_to_ground_projectile_motion::max_height(initial_velocity, angle) * 1000.0) /
+
123 1000.0;
+
124
+
+
+
+
+
+
130 assert(max_height_output == expected_max_height);
+
+
132}
@@ -451,10 +455,10 @@ template<typename T >
diff --git a/globals_defs.html b/globals_defs.html
index 21aad3a4b..d781a6c41 100644
--- a/globals_defs.html
+++ b/globals_defs.html
@@ -106,7 +106,7 @@ $(function(){initNavTree('globals_defs.html',''); initResizable(true); });
Here is a list of all documented macros with links to the documentation:
- _target : ternary_search.cpp
-- _USE_MATH_DEFINES : spirograph.cpp, brent_method_extrema.cpp
+- _USE_MATH_DEFINES : spirograph.cpp, brent_method_extrema.cpp, ground_to_ground_projectile_motion.cpp
- absolutePrecision : ternary_search.cpp
- ACCURACY : durand_kerner_roots.cpp
- APLHABET_SIZE : boyer_moore.cpp
diff --git a/navtreedata.js b/navtreedata.js
index 38e23abab..61fbd66cd 100644
--- a/navtreedata.js
+++ b/navtreedata.js
@@ -146,11 +146,11 @@ var NAVTREEINDEX =
"d6/d60/group__ode.html#ga827bf009831ddc477c5fa8891d5cb35f",
"d8/d28/classrange__queries_1_1per_seg_tree.html#a8ff495d2f389b4aaa54449c26c6078f3",
"d8/df0/queue__using__array_8cpp.html#a2d49e79bd164c298912db252970520d8",
-"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a0c8cbe7239232863f104793c08273039",
-"db/d82/classlarge__number.html#abbd52948bee1b16543f1dae19aa9dd46",
+"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html",
+"db/d82/classlarge__number.html#ab84f29685709cbb3b6fd29b7b4a7bc7b",
"dc/dd4/classdata__structures_1_1_bloom_filter.html#a65ca6742d3be88d4aca4f080068a7a80",
-"dd/db0/_2_users_2runner_2work_2_c-_plus-_plus_2_c-_plus-_plus_2sorting_2wiggle_sort_8cpp-example.html",
-"df/d66/vector__cross__product_8cpp.html#a4b2a9757a87c18e1642d72410ecfaba8"
+"dd/dae/namespacecount__of__set__bits.html",
+"df/d66/vector__cross__product_8cpp.html#a225732399c5c076976eae5b180a9f8c9"
];
var SYNCONMSG = 'click to disable panel synchronisation';
diff --git a/navtreeindex10.js b/navtreeindex10.js
index f885336cb..cd6066bbe 100644
--- a/navtreeindex10.js
+++ b/navtreeindex10.js
@@ -1,5 +1,6 @@
var NAVTREEINDEX10 =
{
+"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html":[10,0,2,3,0],
"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a0c8cbe7239232863f104793c08273039":[10,0,2,3,0,0],
"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#a6cf72f93b1551f0d943c585b4f173be3":[10,0,2,3,0,2],
"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html#ab78620742305a35ff2f8d61179f47d3e":[10,0,2,3,0,1],
@@ -248,6 +249,5 @@ var NAVTREEINDEX10 =
"db/d82/classlarge__number.html#a8c381aa1ecc960cefd82ec72f59e0e08":[10,0,37,13],
"db/d82/classlarge__number.html#a8d4364ee5a62964451d8cfee82649687":[10,0,37,10],
"db/d82/classlarge__number.html#a959c5c1a982949bbf98e1ea0f9afe6a9":[10,0,37,14],
-"db/d82/classlarge__number.html#aab5644405094740e34983cedfecb36cf":[10,0,37,11],
-"db/d82/classlarge__number.html#ab84f29685709cbb3b6fd29b7b4a7bc7b":[10,0,37,12]
+"db/d82/classlarge__number.html#aab5644405094740e34983cedfecb36cf":[10,0,37,11]
};
diff --git a/navtreeindex11.js b/navtreeindex11.js
index b1b37190a..d56d245c1 100644
--- a/navtreeindex11.js
+++ b/navtreeindex11.js
@@ -1,5 +1,6 @@
var NAVTREEINDEX11 =
{
+"db/d82/classlarge__number.html#ab84f29685709cbb3b6fd29b7b4a7bc7b":[10,0,37,12],
"db/d82/classlarge__number.html#abbd52948bee1b16543f1dae19aa9dd46":[10,0,37,16],
"db/d82/classlarge__number.html#ac09a05ec4aafb4d9e0b4440d6f0e2a93":[10,0,37,7],
"db/d82/classlarge__number.html#ae35a55607cf52c0b0d485f2129bd39ac":[10,0,37,5],
@@ -248,6 +249,5 @@ var NAVTREEINDEX11 =
"dc/dd4/classdata__structures_1_1_bloom_filter.html":[9,0,20,2],
"dc/dd4/classdata__structures_1_1_bloom_filter.html":[10,0,2,9],
"dc/dd4/classdata__structures_1_1_bloom_filter.html#a576db259488dbfb67624a9652a5ab08b":[9,0,20,2,2],
-"dc/dd4/classdata__structures_1_1_bloom_filter.html#a576db259488dbfb67624a9652a5ab08b":[10,0,2,9,2],
-"dc/dd4/classdata__structures_1_1_bloom_filter.html#a65ca6742d3be88d4aca4f080068a7a80":[9,0,20,2,3]
+"dc/dd4/classdata__structures_1_1_bloom_filter.html#a576db259488dbfb67624a9652a5ab08b":[10,0,2,9,2]
};
diff --git a/navtreeindex12.js b/navtreeindex12.js
index 6dbedd1cd..86f4bd1d8 100644
--- a/navtreeindex12.js
+++ b/navtreeindex12.js
@@ -1,5 +1,6 @@
var NAVTREEINDEX12 =
{
+"dc/dd4/classdata__structures_1_1_bloom_filter.html#a65ca6742d3be88d4aca4f080068a7a80":[9,0,20,2,3],
"dc/dd4/classdata__structures_1_1_bloom_filter.html#a65ca6742d3be88d4aca4f080068a7a80":[10,0,2,9,3],
"dc/dd4/classdata__structures_1_1_bloom_filter.html#a67bed8ef62fcb1f33b6c72df47dcf840":[9,0,20,2,1],
"dc/dd4/classdata__structures_1_1_bloom_filter.html#a67bed8ef62fcb1f33b6c72df47dcf840":[10,0,2,9,1],
@@ -248,6 +249,5 @@ var NAVTREEINDEX12 =
"dd/da8/pigeonhole__sort_8cpp.html#a34b8683a2b429de5cce57e6d733ec817":[11,0,22,14,2],
"dd/da8/pigeonhole__sort_8cpp.html#a458410412185a5f09199deaff7157a8d":[11,0,22,14,3],
"dd/da8/pigeonhole__sort_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,22,14,0],
-"dd/da8/pigeonhole__sort_8cpp.html#af31ec5409537703d9c8a47350386b32a":[11,0,22,14,4],
-"dd/dae/namespacecount__of__set__bits.html":[9,0,15]
+"dd/da8/pigeonhole__sort_8cpp.html#af31ec5409537703d9c8a47350386b32a":[11,0,22,14,4]
};
diff --git a/navtreeindex13.js b/navtreeindex13.js
index d282495de..c34caeb32 100644
--- a/navtreeindex13.js
+++ b/navtreeindex13.js
@@ -1,5 +1,6 @@
var NAVTREEINDEX13 =
{
+"dd/dae/namespacecount__of__set__bits.html":[9,0,15],
"dd/db0/_2_users_2runner_2work_2_c-_plus-_plus_2_c-_plus-_plus_2sorting_2wiggle_sort_8cpp-example.html":[12,4],
"dd/db6/structbinary__search__tree_1_1bst__node.html":[10,0,21,0],
"dd/db6/structbinary__search__tree_1_1bst__node.html#a05f3a7aa6c31622f855ce4b5a95e91df":[10,0,21,0,2],
@@ -248,6 +249,5 @@ var NAVTREEINDEX13 =
"df/d47/stack_8hpp.html":[11,0,4,20],
"df/d47/stack_8hpp_source.html":[11,0,4,20],
"df/d4a/namespaceselection__sort__recursive.html":[9,0,102],
-"df/d66/vector__cross__product_8cpp.html":[11,0,14,56],
-"df/d66/vector__cross__product_8cpp.html#a225732399c5c076976eae5b180a9f8c9":[11,0,14,56,0]
+"df/d66/vector__cross__product_8cpp.html":[11,0,14,56]
};
diff --git a/navtreeindex14.js b/navtreeindex14.js
index 705847e89..ac3285645 100644
--- a/navtreeindex14.js
+++ b/navtreeindex14.js
@@ -1,5 +1,6 @@
var NAVTREEINDEX14 =
{
+"df/d66/vector__cross__product_8cpp.html#a225732399c5c076976eae5b180a9f8c9":[11,0,14,56,0],
"df/d66/vector__cross__product_8cpp.html#a4b2a9757a87c18e1642d72410ecfaba8":[11,0,14,56,1],
"df/d66/vector__cross__product_8cpp.html#aa8dca7b867074164d5f45b0f3851269d":[11,0,14,56,3],
"df/d66/vector__cross__product_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,14,56,2],
diff --git a/navtreeindex9.js b/navtreeindex9.js
index 228b2f07e..ca2155c40 100644
--- a/navtreeindex9.js
+++ b/navtreeindex9.js
@@ -63,12 +63,13 @@ var NAVTREEINDEX9 =
"d9/d24/poisson__dist_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,19,4,1],
"d9/d27/namespacelist__array.html":[9,0,60],
"d9/d29/ground__to__ground__projectile__motion_8cpp.html":[11,0,18,0],
-"d9/d29/ground__to__ground__projectile__motion_8cpp.html#a10362eb607d7882bac3a0688504b00ff":[11,0,18,0,1],
-"d9/d29/ground__to__ground__projectile__motion_8cpp.html#a563e066975fed1b84750a0a47c3cbb37":[11,0,18,0,5],
-"d9/d29/ground__to__ground__projectile__motion_8cpp.html#aa554429def63077ab7a550c0affbfefa":[11,0,18,0,3],
-"d9/d29/ground__to__ground__projectile__motion_8cpp.html#aa8dca7b867074164d5f45b0f3851269d":[11,0,18,0,4],
-"d9/d29/ground__to__ground__projectile__motion_8cpp.html#aba1d26faf6a5379c28cae458956241de":[11,0,18,0,0],
-"d9/d29/ground__to__ground__projectile__motion_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,18,0,2],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#a10362eb607d7882bac3a0688504b00ff":[11,0,18,0,2],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#a525335710b53cb064ca56b936120431e":[11,0,18,0,0],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#a563e066975fed1b84750a0a47c3cbb37":[11,0,18,0,6],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#aa554429def63077ab7a550c0affbfefa":[11,0,18,0,4],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#aa8dca7b867074164d5f45b0f3851269d":[11,0,18,0,5],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#ab00e9785fb2670f7af99d6f3d636f87c":[11,0,18,0,1],
+"d9/d29/ground__to__ground__projectile__motion_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,18,0,3],
"d9/d31/coin__change__topdown_8cpp.html":[11,0,6,4],
"d9/d31/coin__change__topdown_8cpp.html#aa8dca7b867074164d5f45b0f3851269d":[11,0,6,4,2],
"d9/d31/coin__change__topdown_8cpp.html#ac816a4ae8a29c156b90377041000929a":[11,0,6,4,1],
@@ -248,6 +249,5 @@ var NAVTREEINDEX9 =
"da/d23/eulers__totient__function_8cpp.html#ac37d3ba52eb296597d7a024ba8c4a5a5":[11,0,14,11,1],
"da/d24/sqrt__double_8cpp.html":[11,0,14,52],
"da/d24/sqrt__double_8cpp.html#ae662282ad0740d2063ac404ca3bd74fc":[11,0,14,52,1],
-"da/d24/sqrt__double_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,14,52,0],
-"da/d37/structdata__structures_1_1sparse__table_1_1_sparse__table.html":[10,0,2,3,0]
+"da/d24/sqrt__double_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4":[11,0,14,52,0]
};
diff --git a/search/all_5.js b/search/all_5.js
index efaa9a0eb..84d2ed951 100644
--- a/search/all_5.js
+++ b/search/all_5.js
@@ -15,7 +15,7 @@ var searchData=
['_5fsortedvalues_12',['_sortedValues',['../df/d34/classprobability_1_1windowed__median_1_1_windowed_median.html#aacd76f078632faee1a8788d031e6c2de',1,'probability::windowed_median::WindowedMedian']]],
['_5ftarget_13',['_target',['../dc/dfe/ternary__search_8cpp.html#a23ad617bfce1e7cf4591059c85c1a027',1,'ternary_search.cpp']]],
['_5ftrz_14',['_trz',['../db/d9a/classuint128__t.html#a7d2285a8a6e20b77f82f1f0351afe76e',1,'uint128_t::_trz()'],['../d1/d83/classuint256__t.html#a9ddd133cee83f3a2ab6ed60a7ccbc250',1,'uint256_t::_trz()']]],
- ['_5fuse_5fmath_5fdefines_15',['_USE_MATH_DEFINES',['../da/d77/spirograph_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: spirograph.cpp'],['../db/d01/brent__method__extrema_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: brent_method_extrema.cpp']]],
+ ['_5fuse_5fmath_5fdefines_15',['_USE_MATH_DEFINES',['../da/d77/spirograph_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: spirograph.cpp'],['../db/d01/brent__method__extrema_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: brent_method_extrema.cpp'],['../d9/d29/ground__to__ground__projectile__motion_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: ground_to_ground_projectile_motion.cpp']]],
['_5fwindow_16',['_window',['../df/d34/classprobability_1_1windowed__median_1_1_windowed_median.html#a825a7aaef844c9f743a27b268e8569b2',1,'probability::windowed_median::WindowedMedian']]],
['_5fwindowsize_17',['_windowSize',['../df/d34/classprobability_1_1windowed__median_1_1_windowed_median.html#aafda847b152684578dab891e5268d750',1,'probability::windowed_median::WindowedMedian']]]
];
diff --git a/search/all_9.js b/search/all_9.js
index ab05a7927..69ca3c4b6 100644
--- a/search/all_9.js
+++ b/search/all_9.js
@@ -28,7 +28,7 @@ var searchData=
['default_5frandom_5fengine_25',['default_random_engine',['http://en.cppreference.com/w/cpp/numeric/random.html',0,'std']]],
['defaultfloat_26',['defaultfloat',['http://en.cppreference.com/w/cpp/io/manip/fixed.html',0,'std']]],
['defer_5flock_5ft_27',['defer_lock_t',['http://en.cppreference.com/w/cpp/thread/lock_tag_t.html',0,'std']]],
- ['degrees_5fto_5fradians_28',['degrees_to_radians',['../d9/d29/ground__to__ground__projectile__motion_8cpp.html#aba1d26faf6a5379c28cae458956241de',1,'physics::ground_to_ground_projectile_motion']]],
+ ['degrees_5fto_5fradians_28',['degrees_to_radians',['../d9/d29/ground__to__ground__projectile__motion_8cpp.html#ab00e9785fb2670f7af99d6f3d636f87c',1,'physics::ground_to_ground_projectile_motion']]],
['delete_29',['Delete',['../d0/d5f/classoperations__on__datastructures_1_1trie__operations_1_1_tnode.html#aefd24626ac47277431c9b8604e064340',1,'operations_on_datastructures::trie_operations::Tnode']]],
['delete_5fall_5fnodes_30',['delete_all_nodes',['../d1/def/classdata__structures_1_1linked__list_1_1list.html#ac614ed8f1953f5486fab1cd6d7aa0500',1,'data_structures::linked_list::list']]],
['delete_5fword_31',['delete_word',['../d3/d26/classdata__structures_1_1trie__using__hashmap_1_1_trie.html#ac0bf3d6791cba144b3f539835d835e75',1,'data_structures::trie_using_hashmap::Trie']]],
diff --git a/search/defines_0.js b/search/defines_0.js
index dcee04fce..fd1001051 100644
--- a/search/defines_0.js
+++ b/search/defines_0.js
@@ -1,5 +1,5 @@
var searchData=
[
['_5ftarget_0',['_target',['../dc/dfe/ternary__search_8cpp.html#a23ad617bfce1e7cf4591059c85c1a027',1,'ternary_search.cpp']]],
- ['_5fuse_5fmath_5fdefines_1',['_USE_MATH_DEFINES',['../da/d77/spirograph_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: spirograph.cpp'],['../db/d01/brent__method__extrema_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: brent_method_extrema.cpp']]]
+ ['_5fuse_5fmath_5fdefines_1',['_USE_MATH_DEFINES',['../da/d77/spirograph_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: spirograph.cpp'],['../db/d01/brent__method__extrema_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: brent_method_extrema.cpp'],['../d9/d29/ground__to__ground__projectile__motion_8cpp.html#a525335710b53cb064ca56b936120431e',1,'_USE_MATH_DEFINES: ground_to_ground_projectile_motion.cpp']]]
];
diff --git a/search/functions_4.js b/search/functions_4.js
index 625541c40..37e02fc54 100644
--- a/search/functions_4.js
+++ b/search/functions_4.js
@@ -14,7 +14,7 @@ var searchData=
['default_5fdelete_11',['default_delete',['http://en.cppreference.com/w/cpp/memory/default_delete.html',0,'std::default_delete']]],
['default_5ferror_5fcondition_12',['default_error_condition',['http://en.cppreference.com/w/cpp/error/error_code/default_error_condition.html',0,'std::error_code::default_error_condition()'],['http://en.cppreference.com/w/cpp/error/error_category/default_error_condition.html',0,'std::error_category::default_error_condition()']]],
['defaultfloat_13',['defaultfloat',['http://en.cppreference.com/w/cpp/io/manip/fixed.html',0,'std']]],
- ['degrees_5fto_5fradians_14',['degrees_to_radians',['../d9/d29/ground__to__ground__projectile__motion_8cpp.html#aba1d26faf6a5379c28cae458956241de',1,'physics::ground_to_ground_projectile_motion']]],
+ ['degrees_5fto_5fradians_14',['degrees_to_radians',['../d9/d29/ground__to__ground__projectile__motion_8cpp.html#ab00e9785fb2670f7af99d6f3d636f87c',1,'physics::ground_to_ground_projectile_motion']]],
['delete_15',['Delete',['../d0/d5f/classoperations__on__datastructures_1_1trie__operations_1_1_tnode.html#aefd24626ac47277431c9b8604e064340',1,'operations_on_datastructures::trie_operations::Tnode']]],
['delete_5fall_5fnodes_16',['delete_all_nodes',['../d1/def/classdata__structures_1_1linked__list_1_1list.html#ac614ed8f1953f5486fab1cd6d7aa0500',1,'data_structures::linked_list::list']]],
['delete_5fword_17',['delete_word',['../d3/d26/classdata__structures_1_1trie__using__hashmap_1_1_trie.html#ac0bf3d6791cba144b3f539835d835e75',1,'data_structures::trie_using_hashmap::Trie']]],