sampled_gaussian.h.html | mathcode2html |
Source file: sampled_gaussian.h | |
Converted: Tue Apr 17 2012 at 11:03:39 | |
This documentation file will not reflect any later changes in the source file. |
$$\phantom{******** If you see this on the webpage then the
browser could not locate *********}$$
$$\phantom{******** jsMath/easy/load.js or the variable root
is set wrong in this file *********}$$
$$\newcommand{\vector}[1]{\left[\begin{array}{c} #1 \end{array}\right]}$$
$$\newenvironment{matrix}{\left[\begin{array}{cccccccccc}} {\end{array}\right]}$$
$$\newcommand{\A}{{\cal A}}$$
$$\newcommand{\W}{{\cal W}}$$
/* Copyright 2008-2011 Research Foundation State University of New York */ /* This file is part of QUB Express. */ /* QUB Express is free software; you can redistribute it and/or modify */ /* it under the terms of the GNU General Public License as published by */ /* the Free Software Foundation, either version 3 of the License, or */ /* (at your option) any later version. */ /* QUB Express is distributed in the hope that it will be useful, */ /* but WITHOUT ANY WARRANTY; without even the implied warranty of */ /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ /* GNU General Public License for more details. */ /* You should have received a copy of the GNU General Public License, */ /* named LICENSE.txt, in the QUB Express program directory. If not, see */ /* <http://www.gnu.org/licenses/>. */ #ifndef SAMPLED_GAUSSIAN_H #define SAMPLED_GAUSSIAN_H #include "qubfast.h" class QUBFAST_API SampledGaussian { protected: double mean, std, resolution, cutoff_std, s2s2i, r2; int max_for_complete, N; double *A, A_out, y2i_m, y2i_b; bool use_log; void make_A(); public: SampledGaussian(); SampledGaussian(const SampledGaussian& other); SampledGaussian& operator=(const SampledGaussian& other); virtual ~SampledGaussian(); void setup(double mean_=0.0, double std_=1.0, double resolution_=1e-3, double cutoff_std_=6.0, int max_for_complete_=1024, bool sample=true, bool use_log=false); double operator()(double x); double G_area(double a, double b); double G_centered(double x); double G_sampled(double x); }; #endif