CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
QuarticSolver.hpp
Go to the documentation of this file.
1 /*
2  * (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu
3  *
4  * This software is distributed under the terms of the GNU General Public
5  * Licence version 3 (GPL Version 3). See file LICENSE for a full version of
6  * the license.
7  */
8 
9 #pragma once
10 
12 #include <corsika/framework/utility/QuadraticSolver.hpp>
13 
14 #include <complex>
15 #include <algorithm>
16 #include <cmath>
17 #include <numeric>
18 
23 namespace corsika {
24 
30  namespace andre {
31 
37  std::vector<double> solve_quartic_real(long double a, long double b, long double c,
38  long double d, long double e,
39  double const epsilon = 1e-12);
40  } // namespace andre
41 
45  std::vector<double> solve_quartic_real(long double a, long double b, long double c,
46  long double d, long double e,
47  double const epsilon = 1e-12);
48 
50 
51 } // namespace corsika
52 
53 #include <corsika/detail/framework/utility/QuarticSolver.inl>
std::vector< double > solve_quartic_real(long double a, long double b, long double c, long double d, long double e, double const epsilon=1e-12)
solve quartic equation a*x^4 + b*x^3 + c*x^2 + d*x + e
`, since they are used everywhere as integral part of the framework.