From dde379099fd0696fa018fd92e06ffb94a39e667f Mon Sep 17 00:00:00 2001 From: Jo Bovy Date: Wed, 28 Nov 2018 18:45:11 -0500 Subject: [PATCH] For scipy v>= 0.18, get logsumexp from scipy.special; fixes #364 --- galpy/df/streamdf.py | 4 +++- galpy/orbit/FullOrbit.py | 4 +++- galpy/potential/DiskSCFPotential.py | 10 +++++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/galpy/df/streamdf.py b/galpy/df/streamdf.py index a434fa3f7..02ba218f2 100644 --- a/galpy/df/streamdf.py +++ b/galpy/df/streamdf.py @@ -8,8 +8,10 @@ for v in scipy.__version__.split('.')] if _SCIPY_VERSION[0] < 1 and _SCIPY_VERSION[1] < 10: #pragma: no cover from scipy.maxentropy import logsumexp -else: +elif _SCIPY_VERSION[0] < 1 and _SCIPY_VERSION[1] < 19: from scipy.misc import logsumexp +else: #pragma: no cover + from scipy.special import logsumexp from galpy.orbit import Orbit from .df import df, _APY_LOADED from galpy.util import bovy_coords, fast_cholesky_invert, \ diff --git a/galpy/orbit/FullOrbit.py b/galpy/orbit/FullOrbit.py index 0bd9d2824..6ca2dba7f 100644 --- a/galpy/orbit/FullOrbit.py +++ b/galpy/orbit/FullOrbit.py @@ -7,8 +7,10 @@ for v in scipy.__version__.split('.')] if _SCIPY_VERSION[0] < 1 and _SCIPY_VERSION[1] < 10: #pragma: no cover from scipy.maxentropy import logsumexp -else: +elif _SCIPY_VERSION[0] < 1 and _SCIPY_VERSION[1] < 19: from scipy.misc import logsumexp +else: #pragma: no cover + from scipy.special import logsumexp from galpy.potential.Potential import _evaluateRforces, _evaluatezforces,\ evaluatePotentials, _evaluatephiforces, evaluateDensities, _check_c from galpy.potential.DissipativeForce import _isDissipative diff --git a/galpy/potential/DiskSCFPotential.py b/galpy/potential/DiskSCFPotential.py index 4b26807d3..493b4f2b6 100644 --- a/galpy/potential/DiskSCFPotential.py +++ b/galpy/potential/DiskSCFPotential.py @@ -3,7 +3,15 @@ ############################################################################### import copy import numpy -from scipy.misc import logsumexp +import scipy +_SCIPY_VERSION= [int(v.split('rc')[0]) + for v in scipy.__version__.split('.')] +if _SCIPY_VERSION[0] < 1 and _SCIPY_VERSION[1] < 10: #pragma: no cover + from scipy.maxentropy import logsumexp +elif _SCIPY_VERSION[0] < 1 and _SCIPY_VERSION[1] < 19: + from scipy.misc import logsumexp +else: #pragma: no cover + from scipy.special import logsumexp from .Potential import Potential, _APY_LOADED from .SCFPotential import SCFPotential, \ scf_compute_coeffs_axi, scf_compute_coeffs