Jpp 19.3.0-rc.1
the software that should make you happy
Loading...
Searching...
No Matches
JPolynome.cc
Go to the documentation of this file.
1#include <string>
2#include <iostream>
3#include <iomanip>
4
5#include "JMath/JPolynome.hh"
6
7#include "Jeep/JParser.hh"
8#include "Jeep/JMessage.hh"
9
10
11/**
12 * \file
13 *
14 * Example program to test polynome.
15 * \author mdejong
16 */
17int main(int argc, char **argv)
18{
19 using namespace std;
20 using namespace JPP;
21
22 JPolynome f1;
23 double precision;
24 int debug;
25
26 try {
27
28 JParser<> zap("Example program to test polynome.");
29
30 zap['P'] = make_field(f1);
31 zap['e'] = make_field(precision) = numeric_limits<double>::min();
32 zap['d'] = make_field(debug) = 3;
33
34 zap(argc, argv);
35 }
36 catch(const exception &error) {
37 FATAL(error.what() << endl);
38 }
39
40 ASSERT(!f1.empty());
41
42 DEBUG("polynome: " << f1 << endl);
43 DEBUG("derivative: " << f1.getDerivative() << endl);
44 DEBUG("integral: " << f1.getIntegral() << endl);
45 DEBUG("polynome: " << f1.getDerivative().getIntegral() << endl);
46 DEBUG("polynome: " << f1.getIntegral().getDerivative() << endl);
47
48 ASSERT(f1.equals(f1.getIntegral().getDerivative(), precision));
49
50 return 0;
51}
General purpose messaging.
#define DEBUG(A)
Message macros.
Definition JMessage.hh:62
#define ASSERT(A,...)
Assert macro.
Definition JMessage.hh:90
#define FATAL(A)
Definition JMessage.hh:67
int debug
debug level
Definition JSirene.cc:72
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition JParser.hh:2142
int main(int argc, char **argv)
Definition JPolynome.cc:17
Utility class to parse command line options.
Definition JParser.hh:1698
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
bool equals(const JPolynome_t &P, const double eps=std::numeric_limits< double >::min()) const
Equality.
Definition JPolynome.hh:47
Recursive template class for polynomial function.
Definition JPolynome.hh:165
double getIntegral(const double x) const
Integral value.
Definition JPolynome.hh:276
double getDerivative(const double x) const
Derivative value.
Definition JMathlib.hh:1433