def calc_pts_lag(npts=<NUM_LIT:20>):
scl = { <NUM_LIT:15>:<NUM_LIT>,<EOL><NUM_LIT:20>:<NUM_LIT>,<EOL><NUM_LIT>:<NUM_LIT>}[npts]<EOL>pts0, wts0 = np.polynomial.laguerre.laggauss(npts)<EOL>pts = np.sinh(pts0*scl)<EOL>wts = scl*wts0*np.cosh(pts0*scl)*np.exp(pts0)<EOL>return pts, wts<EOL>
Returns Gauss-Laguerre quadrature points rescaled for line scan integration

Parameters
----------
    npts : {15, 20, 25}, optional
        The number of points to

Notes
-----
    The scale is set internally as the best rescaling for a line scan
    integral; it was checked numerically for the allowed npts.
    Acceptable pts/scls/approximate line integral scan error:
    (pts,   scl  )      :         ERR
    ------------------------------------
    (15, 0.072144)      :       0.002193
    (20, 0.051532)      :       0.001498
    (25, 0.043266)      :       0.001209

    The previous HG(20) error was ~0.13ish