Hex  1.0
Hydrogen-electron collision solver
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Macros | Variables
potential.cpp File Reference
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <gsl/gsl_sf.h>
#include "arrays.h"
#include "potential.h"
Include dependency graph for potential.cpp:

Macros

#define U_THRESHOLD   1e-100
 
#define U_MAX_ITERS   1000
 

Variables

const rArrays Ucoeffs
 U polynomial coefficients. More...
 

Macro Definition Documentation

#define U_MAX_ITERS   1000
#define U_THRESHOLD   1e-100

Variable Documentation

const rArrays Ucoeffs
Initial value:
= {
{},
{ -1. },
{ -0.125, -0.25, -0.25 },
{ -0.001828989483310471, 0.005486968449931412, -0.04938271604938271, -0.1481481481481481, -0.5555555555555556 },
{ -6.781684027777778E-6, 1.3563368055555555E-4, -0.00146484375, 0.00390625, -0.0234375, -0.09375, -0.4375 },
{ -9.102222222222223E-9, 5.006222222222222E-7, -1.2288E-5, 1.4563555555555555E-4, -0.001024, 0.00256, -0.0128, -0.064, -0.36 }
}

Can be generated in Maxima CAS.

* R(n,l,r) := sqrt((2/n)^3 * (n-l-1)!/(2*n*(n+l)!)) * gen_laguerre(n-l-1,2*l+1,2*r/n) * (2*r/n)^l * exp(-r/n);
* Ucoeffs(n) := block ( [ tmp ],
* tmp : expand(integrate(R(n,0,r)^2*r^2*(1/r-1/x), r, x, inf)*exp(2*x/n)+1/x),
* reverse(makelist(float(coeff(tmp, x, i)), i, 0, length(tmp)-1))
* );
* Ucoeffs(1);
* Ucoeffs(2);
* ...
*