15double getAz(
double xValue,
const double charField) {
16 const double b = xValue / charField;
17 const double bSq = pow(b, 2);
18 const double A_z = (3.0 / 4.0) - (1.0 / (4.0 * bSq)) +
19 (pow(bSq - 1.0, 2.0) / (8.0 * pow(b, 3.0))) * log(
fabs((b + 1.0) / (b - 1.0)));
23double getDiffAz(
double xValue,
const double charField) {
24 double diffcharfield = -xValue / pow(charField, 2);
25 double b = xValue / charField;
26 double diffb = ((pow(b, 2) - 1) * ((pow(b, 2) + 3) * log((b + 1.0) / (b - 1.0)) - (2 * b))) / (8 * pow(b, 4));
27 double diffAz = diffcharfield * diffb;
28 if (!std::isfinite(diffAz)) {
34double getActivationFunc(
double xValue,
const double attemptRate,
const double barrier,
const double unitMultiply) {
35 return attemptRate * exp(-(unitMultiply * barrier) / xValue);
39 return exp(-(unitMultiply * barrier) / xValue);
42double getBarrierDiff(
double xValue,
const double attemptRate,
const double barrier,
const double unitMultiply) {
43 return -(attemptRate * unitMultiply * (exp(-(unitMultiply * barrier) / xValue))) / xValue;
double MANTID_CURVEFITTING_DLL getDiffAz(double xValue, const double charField)
double MANTID_CURVEFITTING_DLL getAttemptRateDiff(double xValue, const double barrier, const double unitMultipy)
double MANTID_CURVEFITTING_DLL getBarrierDiff(double xValue, const double attemptRate, const double barrier, const double unitMultipy)
double MANTID_CURVEFITTING_DLL getAz(double xValue, const double charField)
double MANTID_CURVEFITTING_DLL getActivationFunc(double xValue, const double attemptRate, const double barrier, const double unitMultipy)