boost.cxx 0.0.2 → 1.90.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/README.md +29 -2
  2. package/boost/cast.hpp +20 -0
  3. package/boost/numeric/conversion/bounds.hpp +24 -0
  4. package/boost/numeric/conversion/cast.hpp +61 -0
  5. package/boost/numeric/conversion/conversion_traits.hpp +32 -0
  6. package/boost/numeric/conversion/converter.hpp +68 -0
  7. package/boost/numeric/conversion/converter_policies.hpp +194 -0
  8. package/boost/numeric/conversion/detail/bounds.hpp +58 -0
  9. package/boost/numeric/conversion/detail/conversion_traits.hpp +97 -0
  10. package/boost/numeric/conversion/detail/converter.hpp +593 -0
  11. package/boost/numeric/conversion/detail/int_float_mixture.hpp +72 -0
  12. package/boost/numeric/conversion/detail/is_subranged.hpp +234 -0
  13. package/boost/numeric/conversion/detail/meta.hpp +120 -0
  14. package/boost/numeric/conversion/detail/numeric_cast_traits.hpp +138 -0
  15. package/boost/numeric/conversion/detail/old_numeric_cast.hpp +308 -0
  16. package/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_common.hpp +1741 -0
  17. package/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_long_long.hpp +347 -0
  18. package/boost/numeric/conversion/detail/sign_mixture.hpp +72 -0
  19. package/boost/numeric/conversion/detail/udt_builtin_mixture.hpp +69 -0
  20. package/boost/numeric/conversion/int_float_mixture.hpp +30 -0
  21. package/boost/numeric/conversion/int_float_mixture_enum.hpp +29 -0
  22. package/boost/numeric/conversion/is_subranged.hpp +27 -0
  23. package/boost/numeric/conversion/numeric_cast_traits.hpp +31 -0
  24. package/boost/numeric/conversion/sign_mixture.hpp +30 -0
  25. package/boost/numeric/conversion/sign_mixture_enum.hpp +29 -0
  26. package/boost/numeric/conversion/udt_builtin_mixture.hpp +28 -0
  27. package/boost/numeric/conversion/udt_builtin_mixture_enum.hpp +26 -0
  28. package/boost/numeric/interval/arith.hpp +305 -0
  29. package/boost/numeric/interval/arith2.hpp +304 -0
  30. package/boost/numeric/interval/arith3.hpp +69 -0
  31. package/boost/numeric/interval/checking.hpp +130 -0
  32. package/boost/numeric/interval/compare/certain.hpp +113 -0
  33. package/boost/numeric/interval/compare/explicit.hpp +248 -0
  34. package/boost/numeric/interval/compare/lexicographic.hpp +122 -0
  35. package/boost/numeric/interval/compare/possible.hpp +113 -0
  36. package/boost/numeric/interval/compare/set.hpp +101 -0
  37. package/boost/numeric/interval/compare/tribool.hpp +138 -0
  38. package/boost/numeric/interval/compare.hpp +19 -0
  39. package/boost/numeric/interval/constants.hpp +85 -0
  40. package/boost/numeric/interval/detail/alpha_rounding_control.hpp +113 -0
  41. package/boost/numeric/interval/detail/bcc_rounding_control.hpp +57 -0
  42. package/boost/numeric/interval/detail/bugs.hpp +48 -0
  43. package/boost/numeric/interval/detail/c99_rounding_control.hpp +50 -0
  44. package/boost/numeric/interval/detail/c99sub_rounding_control.hpp +43 -0
  45. package/boost/numeric/interval/detail/division.hpp +194 -0
  46. package/boost/numeric/interval/detail/ia64_rounding_control.hpp +83 -0
  47. package/boost/numeric/interval/detail/interval_prototype.hpp +41 -0
  48. package/boost/numeric/interval/detail/msvc_rounding_control.hpp +113 -0
  49. package/boost/numeric/interval/detail/ppc_rounding_control.hpp +99 -0
  50. package/boost/numeric/interval/detail/sparc_rounding_control.hpp +112 -0
  51. package/boost/numeric/interval/detail/test_input.hpp +76 -0
  52. package/boost/numeric/interval/detail/x86_rounding_control.hpp +108 -0
  53. package/boost/numeric/interval/detail/x86gcc_rounding_control.hpp +51 -0
  54. package/boost/numeric/interval/ext/integer.hpp +70 -0
  55. package/boost/numeric/interval/ext/x86_fast_rounding_control.hpp +70 -0
  56. package/boost/numeric/interval/hw_rounding.hpp +73 -0
  57. package/boost/numeric/interval/interval.hpp +450 -0
  58. package/boost/numeric/interval/io.hpp +41 -0
  59. package/boost/numeric/interval/limits.hpp +49 -0
  60. package/boost/numeric/interval/policies.hpp +75 -0
  61. package/boost/numeric/interval/rounded_arith.hpp +120 -0
  62. package/boost/numeric/interval/rounded_transc.hpp +140 -0
  63. package/boost/numeric/interval/rounding.hpp +101 -0
  64. package/boost/numeric/interval/transc.hpp +232 -0
  65. package/boost/numeric/interval/utility.hpp +335 -0
  66. package/boost/numeric/interval/utility_fwd.hpp +172 -0
  67. package/boost/numeric/interval.hpp +32 -0
  68. package/boost/numeric/odeint/algebra/algebra_dispatcher.hpp +86 -0
  69. package/boost/numeric/odeint/algebra/array_algebra.hpp +293 -0
  70. package/boost/numeric/odeint/algebra/default_operations.hpp +599 -0
  71. package/boost/numeric/odeint/algebra/detail/extract_value_type.hpp +51 -0
  72. package/boost/numeric/odeint/algebra/detail/for_each.hpp +165 -0
  73. package/boost/numeric/odeint/algebra/detail/macros.hpp +35 -0
  74. package/boost/numeric/odeint/algebra/detail/norm_inf.hpp +46 -0
  75. package/boost/numeric/odeint/algebra/fusion_algebra.hpp +216 -0
  76. package/boost/numeric/odeint/algebra/fusion_algebra_dispatcher.hpp +48 -0
  77. package/boost/numeric/odeint/algebra/multi_array_algebra.hpp +146 -0
  78. package/boost/numeric/odeint/algebra/norm_result_type.hpp +33 -0
  79. package/boost/numeric/odeint/algebra/operations_dispatcher.hpp +41 -0
  80. package/boost/numeric/odeint/algebra/range_algebra.hpp +142 -0
  81. package/boost/numeric/odeint/algebra/vector_space_algebra.hpp +175 -0
  82. package/boost/numeric/odeint/config.hpp +53 -0
  83. package/boost/numeric/odeint/external/blaze/blaze_algebra_dispatcher.hpp +55 -0
  84. package/boost/numeric/odeint/external/blaze/blaze_resize.hpp +64 -0
  85. package/boost/numeric/odeint/external/compute/compute.hpp +27 -0
  86. package/boost/numeric/odeint/external/compute/compute_algebra.hpp +65 -0
  87. package/boost/numeric/odeint/external/compute/compute_algebra_dispatcher.hpp +41 -0
  88. package/boost/numeric/odeint/external/compute/compute_operations.hpp +198 -0
  89. package/boost/numeric/odeint/external/compute/compute_operations_dispatcher.hpp +44 -0
  90. package/boost/numeric/odeint/external/compute/compute_resize.hpp +92 -0
  91. package/boost/numeric/odeint/external/eigen/eigen.hpp +27 -0
  92. package/boost/numeric/odeint/external/eigen/eigen_algebra.hpp +98 -0
  93. package/boost/numeric/odeint/external/eigen/eigen_algebra_dispatcher.hpp +49 -0
  94. package/boost/numeric/odeint/external/eigen/eigen_resize.hpp +103 -0
  95. package/boost/numeric/odeint/external/gsl/gsl_wrapper.hpp +228 -0
  96. package/boost/numeric/odeint/external/mkl/mkl_operations.hpp +181 -0
  97. package/boost/numeric/odeint/external/mpi/mpi.hpp +25 -0
  98. package/boost/numeric/odeint/external/mpi/mpi_nested_algebra.hpp +62 -0
  99. package/boost/numeric/odeint/external/mpi/mpi_state.hpp +113 -0
  100. package/boost/numeric/odeint/external/mpi/mpi_vector_state.hpp +95 -0
  101. package/boost/numeric/odeint/external/mtl4/implicit_euler_mtl4.hpp +161 -0
  102. package/boost/numeric/odeint/external/mtl4/mtl4.hpp +23 -0
  103. package/boost/numeric/odeint/external/mtl4/mtl4_algebra_dispatcher.hpp +99 -0
  104. package/boost/numeric/odeint/external/mtl4/mtl4_resize.hpp +134 -0
  105. package/boost/numeric/odeint/external/nt2/nt2_algebra_dispatcher.hpp +25 -0
  106. package/boost/numeric/odeint/external/nt2/nt2_copy.hpp +33 -0
  107. package/boost/numeric/odeint/external/nt2/nt2_norm_inf.hpp +31 -0
  108. package/boost/numeric/odeint/external/nt2/nt2_resize.hpp +54 -0
  109. package/boost/numeric/odeint/external/openmp/openmp.hpp +31 -0
  110. package/boost/numeric/odeint/external/openmp/openmp_nested_algebra.hpp +281 -0
  111. package/boost/numeric/odeint/external/openmp/openmp_range_algebra.hpp +276 -0
  112. package/boost/numeric/odeint/external/openmp/openmp_state.hpp +172 -0
  113. package/boost/numeric/odeint/external/thrust/thrust.hpp +27 -0
  114. package/boost/numeric/odeint/external/thrust/thrust_algebra.hpp +217 -0
  115. package/boost/numeric/odeint/external/thrust/thrust_algebra_dispatcher.hpp +118 -0
  116. package/boost/numeric/odeint/external/thrust/thrust_operations.hpp +233 -0
  117. package/boost/numeric/odeint/external/thrust/thrust_operations_dispatcher.hpp +118 -0
  118. package/boost/numeric/odeint/external/thrust/thrust_resize.hpp +197 -0
  119. package/boost/numeric/odeint/external/vexcl/vexcl.hpp +28 -0
  120. package/boost/numeric/odeint/external/vexcl/vexcl_abs.hpp +61 -0
  121. package/boost/numeric/odeint/external/vexcl/vexcl_algebra_dispatcher.hpp +51 -0
  122. package/boost/numeric/odeint/external/vexcl/vexcl_copy.hpp +55 -0
  123. package/boost/numeric/odeint/external/vexcl/vexcl_norm_inf.hpp +68 -0
  124. package/boost/numeric/odeint/external/vexcl/vexcl_resize.hpp +96 -0
  125. package/boost/numeric/odeint/external/vexcl/vexcl_same_instance.hpp +58 -0
  126. package/boost/numeric/odeint/external/viennacl/viennacl_operations.hpp +226 -0
  127. package/boost/numeric/odeint/external/viennacl/viennacl_resize.hpp +68 -0
  128. package/boost/numeric/odeint/integrate/check_adapter.hpp +222 -0
  129. package/boost/numeric/odeint/integrate/detail/functors.hpp +70 -0
  130. package/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp +161 -0
  131. package/boost/numeric/odeint/integrate/detail/integrate_const.hpp +167 -0
  132. package/boost/numeric/odeint/integrate/detail/integrate_n_steps.hpp +161 -0
  133. package/boost/numeric/odeint/integrate/detail/integrate_times.hpp +179 -0
  134. package/boost/numeric/odeint/integrate/integrate.hpp +133 -0
  135. package/boost/numeric/odeint/integrate/integrate_adaptive.hpp +127 -0
  136. package/boost/numeric/odeint/integrate/integrate_const.hpp +195 -0
  137. package/boost/numeric/odeint/integrate/integrate_n_steps.hpp +178 -0
  138. package/boost/numeric/odeint/integrate/integrate_times.hpp +220 -0
  139. package/boost/numeric/odeint/integrate/max_step_checker.hpp +114 -0
  140. package/boost/numeric/odeint/integrate/null_observer.hpp +38 -0
  141. package/boost/numeric/odeint/integrate/observer_collection.hpp +55 -0
  142. package/boost/numeric/odeint/iterator/adaptive_iterator.hpp +183 -0
  143. package/boost/numeric/odeint/iterator/adaptive_time_iterator.hpp +175 -0
  144. package/boost/numeric/odeint/iterator/const_step_iterator.hpp +180 -0
  145. package/boost/numeric/odeint/iterator/const_step_time_iterator.hpp +173 -0
  146. package/boost/numeric/odeint/iterator/detail/ode_iterator_base.hpp +199 -0
  147. package/boost/numeric/odeint/iterator/impl/adaptive_iterator_impl.hpp +251 -0
  148. package/boost/numeric/odeint/iterator/impl/const_step_iterator_impl.hpp +228 -0
  149. package/boost/numeric/odeint/iterator/impl/n_step_iterator_impl.hpp +239 -0
  150. package/boost/numeric/odeint/iterator/impl/times_iterator_impl.hpp +369 -0
  151. package/boost/numeric/odeint/iterator/integrate/detail/functors.hpp +70 -0
  152. package/boost/numeric/odeint/iterator/integrate/detail/integrate_adaptive.hpp +121 -0
  153. package/boost/numeric/odeint/iterator/integrate/detail/integrate_const.hpp +111 -0
  154. package/boost/numeric/odeint/iterator/integrate/detail/integrate_n_steps.hpp +107 -0
  155. package/boost/numeric/odeint/iterator/integrate/detail/integrate_times.hpp +67 -0
  156. package/boost/numeric/odeint/iterator/integrate/integrate.hpp +111 -0
  157. package/boost/numeric/odeint/iterator/integrate/integrate_adaptive.hpp +127 -0
  158. package/boost/numeric/odeint/iterator/integrate/integrate_const.hpp +158 -0
  159. package/boost/numeric/odeint/iterator/integrate/integrate_n_steps.hpp +123 -0
  160. package/boost/numeric/odeint/iterator/integrate/integrate_times.hpp +131 -0
  161. package/boost/numeric/odeint/iterator/integrate/null_observer.hpp +38 -0
  162. package/boost/numeric/odeint/iterator/integrate/observer_collection.hpp +55 -0
  163. package/boost/numeric/odeint/iterator/n_step_iterator.hpp +168 -0
  164. package/boost/numeric/odeint/iterator/n_step_time_iterator.hpp +169 -0
  165. package/boost/numeric/odeint/iterator/times_iterator.hpp +189 -0
  166. package/boost/numeric/odeint/iterator/times_time_iterator.hpp +193 -0
  167. package/boost/numeric/odeint/stepper/adams_bashforth.hpp +418 -0
  168. package/boost/numeric/odeint/stepper/adams_bashforth_moulton.hpp +313 -0
  169. package/boost/numeric/odeint/stepper/adams_moulton.hpp +201 -0
  170. package/boost/numeric/odeint/stepper/adaptive_adams_bashforth_moulton.hpp +237 -0
  171. package/boost/numeric/odeint/stepper/base/algebra_stepper_base.hpp +91 -0
  172. package/boost/numeric/odeint/stepper/base/explicit_error_stepper_base.hpp +588 -0
  173. package/boost/numeric/odeint/stepper/base/explicit_error_stepper_fsal_base.hpp +677 -0
  174. package/boost/numeric/odeint/stepper/base/explicit_stepper_base.hpp +415 -0
  175. package/boost/numeric/odeint/stepper/base/symplectic_rkn_stepper_base.hpp +431 -0
  176. package/boost/numeric/odeint/stepper/bulirsch_stoer.hpp +642 -0
  177. package/boost/numeric/odeint/stepper/bulirsch_stoer_dense_out.hpp +838 -0
  178. package/boost/numeric/odeint/stepper/controlled_adams_bashforth_moulton.hpp +322 -0
  179. package/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp +1018 -0
  180. package/boost/numeric/odeint/stepper/controlled_step_result.hpp +42 -0
  181. package/boost/numeric/odeint/stepper/dense_output_runge_kutta.hpp +476 -0
  182. package/boost/numeric/odeint/stepper/detail/adams_bashforth_call_algebra.hpp +148 -0
  183. package/boost/numeric/odeint/stepper/detail/adams_bashforth_coefficients.hpp +168 -0
  184. package/boost/numeric/odeint/stepper/detail/adams_moulton_call_algebra.hpp +148 -0
  185. package/boost/numeric/odeint/stepper/detail/adams_moulton_coefficients.hpp +168 -0
  186. package/boost/numeric/odeint/stepper/detail/adaptive_adams_coefficients.hpp +207 -0
  187. package/boost/numeric/odeint/stepper/detail/generic_rk_algorithm.hpp +247 -0
  188. package/boost/numeric/odeint/stepper/detail/generic_rk_call_algebra.hpp +263 -0
  189. package/boost/numeric/odeint/stepper/detail/generic_rk_operations.hpp +252 -0
  190. package/boost/numeric/odeint/stepper/detail/pid_step_adjuster.hpp +199 -0
  191. package/boost/numeric/odeint/stepper/detail/pid_step_adjuster_coefficients.hpp +180 -0
  192. package/boost/numeric/odeint/stepper/detail/rotating_buffer.hpp +84 -0
  193. package/boost/numeric/odeint/stepper/euler.hpp +166 -0
  194. package/boost/numeric/odeint/stepper/explicit_error_generic_rk.hpp +255 -0
  195. package/boost/numeric/odeint/stepper/explicit_generic_rk.hpp +246 -0
  196. package/boost/numeric/odeint/stepper/extrapolation_stepper.hpp +288 -0
  197. package/boost/numeric/odeint/stepper/generation/generation_controlled_adams_bashforth_moulton.hpp +59 -0
  198. package/boost/numeric/odeint/stepper/generation/generation_controlled_runge_kutta.hpp +61 -0
  199. package/boost/numeric/odeint/stepper/generation/generation_dense_output_runge_kutta.hpp +65 -0
  200. package/boost/numeric/odeint/stepper/generation/generation_rosenbrock4.hpp +79 -0
  201. package/boost/numeric/odeint/stepper/generation/generation_runge_kutta_cash_karp54.hpp +47 -0
  202. package/boost/numeric/odeint/stepper/generation/generation_runge_kutta_cash_karp54_classic.hpp +48 -0
  203. package/boost/numeric/odeint/stepper/generation/generation_runge_kutta_dopri5.hpp +56 -0
  204. package/boost/numeric/odeint/stepper/generation/generation_runge_kutta_fehlberg78.hpp +46 -0
  205. package/boost/numeric/odeint/stepper/generation/make_controlled.hpp +103 -0
  206. package/boost/numeric/odeint/stepper/generation/make_dense_output.hpp +100 -0
  207. package/boost/numeric/odeint/stepper/generation.hpp +37 -0
  208. package/boost/numeric/odeint/stepper/implicit_euler.hpp +170 -0
  209. package/boost/numeric/odeint/stepper/modified_midpoint.hpp +315 -0
  210. package/boost/numeric/odeint/stepper/rosenbrock4.hpp +346 -0
  211. package/boost/numeric/odeint/stepper/rosenbrock4_controller.hpp +240 -0
  212. package/boost/numeric/odeint/stepper/rosenbrock4_dense_output.hpp +204 -0
  213. package/boost/numeric/odeint/stepper/runge_kutta4.hpp +181 -0
  214. package/boost/numeric/odeint/stepper/runge_kutta4_classic.hpp +232 -0
  215. package/boost/numeric/odeint/stepper/runge_kutta_cash_karp54.hpp +231 -0
  216. package/boost/numeric/odeint/stepper/runge_kutta_cash_karp54_classic.hpp +289 -0
  217. package/boost/numeric/odeint/stepper/runge_kutta_dopri5.hpp +403 -0
  218. package/boost/numeric/odeint/stepper/runge_kutta_fehlberg78.hpp +374 -0
  219. package/boost/numeric/odeint/stepper/stepper_categories.hpp +66 -0
  220. package/boost/numeric/odeint/stepper/symplectic_euler.hpp +136 -0
  221. package/boost/numeric/odeint/stepper/symplectic_rkn_sb3a_m4_mclachlan.hpp +160 -0
  222. package/boost/numeric/odeint/stepper/symplectic_rkn_sb3a_mclachlan.hpp +162 -0
  223. package/boost/numeric/odeint/stepper/velocity_verlet.hpp +375 -0
  224. package/boost/numeric/odeint/tools/assert.hpp +30 -0
  225. package/boost/numeric/odeint/tools/is_standalone.hpp +21 -0
  226. package/boost/numeric/odeint/tools/traits.hpp +39 -0
  227. package/boost/numeric/odeint/util/bind.hpp +35 -0
  228. package/boost/numeric/odeint/util/copy.hpp +88 -0
  229. package/boost/numeric/odeint/util/detail/is_range.hpp +127 -0
  230. package/boost/numeric/odeint/util/detail/less_with_sign.hpp +78 -0
  231. package/boost/numeric/odeint/util/is_pair.hpp +42 -0
  232. package/boost/numeric/odeint/util/is_resizeable.hpp +84 -0
  233. package/boost/numeric/odeint/util/multi_array_adaption.hpp +131 -0
  234. package/boost/numeric/odeint/util/n_ary_helper.hpp +96 -0
  235. package/boost/numeric/odeint/util/odeint_error.hpp +77 -0
  236. package/boost/numeric/odeint/util/resize.hpp +120 -0
  237. package/boost/numeric/odeint/util/resizer.hpp +94 -0
  238. package/boost/numeric/odeint/util/same_instance.hpp +56 -0
  239. package/boost/numeric/odeint/util/same_size.hpp +117 -0
  240. package/boost/numeric/odeint/util/split.hpp +64 -0
  241. package/boost/numeric/odeint/util/split_adaptor.hpp +103 -0
  242. package/boost/numeric/odeint/util/state_wrapper.hpp +50 -0
  243. package/boost/numeric/odeint/util/stepper_traits.hpp +63 -0
  244. package/boost/numeric/odeint/util/ublas_matrix_expression.patch +6 -0
  245. package/boost/numeric/odeint/util/ublas_wrapper.hpp +297 -0
  246. package/boost/numeric/odeint/util/unit_helper.hpp +151 -0
  247. package/boost/numeric/odeint/util/unwrap_reference.hpp +141 -0
  248. package/boost/numeric/odeint/version.hpp +55 -0
  249. package/boost/numeric/odeint.hpp +87 -0
  250. package/boost/numeric/ublas/assignment.hpp +1288 -0
  251. package/boost/numeric/ublas/banded.hpp +2372 -0
  252. package/boost/numeric/ublas/blas.hpp +499 -0
  253. package/boost/numeric/ublas/detail/concepts.hpp +1465 -0
  254. package/boost/numeric/ublas/detail/config.hpp +304 -0
  255. package/boost/numeric/ublas/detail/definitions.hpp +212 -0
  256. package/boost/numeric/ublas/detail/documentation.hpp +33 -0
  257. package/boost/numeric/ublas/detail/duff.hpp +56 -0
  258. package/boost/numeric/ublas/detail/iterator.hpp +1448 -0
  259. package/boost/numeric/ublas/detail/matrix_assign.hpp +1785 -0
  260. package/boost/numeric/ublas/detail/raw.hpp +878 -0
  261. package/boost/numeric/ublas/detail/returntype_deduction.hpp +174 -0
  262. package/boost/numeric/ublas/detail/temporary.hpp +33 -0
  263. package/boost/numeric/ublas/detail/vector_assign.hpp +609 -0
  264. package/boost/numeric/ublas/doxydoc.hpp +58 -0
  265. package/boost/numeric/ublas/exception.hpp +297 -0
  266. package/boost/numeric/ublas/experimental/sparse_view.hpp +317 -0
  267. package/boost/numeric/ublas/expression_types.hpp +506 -0
  268. package/boost/numeric/ublas/functional.hpp +2112 -0
  269. package/boost/numeric/ublas/fwd.hpp +229 -0
  270. package/boost/numeric/ublas/hermitian.hpp +2633 -0
  271. package/boost/numeric/ublas/io.hpp +355 -0
  272. package/boost/numeric/ublas/lu.hpp +350 -0
  273. package/boost/numeric/ublas/matrix.hpp +6013 -0
  274. package/boost/numeric/ublas/matrix_expression.hpp +5693 -0
  275. package/boost/numeric/ublas/matrix_proxy.hpp +5457 -0
  276. package/boost/numeric/ublas/matrix_sparse.hpp +5773 -0
  277. package/boost/numeric/ublas/matrix_vector.hpp +406 -0
  278. package/boost/numeric/ublas/opencl/elementwise.hpp +508 -0
  279. package/boost/numeric/ublas/opencl/library.hpp +38 -0
  280. package/boost/numeric/ublas/opencl/matrix.hpp +123 -0
  281. package/boost/numeric/ublas/opencl/misc.hpp +182 -0
  282. package/boost/numeric/ublas/opencl/operations.hpp +18 -0
  283. package/boost/numeric/ublas/opencl/prod.hpp +364 -0
  284. package/boost/numeric/ublas/opencl/transpose.hpp +142 -0
  285. package/boost/numeric/ublas/opencl/vector.hpp +90 -0
  286. package/boost/numeric/ublas/opencl.hpp +16 -0
  287. package/boost/numeric/ublas/operation/begin.hpp +318 -0
  288. package/boost/numeric/ublas/operation/c_array.hpp +41 -0
  289. package/boost/numeric/ublas/operation/end.hpp +318 -0
  290. package/boost/numeric/ublas/operation/num_columns.hpp +45 -0
  291. package/boost/numeric/ublas/operation/num_rows.hpp +44 -0
  292. package/boost/numeric/ublas/operation/size.hpp +350 -0
  293. package/boost/numeric/ublas/operation.hpp +830 -0
  294. package/boost/numeric/ublas/operation_blocked.hpp +266 -0
  295. package/boost/numeric/ublas/operation_sparse.hpp +198 -0
  296. package/boost/numeric/ublas/operations.hpp +26 -0
  297. package/boost/numeric/ublas/storage.hpp +2131 -0
  298. package/boost/numeric/ublas/storage_sparse.hpp +578 -0
  299. package/boost/numeric/ublas/symmetric.hpp +2309 -0
  300. package/boost/numeric/ublas/tags.hpp +37 -0
  301. package/boost/numeric/ublas/tensor/algorithms.hpp +345 -0
  302. package/boost/numeric/ublas/tensor/expression.hpp +181 -0
  303. package/boost/numeric/ublas/tensor/expression_evaluation.hpp +288 -0
  304. package/boost/numeric/ublas/tensor/extents.hpp +335 -0
  305. package/boost/numeric/ublas/tensor/functions.hpp +558 -0
  306. package/boost/numeric/ublas/tensor/index.hpp +89 -0
  307. package/boost/numeric/ublas/tensor/multi_index.hpp +110 -0
  308. package/boost/numeric/ublas/tensor/multi_index_utility.hpp +364 -0
  309. package/boost/numeric/ublas/tensor/multiplication.hpp +945 -0
  310. package/boost/numeric/ublas/tensor/operators_arithmetic.hpp +244 -0
  311. package/boost/numeric/ublas/tensor/operators_comparison.hpp +175 -0
  312. package/boost/numeric/ublas/tensor/ostream.hpp +122 -0
  313. package/boost/numeric/ublas/tensor/storage_traits.hpp +84 -0
  314. package/boost/numeric/ublas/tensor/strides.hpp +251 -0
  315. package/boost/numeric/ublas/tensor/tensor.hpp +734 -0
  316. package/boost/numeric/ublas/tensor.hpp +26 -0
  317. package/boost/numeric/ublas/traits/c_array.hpp +110 -0
  318. package/boost/numeric/ublas/traits/const_iterator_type.hpp +127 -0
  319. package/boost/numeric/ublas/traits/iterator_type.hpp +126 -0
  320. package/boost/numeric/ublas/traits.hpp +753 -0
  321. package/boost/numeric/ublas/triangular.hpp +2775 -0
  322. package/boost/numeric/ublas/vector.hpp +2947 -0
  323. package/boost/numeric/ublas/vector_expression.hpp +1762 -0
  324. package/boost/numeric/ublas/vector_of_vector.hpp +1347 -0
  325. package/boost/numeric/ublas/vector_proxy.hpp +1697 -0
  326. package/boost/numeric/ublas/vector_sparse.hpp +2246 -0
  327. package/package.json +3 -7
