42       result_type(
const double __f,
 
   58       operator double()
 const 
   95     inline result_type operator()(
const double x,
 
   99       return result_type(f (
x) * f (
y) * f (z),
 
  100                          fp(
x) * f (
y) * f (z),
 
  101                          f (
x) * fp(
y) * f (z),
 
  102                          f (
x) * f (
y) * fp(z));
 
  113     inline double f(
const double x)
 const 
  115       return __f1.getValue(
x);
 
  125     inline double fp(
const double x)
 const 
  127       return __f1.getDerivative(
x);
 
  142   template<
class JMultiFunction_t>
 
  143   int do_main(
int argc, 
char **argv, 
const char* title)
 
  154       JParser<> zap(
"Example program to test multi-dimensional interpolation with derivatives.");
 
  163     catch(
const exception &error) {
 
  164       FATAL(error.what() << endl);
 
  168     if (numberOfEvents <= 0) { 
FATAL(
"Number of events " << numberOfEvents << endl); }
 
  174     const JFunction3D 
f3(
f1);
 
  176     const double xmin = -1.0;
 
  177     const double xmax = +1.0;
 
  183     for (
double x = 
xmin; 
x < 
xmax + 0.5*dx; 
x += dx) {
 
  184       for (
double y = 
xmin; 
y < 
xmax + 0.5*dx; 
y += dx) {
 
  185         for (
double z = 
xmin; z < 
xmax + 0.5*dx; z += dx) {
 
  200     for (
int i = 0; i != numberOfEvents; ++i) {
 
  202       const double x  = gRandom->Uniform(
xmin, 
xmax);
 
  203       const double y  = gRandom->Uniform(
xmin, 
xmax);
 
  204       const double z  = gRandom->Uniform(
xmin, 
xmax);
 
  206       const          JFunction3D     ::result_type 
u = 
f3(
x,
y,z);
 
  207       const typename JMultiFunction_t::result_type 
v = g3(
x,
y,z);
 
  209       f .put(
u.f   -  
v.f .f .f);
 
  210       fx.put(
u.fx  -  
v.fp.f .f);
 
  211       fy.put(
u.fy  -  
v.f .fp.f);
 
  212       fz.put(
u.fz  -  
v.f .f .fp);
 
  215     cout << endl << title << 
":" << endl;
 
  217     for (
const JQuantile* p : { &f, &fx, &fy, &fz }) {
 
  218       p->print(cout, p == &f);
 
  231 int main(
int argc, 
char **argv)
 
  242     if (do_main<JMultiFunction_t>(argc, argv, 
"Polint") != 0) 
return 1;
 
  251     if (do_main<JMultiFunction_t>(argc, argv, 
"Spline") != 0) 
return 1;
 
Various implementations of functional maps.
 
General purpose messaging.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
double f3(const double x, const double y, const double z)
3D function.
 
int main(int argc, char **argv)
 
int numberOfBins
number of bins for average CDF integral of optical module
 
Utility class to parse command line options.
 
const JPolynome f1(1.0, 2.0, 3.0)
Function.
 
const parameter_list< JPolynome< ID_t, 0 > > JPolynome< ID_t, 0 >::parameters & JPolynome
Set parameters.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Recursive template class for polynomial function.