
Re: Bug in Jacobian Amplitude?
Posted:
Apr 6, 2013 12:10 PM


did schrieb: > > On Friday, 5 April 2013 03:00:38 UTC+2, Waldek Hebisch wrote: > > > > This definition is suboptimal, because it forces discontinuity > > on real line. The definition I recall were continuous > > (increasing) on real line. > > OK, but maple defines a discontinuous > function over the real line. Try > plot(JacobiAM(x,sqrt(3/4)),x=10..20); > plot(arctan(JacobiSN(x,sqrt(3/4)),JacobiCN(x,sqrt(3/4)))JacobiAM(x,sqrt(3/4)),x=10..20); > > MMA, on the other hand, gives a > continuous increasing function. > > Does it mean that maple implement > the Jacobi Amplitude via the suboptimal > formula? >
Having neither Maple nor Mathematica installed, I really have no idea if the Maple implementation could be improved. Nor do I have the time to implement the Jacobi amplitude am(u,k) in Derive and play around with it. Hence an answer in general terms:
According to Gradsteyn & Ryzhik 8.14, am(u,k) possesses an infinite number of branch points which form a twodimensional lattice in the complex plane:
u = 2*m*K + (2*n+1)*K'*#i
where K = K(k) and K' = K(k') = K(sqrt(1k^2)) involve the complete elliptic integral of the first kind. These branch points coincide with poles of the Jacobian elliptic functions sn(u,k) = sin(am(u,k)), cn(u,k) = cos(am(u,k)) and dn(u,k) = sqrt(1  k^2*sin(am(u,k))^2). However, the amplitude am(u,k) is periodic only along the imaginary axis with period 4*K'; along the real axis it has an additional linear component, in accordance with d/du am(u,k) = dn(u,k), the period here being 2*K.
For numerical evaluation, am(u,k) must be restricted to a singlevalued function by introducing branch cuts. I looks desirable to me that the pattern of cuts preserves both periods. The straightforward choice is to connect all the branch points in pairs with the cuts approaching the two points at u = + K'*#i from opposite directions, but this still leaves infinitely many possibilities: cuts aligned with the real axis; cuts aligned with the imaginary axis; and finally diagonal orientations. Once the orientation is decided on, periodicity along both axes would generate all other cuts.
Obviously the Mathematica and Maple programmers have placed their branch cuts differently, and the actual placement shouldn't be hard to establish by colorcoded 3D plots. I concur with Waldek that continuity of am(u,k) on the real line is desirable, which would preclude cuts crossing the real axis. Continuity should probably be abandoned if it cannot be reconciled with having sn(u,k) = sin(am(u,k)) and cn(u,k) = cos(am(u,k)) hold for all complex u and all complex k. The details of all this remain for the Maple and Mathematica programmers to work out  one would only wish they came up with the same answer!
Martin.

