mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
math.hpp
Go to the documentation of this file.
1 /** \file math.hpp
2  * \author Jared R. Males
3  * \brief Library include for the math module.
4  * \ingroup gen_math_files
5  *
6  */
7 
8 //***********************************************************************//
9 // Copyright 2020-2023 Jared R. Males (jaredmales@gmail.com)
10 //
11 // This file is part of mxlib.
12 //
13 // mxlib is free software: you can redistribute it and/or modify
14 // it under the terms of the GNU General Public License as published by
15 // the Free Software Foundation, either version 3 of the License, or
16 // (at your option) any later version.
17 //
18 // mxlib is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 // GNU General Public License for more details.
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with mxlib. If not, see <http://www.gnu.org/licenses/>.
25 //***********************************************************************//
26 
27 #ifndef math_hpp
28 #define math_hpp
29 
30 #include "cuda/cudaPtr.hpp"
31 #include "cuda/templateCublas.hpp"
32 #include "cuda/templateCuda.hpp"
33 #include "cuda/templateCufft.hpp"
34 #include "cuda/templateCurand.hpp"
35 #include "fft/fft.hpp"
36 #include "fft/fftwEnvironment.hpp"
37 #include "fft/fftwTemplates.hpp"
39 #include "fit/fitAiry.hpp"
40 #include "fit/fitGaussian.hpp"
41 #include "fit/fitMoffat.hpp"
42 #include "fit/levmarInterface.hpp"
43 #include "fit/templateLevmar.hpp"
44 #include "func/airyPattern.hpp"
45 #include "func/bessel.hpp"
46 #include "func/factorial.hpp"
47 #include "func/gamma.hpp"
48 #include "func/gaussian.hpp"
49 #include "func/jinc.hpp"
50 #include "func/logistic.hpp"
51 #include "func/moffat.hpp"
52 #include "func/precision.hpp"
53 #include "func/sign.hpp"
54 #include "func/weibull.hpp"
55 #include "plot/gnuPlot.hpp"
56 #include "constants.hpp"
57 #include "eigenLapack.hpp"
58 #include "geo.hpp"
59 #include "gslInterpolation.hpp"
60 #include "gslInterpolator.hpp"
61 #include "histogramUniform.hpp"
62 #include "logInterpolator.hpp"
63 #include "radprofIntegral.hpp"
64 #include "randomSeed.hpp"
65 #include "randomT.hpp"
66 #include "roots.hpp"
67 #include "templateBLAS.hpp"
68 #include "templateLapack.hpp"
69 #include "vectorUtils.hpp"
70 
71 #endif //math_hpp
Utilities related to the Airy pattern point spread function.
Wrapper for a native array to pass to levmarInterface, with 2D Gaussian details.
Declares and defines Bessel functions of the first kind.
A wrapper for cuda device pointers.
Interfaces to Lapack and BLAS for Eigen-like arrays.
Declares and defines the factorial function.
The fast Fourier transform interface.
Declares and defines the fftwEnvironment manager.
Declares and defines templatized wrappers for the fftw library.
Tools for fitting the Airy pattern to PSF images.
Tools for fitting Gaussians to data.
Tools for fitting Moffat functions to data.
Declares and defines the gamma function.
Declarations for utilities related to the Gaussian function.
Utilities for working with angles.
Declaration and definition of an interface to the gnuplot program.
Wrappers for using the GNU Scientific Library 1-D interpolation functions.
Class for managing 1-D interpolation using the GNU Scientific Library.
Header for the std::vector utilities.
Declares and defines the Jinc and Jinc2 functions.
A c++ interface to the templatized levmar minimization routines..
Interpolation in log space.
The logistic function.
Declarations for utilities related to the Moffat function.
2D integration of a radial profile
Defines a random number seed generator.
Defines a random number type.
Declares and defines functions for finding roots.
Declares and defines the sign function.
Declares and defines templatized wrappers for the BLAS.
A template interface to cuBlas.
Utilities for a template interface to cuda.
A template interface to cufft.
A template interface to curand.
Declares and defines templatized wrappers for the Lapack library.
Templatized wrappers to the levmar minimization routines..
Header for the std::vector utilities.
The Weibull distribution.