/* -*-c++-*- * Author: Clare Quarman, cquarman@pp.rhul.ac.uk * Date: Thurs 13 Nov 2003 * Purpose: C++ wrapper for QCDNUM1612 * All the functions defined here are designed to act * just like their QCDNUM counterparts do. * Refer to QCDNUM writeup and manual for further details. */ #ifndef QCDNUM_H #define QCDNUM_H #include #include using std::string; namespace FortranIO{ void openFileWithLun(int lun, string filename); void closeFileWithLun(int lun); void writeToFileWithLun(int lun, string output); } namespace QCDnum{ void qninit(); void qnvers1(string& s, bool& l, int& i, int& j); void qnvers2(char* c, bool& l, int& i, int& j); void qnvers3(string& s, bool& l, int& i, int& j); void qnvers4(string& s, bool& l, int& i, int& j); void qntime(string s); void qnlset(string s, bool l); void qniset(string s, int i); void qnrset(string s, double x); void qnlget(string s, bool& l); void qniget(string s, int& i); void qnrget(string s, double& x); void grxdef(int i, double x); void grqdef(int i, double x, double y); void grxinp(double x[], int i); void grqinp(double x[], int i); /* TO DO: void grxnul_(); //wrapper to write void grqnul_(); //wrapper to write void grmxmq_(int&, int&); //wrapper to write */ void grgive(int& i, double& x, double& y , int& j, double& z, double& w); /////////////////////////////////////HERE//////////////////////////////////// /* void grxout_(double[]); //wrapper to write void grqout_(double[]); //wrapper to write */ double xfromix(int i); double qfromiq(int i); /* int ixfromx_(double&); //wrapper to write */ int iqfromq(double x); /* int ixnearx_(double&); //wrapper to write int iqnearq_(double&); //wrapper to write void grcuts_(double&, double&, double&, double&);//wrapper to write int ifailij_(int&, int&); //wrapper to write int ifailxq_(double&, double&);//wrapper to write */ void qnfilw(int i, int j); void qndump(int lun); void qnread(int lun, int i , int& j); void qnbook(int i, string s); void qnlinc(int i, string s, int j, double x[]); /* int ipdfid_(char*, long int); //wrapper to write */ void qthres(double x, double y); /* int nflget_(int&); //wrapper to write double qalfas_(double&, double&, int&, int&); //wrapper to write */ void qnpset(string s, int i, int j, double x); /* void qaddsi_(char*, int&, double&, long int);//wrapper to write void qnpnul_(char*, ling int); //wrapper to write */ void evolsg(int i, int j, int k); void evolnp(string s, int i, int j, int k); void evolnm(string s, int i, int j, int k); void evplus(string s, int i, int j, int k); /* double qpdfij_(char*, int&, int&, int&, long int); //wrapper to write */ double qpdfxq(string s, double x, double y, int & i); /* double qstfij_(char*, char*, int&, int&, int&, long int, long int); //wrapper to write */ double qstfxq(string s, string t, double x, double y, int& i); /* void qfmark_(double&, double&); //wrapper to write void qfmnul_(); //wrapper to write void stfast_(char*, char*, long int, long int); //wrapper to write void stfclr_(); //wrapper to write */ void qprint(int i, string s); void endQCDnum(); } #endif