Example program to test transformable function.
More...
#include <string>
#include <iostream>
#include <iomanip>
#include "TMath.h"
#include "TRandom.h"
#include "JTools/JFunction1D_t.hh"
#include "JTools/JTransformableMultiFunction.hh"
#include "JTools/JFunctionalMap_t.hh"
#include "JTools/JQuantile.hh"
#include "Jeep/JPrint.hh"
#include "Jeep/JParser.hh"
#include "Jeep/JMessage.hh"
Go to the source code of this file.
|
int | main (int argc, char **argv) |
|
Example program to test transformable function.
- Author
- mdejong
Definition in file JTransformableFunction.cc.
int main |
( |
int |
argc, |
|
|
char ** |
argv |
|
) |
| |
Definition at line 163 of file JTransformableFunction.cc.
175 JParser<> zap(
"Example program to test transformable function.");
184 catch(
const exception &error) {
185 FATAL(error.what() << endl);
188 if (numberOfEvents <= 0) {
189 FATAL(
"No events." << endl);
193 const double xmin = 0.1;
194 const double xmax = 1.0;
195 const double dx = (
xmax -
xmin) / 3;
199 for (
double x =
xmin;
x <
xmax + 0.5*dx;
x += dx) {
201 const double ymin = -5.0 *
xmax;
202 const double ymax = +5.0 *
xmax;
205 for (
double y = ymin;
y < ymax + 0.5*dy;
y += dy) {
210 h2.setExceptionHandler(
new typename function_type::JDefaultResult(
JMATH::zero));
213 h2.transform(JTransformer_t());
225 const double ymin = -5.0 *
xmax;
226 const double ymax = +5.0 *
xmax;
228 for (
int i = 0;
i != numberOfEvents; ++
i) {
230 const double x = gRandom->Uniform(
xmin,
xmax);
231 const double y = gRandom->Uniform(ymin, ymax);
235 const result_type value = h2(x,y);
237 const double f = f2(x,y);
238 const double fp = g2(x,y);
239 const double v = G2(x,y);
241 Q[0].put(value.f - f);
242 Q[1].put(value.fp - fp);
243 Q[2].put(value.v - v);
245 catch(
const std::exception& error) {}
252 for (
int i = 0;
i !=
sizeof(
Q)/
sizeof(
Q[0]); ++
i) {
253 cout <<
" " << setw(10) <<
Q[
i].getTitle();
258 for (
int i = 0;
i !=
sizeof(
Q)/
sizeof(
Q[0]); ++
i) {
264 for (
int i = 0;
i !=
sizeof(
Q)/
sizeof(
Q[0]); ++
i) {
Utility class to parse command line options.
Q(UTCMax_s-UTCMin_s)-livetime_s
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
static const JZero zero
Function object to assign zero value.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Auxiliary data structure for average.
Auxiliary data structure for floating point format specification.
int numberOfBins
number of bins for average CDF integral of optical module