@@ -0,0 +1,114 @@
1
+ /*
2
+ [auto_generated]
3
+ boost/numeric/odeint/integrate/max_step_checker.hpp
4
+
5
+ [begin_description]
6
+ Throws exception if too many steps are performed.
7
+ [end_description]
8
+
9
+ Copyright 2015 Mario Mulansky
10
+
11
+ Distributed under the Boost Software License, Version 1.0.
12
+ (See accompanying file LICENSE_1_0.txt or
13
+ copy at http://www.boost.org/LICENSE_1_0.txt)
14
+ */
15
+
16
+
17
+ #ifndef BOOST_NUMERIC_ODEINT_INTEGRATE_MAX_STEP_CHECKER_HPP_INCLUDED
18
+ #define BOOST_NUMERIC_ODEINT_INTEGRATE_MAX_STEP_CHECKER_HPP_INCLUDED
19
+
20
+ #include <stdexcept>
21
+ #include <cstdio>
22
+
23
+ #include <boost/throw_exception.hpp>
24
+ #include <boost/numeric/odeint/util/odeint_error.hpp>
25
+
26
+
27
+ namespace boost {
28
+ namespace numeric {
29
+ namespace odeint {
30
+
31
+ /**
32
+ * \brief A class for performing overflow checks on the step count in integrate functions.
33
+ *
34
+ * Provide an instance of this class to integrate functions if you want to throw a runtime error if
35
+ * too many steps are performed without progress during the integrate routine.
36
+ */
37
+ class max_step_checker
38
+ {
39
+ public:
40
+
41
+ protected:
42
+ const int m_max_steps;
43
+ int m_steps;
44
+
45
+ public:
46
+ /**
47
+ * \brief Construct the max_step_checker.
48
+ * max_steps is the maximal number of iterations allowed before runtime_error is thrown.
49
+ */
50
+ max_step_checker(const int max_steps = 500)
51
+ : m_max_steps(max_steps)
52
+ {
53
+ reset();
54
+ }
55
+
56
+ /**
57
+ * \brief Resets the max_step_checker by setting the internal counter to 0.
58
+ */
59
+ void reset()
60
+ {
61
+ m_steps = 0;
62
+ }
63
+
64
+ /**
65
+ * \brief Increases the counter and performs the iteration check
66
+ */
67
+ void operator()(void)
68
+ {
69
+ if( m_steps++ >= m_max_steps )
70
+ {
71
+ char error_msg[200];
72
+ std::snprintf(error_msg, 200, "Max number of iterations exceeded (%d).", m_max_steps);
73
+ BOOST_THROW_EXCEPTION( no_progress_error(error_msg) );
74
+ }
75
+ }
76
+ };
77
+
78
+
79
+ /**
80
+ * \brief A class for performing overflow checks on the failed step count in step size adjustments.
81
+ *
82
+ * Used internally within the dense output stepper and integrate routines.
83
+ */
84
+ class failed_step_checker : public max_step_checker
85
+ {
86
+
87
+ public:
88
+ /**
89
+ * \brief Construct the failed_step_checker.
90
+ * max_steps is the maximal number of iterations allowed before runtime_error is thrown.
91
+ */
92
+ failed_step_checker(const int max_steps = 500)
93
+ : max_step_checker(max_steps)
94
+ {}
95
+
96
+ /**
97
+ * \brief Increases the counter and performs the iteration check
98
+ */
99
+ void operator()(void)
100
+ {
101
+ if( m_steps++ >= m_max_steps )
102
+ {
103
+ char error_msg[200];
104
+ std::snprintf(error_msg, 200, "Max number of iterations exceeded (%d). A new step size was not found.", m_max_steps);
105
+ BOOST_THROW_EXCEPTION( step_adjustment_error(error_msg) );
106
+ }
107
+ }
108
+ };
109
+
110
+ } // namespace odeint
111
+ } // namespace numeric
112
+ } // namespace boost
113
+
114
+ #endif
@@ -0,0 +1,38 @@
1
+ /*
2
+ [auto_generated]
3
+ boost/numeric/odeint/integrate/null_observer.hpp
4
+
5
+ [begin_description]
6
+ null_observer
7
+ [end_description]
8
+
9
+ Copyright 2011-2012 Karsten Ahnert
10
+ Copyright 2011-2012 Mario Mulansky
11
+
12
+ Distributed under the Boost Software License, Version 1.0.
13
+ (See accompanying file LICENSE_1_0.txt or
14
+ copy at http://www.boost.org/LICENSE_1_0.txt)
15
+ */
16
+
17
+
18
+ #ifndef BOOST_NUMERIC_ODEINT_INTEGRATE_NULL_OBSERVER_HPP_INCLUDED
19
+ #define BOOST_NUMERIC_ODEINT_INTEGRATE_NULL_OBSERVER_HPP_INCLUDED
20
+
21
+ namespace boost {
22
+ namespace numeric {
23
+ namespace odeint {
24
+
25
+ struct null_observer
26
+ {
27
+ template< class State , class Time >
28
+ void operator()( const State& /* x */ , Time /* t */ ) const
29
+ {
30
+
31
+ }
32
+ };
33
+
34
+ } // namespace odeint
35
+ } // namespace numeric
36
+ } // namespace boost
37
+
38
+ #endif // BOOST_NUMERIC_ODEINT_INTEGRATE_NULL_OBSERVER_HPP_INCLUDED
@@ -0,0 +1,55 @@
1
+ /*
2
+ [auto_generated]
3
+ boost/numeric/odeint/integrate/observer_collection.hpp
4
+
5
+ [begin_description]
6
+ Collection of observers, which are all called during the evolution of the ODE.
7
+ [end_description]
8
+
9
+ Copyright 2011-2012 Karsten Ahnert
10
+ Copyright 2011-2012 Mario Mulansky
11
+
12
+ Distributed under the Boost Software License, Version 1.0.
13
+ (See accompanying file LICENSE_1_0.txt or
14
+ copy at http://www.boost.org/LICENSE_1_0.txt)
15
+ */
16
+
17
+
18
+ #ifndef BOOST_NUMERIC_ODEINT_INTEGRATE_OBSERVER_COLLECTION_HPP_INCLUDED
19
+ #define BOOST_NUMERIC_ODEINT_INTEGRATE_OBSERVER_COLLECTION_HPP_INCLUDED
20
+
21
+ #include <vector>
22
+ #include <functional>
23
+
24
+ namespace boost {
25
+ namespace numeric {
26
+ namespace odeint {
27
+
28
+ template< class State , class Time >
29
+ class observer_collection
30
+ {
31
+ public:
32
+
33
+ typedef std::function< void( const State& , const Time& ) > observer_type;
34
+ typedef std::vector< observer_type > collection_type;
35
+
36
+ void operator()( const State& x , Time t )
37
+ {
38
+ for( size_t i=0 ; i<m_observers.size() ; ++i )
39
+ m_observers[i]( x , t );
40
+ }
41
+
42
+ collection_type& observers( void ) { return m_observers; }
43
+ const collection_type& observers( void ) const { return m_observers; }
44
+
45
+ private:
46
+
47
+ collection_type m_observers;
48
+ };
49
+
50
+ } // namespace odeint
51
+ } // namespace numeric
52
+ } // namespace boost
53
+
54
+
55
+ #endif // BOOST_NUMERIC_ODEINT_INTEGRATE_OBSERVER_COLLECTION_HPP_INCLUDED
@@ -0,0 +1,183 @@
1
+
2
+ /*
3
+ [auto_generated]
4
+ boost/numeric/odeint/iterator/adaptive_iterator.hpp
5
+
6
+ [begin_description]
7
+ Iterator for iterating throught the solution of an ODE with adaptive step size. The dereferenced types containes also the time.
8
+ [end_description]
9
+
10
+ Copyright 2012-2013 Karsten Ahnert
11
+ Copyright 2012 Mario Mulansky
12
+
13
+ Distributed under the Boost Software License, Version 1.0.
14
+ (See accompanying file LICENSE_1_0.txt or
15
+ copy at http://www.boost.org/LICENSE_1_0.txt)
16
+ */
17
+
18
+
19
+ #ifndef BOOST_NUMERIC_ODEINT_ITERATOR_ADAPTIVE_ITERATOR_HPP_INCLUDED
20
+ #define BOOST_NUMERIC_ODEINT_ITERATOR_ADAPTIVE_ITERATOR_HPP_INCLUDED
21
+
22
+ #include <boost/numeric/odeint/util/stepper_traits.hpp>
23
+ #include <boost/numeric/odeint/util/unit_helper.hpp>
24
+ #include <boost/numeric/odeint/stepper/stepper_categories.hpp>
25
+ #include <boost/numeric/odeint/stepper/controlled_step_result.hpp>
26
+ #include <boost/numeric/odeint/iterator/impl/adaptive_iterator_impl.hpp>
27
+
28
+ namespace boost {
29
+ namespace numeric {
30
+ namespace odeint {
31
+
32
+ /* use the adaptive_iterator_impl with the right tags */
33
+ template< class Stepper , class System , class State
34
+ #ifndef DOXYGEN_SKIP
35
+ , class StepperTag = typename base_tag< typename traits::stepper_category< Stepper >::type >::type
36
+ #endif
37
+ >
38
+ class adaptive_iterator : public adaptive_iterator_impl<
39
+ adaptive_iterator< Stepper , System , State , StepperTag > ,
40
+ Stepper , System , State , detail::ode_state_iterator_tag , StepperTag
41
+ >
42
+ {
43
+ typedef typename traits::time_type< Stepper >::type time_type;
44
+ typedef adaptive_iterator< Stepper , System , State , StepperTag > iterator_type;
45
+
46
+ public:
47
+ adaptive_iterator( Stepper stepper , System sys , State &s , time_type t_start , time_type t_end , time_type dt )
48
+ : adaptive_iterator_impl< iterator_type , Stepper , System , State , detail::ode_state_iterator_tag , StepperTag >( stepper , sys , s , t_start , t_end , dt )
49
+ {}
50
+
51
+ adaptive_iterator( Stepper stepper , System sys , State &s )
52
+ : adaptive_iterator_impl< iterator_type , Stepper , System , State , detail::ode_state_iterator_tag , StepperTag >( stepper , sys , s )
53
+ {}
54
+ };
55
+
56
+
57
+
58
+
59
+ template< class Stepper , class System , class State >
60
+ adaptive_iterator< Stepper , System , State > make_adaptive_iterator_begin(
61
+ Stepper stepper ,
62
+ System system ,
63
+ State &x ,
64
+ typename traits::time_type< Stepper >::type t_start ,
65
+ typename traits::time_type< Stepper >::type t_end ,
66
+ typename traits::time_type< Stepper >::type dt )
67
+ {
68
+ return adaptive_iterator< Stepper , System , State >( stepper , system , x , t_start , t_end , dt );
69
+ }
70
+
71
+
72
+ template< class Stepper , class System , class State >
73
+ adaptive_iterator< Stepper , System , State > make_adaptive_iterator_end(
74
+ Stepper stepper ,
75
+ System system ,
76
+ State &x )
77
+ {
78
+ return adaptive_iterator< Stepper , System , State >( stepper , system , x );
79
+ }
80
+
81
+
82
+ template< class Stepper , class System , class State >
83
+ std::pair< adaptive_iterator< Stepper , System , State > , adaptive_iterator< Stepper , System , State > >
84
+ make_adaptive_range(
85
+ Stepper stepper ,
86
+ System system ,
87
+ State &x ,
88
+ typename traits::time_type< Stepper >::type t_start ,
89
+ typename traits::time_type< Stepper >::type t_end ,
90
+ typename traits::time_type< Stepper >::type dt )
91
+ {
92
+ return std::make_pair(
93
+ adaptive_iterator< Stepper , System , State >( stepper , system , x , t_start , t_end , dt ) ,
94
+ adaptive_iterator< Stepper , System , State >( stepper , system , x )
95
+ );
96
+ }
97
+
98
+ /**
99
+ * \class adaptive_iterator
100
+ *
101
+ * \brief ODE Iterator with adaptive step size. The value type of this iterator is the state type of the stepper.
102
+ *
103
+ * Implements an iterator representing the solution of an ODE from t_start
104
+ * to t_end evaluated at steps with an adaptive step size dt.
105
+ * After each iteration the iterator dereferences to the state x at the next
106
+ * time t+dt where dt is controlled by the stepper.
107
+ * This iterator can be used with ControlledSteppers and
108
+ * DenseOutputSteppers and it always makes use of the all the given steppers
109
+ * capabilities. A for_each over such an iterator range behaves similar to
110
+ * the integrate_adaptive routine.
111
+ *
112
+ * adaptive_iterator is a model of single-pass iterator.
113
+ *
114
+ * The value type of this iterator is the state type of the stepper. Hence one can only access the state and not the current time.
115
+ *
116
+ * \tparam Stepper The stepper type which should be used during the iteration.
117
+ * \tparam System The type of the system function (ODE) which should be solved.
118
+ * \tparam State The state type of the ODE.
119
+ */
120
+
121
+
122
+
123
+
124
+
125
+
126
+ /**
127
+ * \fn make_adaptive_iterator_begin( Stepper stepper , System system , State &x ,
128
+ typename traits::time_type< Stepper >::type t_start ,
129
+ typename traits::time_type< Stepper >::type t_end ,
130
+ typename traits::time_type< Stepper >::type dt )
131
+ *
132
+ * \brief Factory function for adaptive_iterator. Constructs a begin iterator.
133
+ *
134
+ * \param stepper The stepper to use during the iteration.
135
+ * \param system The system function (ODE) to solve.
136
+ * \param x The initial state.
137
+ * \param t_start The initial time.
138
+ * \param t_end The end time, at which the iteration should stop.
139
+ * \param dt The initial time step.
140
+ * \returns The adaptive iterator.
141
+ */
142
+
143
+
144
+ /**
145
+ * \fn make_adaptive_iterator_end( Stepper stepper , System system , State &x )
146
+ * \brief Factory function for adaptive_iterator. Constructs a end iterator.
147
+ *
148
+ * \param stepper The stepper to use during the iteration.
149
+ * \param system The system function (ODE) to solve.
150
+ * \param x The initial state.
151
+ * \returns The adaptive iterator.
152
+ */
153
+
154
+
155
+ /**
156
+ * \fn make_adaptive_range( Stepper stepper , System system , State &x ,
157
+ typename traits::time_type< Stepper >::type t_start ,
158
+ typename traits::time_type< Stepper >::type t_end ,
159
+ typename traits::time_type< Stepper >::type dt )
160
+ *
161
+ * \brief Factory function to construct a single pass range of adaptive iterators. A range is here a pair of adaptive_iterator.
162
+ *
163
+ * \param stepper The stepper to use during the iteration.
164
+ * \param system The system function (ODE) to solve.
165
+ * \param x The initial state.
166
+ * \param t_start The initial time.
167
+ * \param t_end The end time, at which the iteration should stop.
168
+ * \param dt The initial time step.
169
+ * \returns The adaptive range.
170
+ */
171
+
172
+
173
+
174
+
175
+
176
+
177
+ } // namespace odeint
178
+ } // namespace numeric
179
+ } // namespace boost
180
+
181
+
182
+
183
+ #endif // BOOST_NUMERIC_ODEINT_ITERATOR_ADAPTIVE_ITERATOR_HPP_INCLUDED
@@ -0,0 +1,175 @@
1
+
2
+ /*
3
+ [auto_generated]
4
+ boost/numeric/odeint/iterator/adaptive_time_iterator.hpp
5
+
6
+ [begin_description]
7
+ Iterator for iterating throught the solution of an ODE with adaptive step size. The dereferenced types containes also the time.
8
+ [end_description]
9
+
10
+ Copyright 2012-2013 Karsten Ahnert
11
+ Copyright 2012-2013 Mario Mulansky
12
+
13
+ Distributed under the Boost Software License, Version 1.0.
14
+ (See accompanying file LICENSE_1_0.txt or
15
+ copy at http://www.boost.org/LICENSE_1_0.txt)
16
+ */
17
+
18
+
19
+ #ifndef BOOST_NUMERIC_ODEINT_ITERATOR_ADAPTIVE_TIME_ITERATOR_HPP_INCLUDED
20
+ #define BOOST_NUMERIC_ODEINT_ITERATOR_ADAPTIVE_TIME_ITERATOR_HPP_INCLUDED
21
+
22
+
23
+
24
+ #include <boost/numeric/odeint/stepper/stepper_categories.hpp>
25
+ #include <boost/numeric/odeint/util/stepper_traits.hpp>
26
+ #include <boost/numeric/odeint/iterator/impl/adaptive_iterator_impl.hpp>
27
+
28
+ namespace boost {
29
+ namespace numeric {
30
+ namespace odeint {
31
+
32
+ /* use the adaptive_iterator_impl with the right tags */
33
+ template< class Stepper , class System , class State
34
+ #ifndef DOXYGEN_SKIP
35
+ , class StepperTag = typename base_tag< typename traits::stepper_category< Stepper >::type >::type
36
+ #endif
37
+ >
38
+ class adaptive_time_iterator : public adaptive_iterator_impl<
39
+ adaptive_time_iterator< Stepper , System , State , StepperTag > ,
40
+ Stepper , System , State , detail::ode_state_time_iterator_tag , StepperTag
41
+ >
42
+ {
43
+ typedef typename traits::time_type< Stepper >::type time_type;
44
+ typedef adaptive_time_iterator< Stepper , System , State , StepperTag > iterator_type;
45
+
46
+ public:
47
+ adaptive_time_iterator( Stepper stepper , System sys , State &s , time_type t_start , time_type t_end , time_type dt )
48
+ : adaptive_iterator_impl< iterator_type , Stepper , System , State , detail::ode_state_time_iterator_tag , StepperTag >( stepper , sys , s , t_start , t_end , dt )
49
+ {}
50
+
51
+ adaptive_time_iterator( Stepper stepper , System sys , State &s )
52
+ : adaptive_iterator_impl< iterator_type , Stepper , System , State , detail::ode_state_time_iterator_tag , StepperTag >( stepper , sys , s )
53
+ {}
54
+ };
55
+
56
+
57
+
58
+
59
+ template< class Stepper , class System , class State >
60
+ adaptive_time_iterator< Stepper , System , State > make_adaptive_time_iterator_begin(
61
+ Stepper stepper ,
62
+ System system ,
63
+ State &x ,
64
+ typename traits::time_type< Stepper >::type t_start ,
65
+ typename traits::time_type< Stepper >::type t_end ,
66
+ typename traits::time_type< Stepper >::type dt )
67
+ {
68
+ return adaptive_time_iterator< Stepper , System , State >( stepper , system , x , t_start , t_end , dt );
69
+ }
70
+
71
+ template< class Stepper , class System , class State >
72
+ adaptive_time_iterator< Stepper , System , State > make_adaptive_time_iterator_end(
73
+ Stepper stepper ,
74
+ System system ,
75
+ State &x )
76
+ {
77
+ return adaptive_time_iterator< Stepper , System , State >( stepper , system , x );
78
+ }
79
+
80
+
81
+ template< class Stepper , class System , class State >
82
+ std::pair< adaptive_time_iterator< Stepper , System , State > , adaptive_time_iterator< Stepper , System , State > >
83
+ make_adaptive_time_range(
84
+ Stepper stepper ,
85
+ System system ,
86
+ State &x ,
87
+ typename traits::time_type< Stepper >::type t_start ,
88
+ typename traits::time_type< Stepper >::type t_end ,
89
+ typename traits::time_type< Stepper >::type dt )
90
+ {
91
+ return std::make_pair(
92
+ adaptive_time_iterator< Stepper , System , State >( stepper , system , x , t_start , t_end , dt ) ,
93
+ adaptive_time_iterator< Stepper , System , State >( stepper , system , x ) );
94
+ }
95
+
96
+
97
+
98
+ /**
99
+ * \class adaptive_time_iterator
100
+ *
101
+ * \brief ODE Iterator with adaptive step size. The value type of this iterator is a std::pair containing state and time.
102
+ *
103
+ * Implements an iterator representing the solution of an ODE from t_start
104
+ * to t_end evaluated at steps with an adaptive step size dt.
105
+ * After each iteration the iterator dereferences to a pair containing state
106
+ * and time at the next time point t+dt where dt is controlled by the stepper.
107
+ * This iterator can be used with ControlledSteppers and
108
+ * DenseOutputSteppers and it always makes use of the all the given steppers
109
+ * capabilities. A for_each over such an iterator range behaves similar to
110
+ * the integrate_adaptive routine.
111
+ *
112
+ * adaptive_iterator is a model of single-pass iterator.
113
+ *
114
+ * The value type of this iterator is a std::pair of state and time of the stepper.
115
+ *
116
+ * \tparam Stepper The stepper type which should be used during the iteration.
117
+ * \tparam System The type of the system function (ODE) which should be solved.
118
+ * \tparam State The state type of the ODE.
119
+ */
120
+
121
+
122
+
123
+ /**
124
+ * \fn make_adaptive_time_iterator_begin( Stepper stepper , System system , State &x ,
125
+ typename traits::time_type< Stepper >::type t_start ,
126
+ typename traits::time_type< Stepper >::type t_end ,
127
+ typename traits::time_type< Stepper >::type dt )
128
+ *
129
+ * \brief Factory function for adaptive_time_iterator. Constructs a begin iterator.
130
+ *
131
+ * \param stepper The stepper to use during the iteration.
132
+ * \param system The system function (ODE) to solve.
133
+ * \param x The initial state. adaptive_time_iterator stores a reference of s and changes its value during the iteration.
134
+ * \param t_start The initial time.
135
+ * \param t_end The end time, at which the iteration should stop.
136
+ * \param dt The initial time step.
137
+ * \returns The adaptive time iterator.
138
+ */
139
+
140
+
141
+ /**
142
+ * \fn make_adaptive_time_iterator_end( Stepper stepper , System system , State &x )
143
+ * \brief Factory function for adaptive_time_iterator. Constructs a end iterator.
144
+ *
145
+ * \param stepper The stepper to use during the iteration.
146
+ * \param system The system function (ODE) to solve.
147
+ * \param x The initial state. adaptive_time_iterator stores a reference of s and changes its value during the iteration.
148
+ * \returns The adaptive time iterator.
149
+ */
150
+
151
+
152
+ /**
153
+ * \fn make_adaptive_time_range( Stepper stepper , System system , State &x ,
154
+ typename traits::time_type< Stepper >::type t_start ,
155
+ typename traits::time_type< Stepper >::type t_end ,
156
+ typename traits::time_type< Stepper >::type dt )
157
+ *
158
+ * \brief Factory function to construct a single pass range of adaptive time iterators. A range is here a pair of adaptive_time_iterators.
159
+ *
160
+ * \param stepper The stepper to use during the iteration.
161
+ * \param system The system function (ODE) to solve.
162
+ * \param x The initial state. adaptive_time_iterator stores a reference of s and changes its value during the iteration.
163
+ * \param t_start The initial time.
164
+ * \param t_end The end time, at which the iteration should stop.
165
+ * \param dt The initial time step.
166
+ * \returns The adaptive time range.
167
+ */
168
+
169
+
170
+ } // namespace odeint
171
+ } // namespace numeric
172
+ } // namespace boost
173
+
174
+
175
+ #endif // BOOST_NUMERIC_ODEINT_ITERATOR_ADAPTIVE_TIME_ITERATOR_HPP_INCLUDED