npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
johnsonTransform.hh
Go to the documentation of this file.
1 #ifndef NPSTAT_JOHNSONTRANSFORM_HH_
2 #define NPSTAT_JOHNSONTRANSFORM_HH_
3 
4 /*!
5 // \file johnsonTransform.hh
6 //
7 // \brief Determine the transform that generates a member of Johnson family
8 // of frequency curves
9 //
10 // Author: I. Volobouev
11 //
12 // October 2022
13 */
14 
15 #include <memory>
16 
19 
20 namespace npstat {
21  // This function will throw an exception if the input
22  // distribution is not a member of the Johnson family and not
23  // a TransformedDistribution1D using the standard normal
24  std::unique_ptr<AbsDistributionTransform1D> johnsonTransform(
25  const AbsDistribution1D& distro);
26 
27 #ifdef SWIG
28  inline AbsDistributionTransform1D* johnsonTransform2(
29  const AbsDistribution1D& d)
30  {
31  std::unique_ptr<AbsDistributionTransform1D> ptr = johnsonTransform(d);
32  return ptr.release();
33  }
34 #endif // SWIG
35 }
36 
37 #endif // NPSTAT_JOHNSONTRANSFORM_HH_
Interface definition for 1-d continuous statistical distributions.
Interface definition for 1-d coordinate transformations used to build statistical distributions.
Definition: AbsArrayProjector.hh:14