[SciPy-dev] RFR 503, 849: more robust implementation of real Bessel I_v

Nils Wagner nwagner at iam.uni-stuttgart.de
Thu Feb 26 05:35:25 EST 2009


On Thu, 26 Feb 2009 10:06:27 +0000 (UTC)
  Pauli Virtanen <pav at iki.fi> wrote:
> Thu, 26 Feb 2009 08:30:18 +0100, Nils Wagner wrote:
>> Pauli Virtanen <pav at iki.fi> wrote:
>>> 	http://codereview.appspot.com/20078
>>> 	http://github.com/pv/scipy-work/tree/ticket-503-special-iv-fix
> [clip]
>> How can I apply your patch ?
> 
> There's the "Download raw patch set" on the codereview 
>page, on top of 
> the table containing the individual patches. Apply it 
>with
> 
> 	patch -p1 < issue_20078_1.diff
> 
> on top of SVN checkout.
> 
>    ***
> 
> Alternatively, check out the git branch: first, get the 
>SVN mirror
> 
> 	git clone git://github.com/pv/scipy-svn.git scipy.git
> 
> This takes some time, as the branch contains the whole 
>history of
> Scipy, but you need to do this only once.
> 
> Then get my branch:
> 
> 	cd scipy.git
> 	git remote add pauli git://github.com/pv/scipy-work.git
> 	git fetch pauli
> 	git remote show pauli
> 
> Switch the working tree to it:
> 
> 	git checkout pauli/ticket-503-special-iv-fix
> 
> Examine what was done there:
> 
> 	git log master..
> 	git diff master
> 	git show bb21c
> 	git show 7f738
> 
> If you want to hack on it yourself, work on a branch of 
>your own:
> 
> 	git checkout -b ticket-503-special-iv-fix
> 
> If you want to get the SVN tags and branches, tell git 
>you want them:
> 
> 	cd scipy.git
> 	git remote rm origin
> 	git remote add --mirror origin 
>git://github.com/pv/scipy-svn.git
> 	git fetch
> 
> 	git branch -r
> 	git log tags/0.7.0..trunk
> 	git diff tags/0.7.0 trunk
> 
> -- 
> Pauli Virtanen
> 
> _______________________________________________
> Scipy-dev mailing list
> Scipy-dev at scipy.org
> http://projects.scipy.org/mailman/listinfo/scipy-dev

Hi Pauli,

Thank you very much for your detailed instructions.
They are really helpful.

I have applied the patch.

Here is the output of scipy.test()

======================================================================
FAIL: test_yn_zeros (test_basic.TestBessel)
----------------------------------------------------------------------
Traceback (most recent call last):
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/scipy/special/tests/test_basic.py", 
line 1598, in test_yn_zeros
     488.98055964441374646], rtol=1e-19)
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/scipy/special/tests/test_basic.py", 
line 38, in assert_tol_equal
     verbose=verbose, header=header)
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/numpy/testing/utils.py", 
line 295, in assert_array_compare
     raise AssertionError(msg)
AssertionError:
Not equal to tolerance rtol=1e-19, atol=0

(mismatch 100.0%)
  x: array([ 450.136,  463.057,  472.807,  481.274, 
 488.981])
  y: array([ 450.136,  463.057,  472.807,  481.274, 
 488.981])

======================================================================
FAIL: test_ynp_zeros (test_basic.TestBessel)
----------------------------------------------------------------------
Traceback (most recent call last):
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/scipy/special/tests/test_basic.py", 
line 1604, in test_ynp_zeros
     assert_tol_equal(yvp(443, ao), 0, atol=1e-15)
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/scipy/special/tests/test_basic.py", 
line 38, in assert_tol_equal
     verbose=verbose, header=header)
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/numpy/testing/utils.py", 
line 295, in assert_array_compare
     raise AssertionError(msg)
AssertionError:
Not equal to tolerance rtol=1e-07, atol=1e-15

(mismatch 100.0%)
  x: array([  1.239e-10,  -8.119e-16,   3.608e-16, 
  5.898e-16,   1.226e-15])
  y: array(0)

======================================================================
FAIL: test_yv_cephes_vs_amos (test_basic.TestBessel)
----------------------------------------------------------------------
Traceback (most recent call last):
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/scipy/special/tests/test_basic.py", 
line 1664, in test_yv_cephes_vs_amos
     self.check_cephes_vs_amos(yv, yn, rtol=1e-11, 
atol=1e-305)
   File 
"/data/home/nwagner/local/lib/python2.5/site-packages/scipy/special/tests/test_basic.py", 
line 1653, in check_cephes_vs_amos
     assert c2.imag != 0, (v, z)
AssertionError: (301, 1.0)

----------------------------------------------------------------------
Ran 3703 tests in 58.088s

FAILED (KNOWNFAIL=2, SKIP=17, failures=3)
<nose.result.TextTestResult run=3703 errors=0 failures=3>
  
Cheers,
            Nils



More information about the SciPy-Dev mailing list