Ticket #4102: trac_4102-bessel_doctest_fixes.patch

File trac_4102-bessel_doctest_fixes.patch, 5.5 KB (added by burcin, 8 years ago)
  • sage/functions/bessel.py

    # HG changeset patch
    # User Burcin Erocal <burcin@erocal.org>
    # Date 1371652151 -7200
    #      Wed Jun 19 16:29:11 2013 +0200
    # Node ID 8dee7a1a3ce252db24e0c27567cb8d3ce96047cc
    # Parent  0864d18c94005e75fb3e69128e3f6d3ec5f69b74
    Fix doctests after ordering changes in Pynac.
    
    diff --git a/sage/functions/bessel.py b/sage/functions/bessel.py
    a b  
    9999        sage: bessel_J(0, 0)
    100100        bessel_J(0, 0)
    101101        sage: bessel_J(0, x).diff(x)
    102         1/2*bessel_J(-1, x) - 1/2*bessel_J(1, x)
     102        -1/2*bessel_J(1, x) + 1/2*bessel_J(-1, x)
    103103
    104104        sage: N(bessel_J(0, 0), digits = 20)
    105105        1.0000000000000000000
     
    133133        sage: a, b = var('a, b')
    134134        sage: diffeq = x^2*diff(y,x,x) + x*diff(y,x) + x^2*y == 0
    135135        sage: f = desolve(diffeq, y, [1, a, b]); f
    136         (a*bessel_Y(1, 1) + b*bessel_Y(0, 1))*bessel_J(0, x)/(bessel_J(0, 1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1)) - (a*bessel_J(1, 1) + b*bessel_J(0, 1))*bessel_Y(0, x)/(bessel_J(0, 1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1))
     136        (a*bessel_Y(1, 1) + b*bessel_Y(0, 1))*bessel_J(0, x)/(bessel_J(0,
     137        1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1)) -
     138        (a*bessel_J(1, 1) + b*bessel_J(0, 1))*bessel_Y(0, x)/(bessel_J(0,
     139        1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1))
     140
    137141
    138142    For more examples, see the docstring for :meth:`Bessel`.
    139143
     
    246250
    247251        sage: f = bessel_J(2, x)
    248252        sage: f.diff(x)
    249         1/2*bessel_J(1, x) - 1/2*bessel_J(3, x)
     253        -1/2*bessel_J(3, x) + 1/2*bessel_J(1, x)
    250254
    251255    Comparison to a well-known integral representation of `J_1(1)`::
    252256
     
    355359
    356360            sage: f(z) = bessel_J(10, z)
    357361            sage: derivative(f, z)
    358             z |--> 1/2*bessel_J(9, z) - 1/2*bessel_J(11, z)
     362            z |--> -1/2*bessel_J(11, z) + 1/2*bessel_J(9, z)
    359363        """
    360364        return (bessel_J(n - 1, x) - bessel_J(n + 1, x)) / Integer(2)
    361365
     
    419423
    420424        sage: f = bessel_Y(2, x)
    421425        sage: f.diff(x)
    422         1/2*bessel_Y(1, x) - 1/2*bessel_Y(3, x)
     426        -1/2*bessel_Y(3, x) + 1/2*bessel_Y(1, x)
    423427
    424428    High precision and complex valued inputs (see :trac:`4230`)::
    425429
     
    515519
    516520            sage: f(x) = bessel_Y(10, x)
    517521            sage: derivative(f, x)
    518             x |--> 1/2*bessel_Y(9, x) - 1/2*bessel_Y(11, x)
     522            x |--> -1/2*bessel_Y(11, x) + 1/2*bessel_Y(9, x)
    519523        """
    520524        return (bessel_Y(n - 1, x) - bessel_Y(n + 1, x)) / Integer(2)
    521525
     
    563567
    564568        sage: f = bessel_I(2, x)
    565569        sage: f.diff(x)
    566         1/2*bessel_I(1, x) + 1/2*bessel_I(3, x)
     570        1/2*bessel_I(3, x) + 1/2*bessel_I(1, x)
    567571
    568572    Special identities that bessel_I satisfies::
    569573
    570574        sage: bessel_I(1/2, x)
    571         sqrt(1/(pi*x))*sqrt(2)*sinh(x)
     575        sqrt(2)*sqrt(1/(pi*x))*sinh(x)
    572576        sage: eq = bessel_I(1/2, x) == bessel_I(0.5, x)
    573577        sage: eq.test_relation()
    574578        True
    575579        sage: bessel_I(-1/2, x)
    576         sqrt(1/(pi*x))*sqrt(2)*cosh(x)
     580        sqrt(2)*sqrt(1/(pi*x))*cosh(x)
    577581        sage: eq = bessel_I(-1/2, x) == bessel_I(-0.5, x)
    578582        sage: eq.test_relation()
    579583        True
     
    688692
    689693            sage: f(z) = bessel_I(10, x)
    690694            sage: derivative(f, x)
    691             z |--> 1/2*bessel_I(9, x) + 1/2*bessel_I(11, x)
     695            z |--> 1/2*bessel_I(11, x) + 1/2*bessel_I(9, x)
    692696        """
    693697        return (bessel_I(n - 1, x) + bessel_I(n + 1, x)) / Integer(2)
    694698
     
    737741
    738742        sage: f = bessel_K(2, x)
    739743        sage: f.diff(x)
    740         1/2*bessel_K(1, x) + 1/2*bessel_K(3, x)
     744        1/2*bessel_K(3, x) + 1/2*bessel_K(1, x)
    741745
    742746        sage: bessel_K(1/2, x)
    743747        bessel_K(1/2, x)
    744748        sage: bessel_K(1/2, -1)
    745749        bessel_K(1/2, -1)
    746750        sage: bessel_K(1/2, 1)
    747         sqrt(pi)*sqrt(1/2)*e^(-1)
     751        sqrt(1/2)*sqrt(pi)*e^(-1)
    748752
    749753    Examples of asymptotic behavior::
    750754
     
    873877
    874878            sage: f(x) = bessel_K(10, x)
    875879            sage: derivative(f, x)
    876             x |--> 1/2*bessel_K(9, x) + 1/2*bessel_K(11, x)
     880            x |--> 1/2*bessel_K(11, x) + 1/2*bessel_K(9, x)
    877881        """
    878882        return (bessel_K(n - 1, x) + bessel_K(n + 1, x)) / Integer(2)
    879883
     
    951955
    952956        sage: f(x) = Bessel(0, 'J')(x)
    953957        sage: derivative(f, x)
    954         x |--> 1/2*bessel_J(-1, x) - 1/2*bessel_J(1, x)
     958        x |--> -1/2*bessel_J(1, x) + 1/2*bessel_J(-1, x)
    955959        sage: derivative(f, x, x)
    956         x |--> 1/4*bessel_J(-2, x) - 1/2*bessel_J(0, x) + 1/4*bessel_J(2, x)
     960        x |--> 1/4*bessel_J(2, x) - 1/2*bessel_J(0, x) + 1/4*bessel_J(-2, x)
    957961
    958962    Verify that `J_0` satisfies Bessel's differential equation numerically
    959963    using the ``test_relation()`` method::
     
    979983        sage: y = function('y', x)
    980984        sage: diffeq = x^2*diff(y,x,x) + x*diff(y,x) + x^2*y == 0
    981985        sage: f = desolve(diffeq, y, [1, 1, 1]); f
    982         (bessel_Y(0, 1) + bessel_Y(1, 1))*bessel_J(0, x)/(bessel_J(0, 1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1)) - (bessel_J(0, 1) + bessel_J(1, 1))*bessel_Y(0, x)/(bessel_J(0, 1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1))
    983 
     986        (bessel_Y(1, 1) + bessel_Y(0, 1))*bessel_J(0, x)/(bessel_J(0,
     987        1)*bessel_Y(1, 1) - bessel_J(1, 1)*bessel_Y(0, 1)) - (bessel_J(1,
     988        1) + bessel_J(0, 1))*bessel_Y(0, x)/(bessel_J(0, 1)*bessel_Y(1, 1)
     989        - bessel_J(1, 1)*bessel_Y(0, 1))
    984990        sage: f.subs(x=1).n() # numerical verification
    985991        1.00000000000000
    986992        sage: fp = f.diff(x)