#include "numerics.h"
Functions | |
int | integrateOdes (DoubleVector &ystart, double from, double to, double eps, double h1, double hmin, DoubleVector(*derivs)(double, const DoubleVector &), int(*rkqs)(DoubleVector &y, const DoubleVector &dydx, double *x, double htry, double eps, DoubleVector &yscal, double *hdid, double *hnext, DoubleVector(*derivs)(double, const DoubleVector &))) |
Organises integration of 1st order system of ODEs. | |
int | odeStepper (DoubleVector &y, const DoubleVector &dydx, double *x, double htry, double eps, DoubleVector &yscal, double *hdid, double *hnext, DoubleVector(*derivs)(double, const DoubleVector &)) |
organises the variable step-size for Runge-Kutta evolution | |
void | rungeKuttaStep (const DoubleVector &y, const DoubleVector &dydx, double x, double h, DoubleVector &yout, DoubleVector &yerr, DoubleVector(*derivs)(double, const DoubleVector &)) |
double | calcDerivative (double(*func)(double), double x, double h, double *err) |
double | findMinimum (double ax, double bx, double cx, double(*f)(double), double tol, double *xmin) |
f is user-defined function, minimum value returned in xmin | |
double | bIntegral (int n1, double p, double m1, double m2, double mt) |
Returns real part of b function, less accurate than analytic expressions. | |
double | b0 (double p, double m1, double m2, double q) |
Passarino-Veltman function definition. | |
double | b1 (double p, double m1, double m2, double q) |
Passarino-Veltman function definition. | |
double | b22 (double p, double m1, double m2, double q) |
Passarino-Veltman function definition. | |
double | d0 (double m1, double m2, double m3, double m4) |
Passarino-Veltman function definition. | |
double | d27 (double m1, double m2, double m3, double m4) |
Passarino-Veltman function definition. | |
double | c0 (double m1, double m2, double m3) |
Passarino-Veltman function definition. | |
double | gasdev (long &idum) |
double | ran1 (long &idum) |
double | cauchyRan (long &idum) |
int | bin (double data, double start, double end, int numBins) |
double | logOfSum (double a, double b) |
Adds logs of two numbers in a more careful way that avoids underflow. |
Revision 1.7 2005/06/16 13:57:04 allanach Added a Cauchy-distributed random number generator
Revision 1.6 2005/05/30 14:22:14 allanach Fixed stau mixing in ISAWIG interface to 7.64
Revision 1.5 2005/05/13 16:07:27 allanach Edited precision due to double precision
Revision 1.4 2005/04/13 14:53:54 allanach Corrected binning procedure so it does what you expect
Revision 1.3 2005/04/12 10:44:20 allanach Added bin function to calculate the bin number of some data
Revision 1.2 2005/04/11 14:06:36 allanach Added random number routines
Revision 1.18 2004/01/15 13:54:54 allanach New heaer style implemented
Revision 1.17 2003/08/19 14:26:22 allanach Changing lowOrg to be more sensible about gauge unification. Should now be called with POSITIVE mgut and a flag for gauge unification.
Revision 1.16 2003/07/28 12:11:37 allanach More error trapping, and rearranging rpvsoftsusy to use correct Higgs VEV (which is sometimes called at MZ)
Revision 1.15 2003/07/25 13:39:15 allanach Trapped errors properly rather than exiting
Revision 1.14 2003/05/20 15:19:40 allanach doxygen comment style implemented
Revision 1.13 2003/03/25 17:03:05 allanach Added extra case for b1(0,m1,0,q)
Revision 1.12 2003/02/21 13:02:07 allanach Changed headings to new conventions
Revision 1.10 2002/12/19 18:26:40 allanach Fixed numerical rounding error in d27 function
Revision 1.7 2002/10/14 17:14:29 allanach Bug-fixed c0 function
Revision 1.6 2002/09/09 10:42:54 allanach TOLERANCE replaces EPS as being more user-friendly
Revision 1.5 2002/09/03 14:16:44 allanach Taken PRINTOUT, MIXING, TOLERANCE out of def.h to make it quicker to compile once they are changed.
Revision 1.4 2002/07/30 12:57:31 allanach SOFTSUSY1.5
Revision 1.3 2002/04/18 14:32:05 allanach Changed RGEs and anomalous dimensions to be compatible with new notation; started implementation of rewsb in R-parity violation
Revision 1.6 2001/10/04 19:26:34 allanach New version deals with AMSB correctly
Revision 1.4 2001/09/28 13:50:13 allanach More careful treatment of limits in Passarino-Veltman functions b0, b1.
Revision 1.3 2001/08/08 09:52:33 allanach Added dilogarithm function - could be speeded up....
Revision 1.2 2001/07/18 14:42:51 allanach Added proper header info
|
Returns the number of a bin that the data is in: from 1 to numBins in the range (bins other than this range are also possible - you must deal with them outside the function...) |
|
func is user-supplied, h is an estimate of what step-size to start with and err returns error flags |
|
Cauchy distribution ie 1 / [ pi gamma (1 + x^2/gamma^2) ]. For a width, you must multiply the x coming out by the width. |
|
Gaussian deviated random number, mean 0 variance 1. Don't re-set idum once you've initially set it. Initialise with a NEGATIVE integer |
|
Normally distributed random number between 0 and 1. Don't re-set idum once you've initially set it. Initialise with a NEGATIVE integer |
|
A single step of Runge Kutta (5th order), input: y and dydx (derivative of y), x is independent variable. yout is value after step. derivs is a user-supplied function |