testVavilov.cxx

Go to the documentation of this file.
00001 #include <iostream>
00002 #include <iomanip>
00003 #include <cmath>
00004 #include <cstdlib>
00005 #include <string>
00006 #include <sstream>
00007 #include "Math/VavilovAccurate.h"
00008 #include "Math/VavilovFast.h"
00009 #include "VavilovTest.cxx"
00010 #include "TFile.h"
00011 #include "TH2F.h"
00012 
00013 int testVavilov() {
00014 
00015    ROOT::Math::Vavilov *v;
00016    //bool fast = false;
00017    int result = 0;
00018    int result_pdf[2], result_cdf[2], result_quant[2];
00019    
00020    for (int i = 0; i < 2; ++i) {
00021    
00022       if (i) {
00023         v = new ROOT::Math::VavilovFast (1, 1);
00024       }
00025       else {
00026         v = new ROOT::Math::VavilovAccurate (1, 1);
00027       }
00028       result += (result_pdf[i] = ROOT::Math::VavilovTest::PdfTest (*v, std::cout));
00029       result += (result_cdf[i] = ROOT::Math::VavilovTest::CdfTest (*v, std::cout));
00030       result += (result_quant[i] = ROOT::Math::VavilovTest::QuantileTest (*v, std::cout));
00031    }
00032    
00033    for (int i = 0; i < 2; ++i) {
00034       if (i) {
00035         std::cout << "\nResults for VavilovFast:\n";
00036       }
00037       else {
00038         std::cout << "\nResults for VavilovAccurate:\n";
00039       }
00040       std::cout << "PdfTest:      ";
00041       if (result_pdf[i] == 0) 
00042         std::cout << "PASS\n";
00043       else
00044         std::cout << "FAIL: " << result_pdf[i] << " / 10\n";
00045       std::cout << "CdfTest:      ";
00046       if (result_cdf[i] == 0) 
00047         std::cout << "PASS\n";
00048       else
00049         std::cout << "FAIL: " << result_cdf[i] << " / 10\n";
00050       std::cout << "QuantileTest: ";
00051       if (result_quant[i] == 0) 
00052         std::cout << "PASS\n";
00053       else
00054         std::cout << "FAIL: " << result_quant[i] << " / 20\n";
00055    }
00056    std::cout << "\n\nOverall:      ";
00057    if (result == 0) 
00058      std::cout << "PASS\n";
00059    else
00060      std::cout << "FAIL: " << result << " / 80\n";
00061    
00062    return result;
00063 }
00064    
00065 int main() {
00066    return testVavilov();
00067 }

Generated on Tue Jul 5 14:35:00 2011 for ROOT_528-00b_version by  doxygen 1.5.1