~vcs-imports/numpy/master

« back to all changes in this revision

Viewing changes to numpy/lib/financial.py

  • Committer: Charles Harris
  • Date: 2013-07-12 00:16:42 UTC
  • mfrom: (8144.2.1)
  • Revision ID: git-v1:a053a4372aba0af0bd63ffd5e207baf469cfc7bf
Merge pull request #3518 from charris/use-errstate-context-manager

MAINT: Use np.errstate context manager.

Show diffs side-by-side

added added

removed removed

Lines of Context:
266
266
    (rate, pmt, pv, fv, when) = map(np.asarray, [rate, pmt, pv, fv, when])
267
267
 
268
268
    use_zero_rate = False
269
 
    old_err = np.seterr(divide="raise")
270
 
    try:
 
269
    with np.errstate(divide="raise"):
271
270
        try:
272
271
            z = pmt*(1.0+rate*when)/rate
273
272
        except FloatingPointError:
274
273
            use_zero_rate = True
275
 
    finally:
276
 
        np.seterr(**old_err)
277
274
 
278
275
    if use_zero_rate:
279
276
        return (-fv + pv) / (pmt + 0.0)