aboutsummaryrefslogtreecommitdiff
path: root/vquad/core.py
diff options
context:
space:
mode:
authorChristoph Groth <christoph.groth@cea.fr>2018-01-19 15:50:58 +0100
committerChristoph Groth <christoph.groth@cea.fr>2018-02-23 12:55:00 +0100
commitee6289434905c0b3674e0f071ab0e27f77dc1417 (patch)
tree0c1d68d7978aa9e6dfadf0d837c449beb9dbc7de /vquad/core.py
parent4c51624ae1e69a2084c012d227cb52289154f8bb (diff)
get rid of nr_points
Diffstat (limited to 'vquad/core.py')
-rw-r--r--vquad/core.py10
1 files changed, 3 insertions, 7 deletions
diff --git a/vquad/core.py b/vquad/core.py
index 23f1c24..7435334 100644
--- a/vquad/core.py
+++ b/vquad/core.py
@@ -61,10 +61,9 @@ def _calc_coeffs(vals, level):
class DivergentIntegralError(ValueError):
- def __init__(self, msg, igral, err, nr_points):
+ def __init__(self, msg, igral, err):
self.igral = igral
self.err = err
- self.nr_points = nr_points
super().__init__(msg)
@@ -131,7 +130,6 @@ class Vquad:
self.ivals = [ival] # Active intervals
self.attic = [] # Inactive intervals
self.f = f
- self.nr_points = len(vals)
self.igral_excess = 0
self.err_excess = 0
@@ -143,7 +141,6 @@ class Vquad:
children = [_Interval(ival.a, m, min_level, depth),
_Interval(m, ival.b, min_level, depth)]
points = np.concatenate([child.points()[1:-1] for child in children])
- self.nr_points += len(points)
valss = np.empty((2, tbls.sizes[min_level]))
valss[:, 0] = ival.vals[0], f_center
valss[:, -1] = f_center, ival.vals[-1]
@@ -158,7 +155,7 @@ class Vquad:
'[{}, {}]! (h={})')
raise DivergentIntegralError(
msg.format(child.a, child.b, child.b - child.a),
- child.igral * np.inf, None, self.nr_points)
+ child.igral * np.inf, None)
return children
def refine(self, ival):
@@ -168,7 +165,6 @@ class Vquad:
vals = np.empty(points.shape)
vals[0::2] = ival.vals
vals[1::2] = self.f(points[1::2])
- self.nr_points += (len(vals) - 1) // 2
ival.interpolate(vals, ival.coeffs)
return points
@@ -219,7 +215,7 @@ class Vquad:
or err < abs(igral) * tol
or err - self.err_excess < abs(igral) * tol < self.err_excess
or not self.ivals):
- return igral, err, self.nr_points
+ return igral, err
def vquad(f, a, b, tol):