Question: False result even though having done the right manipulations (Expanding Wronskian of Heun Functions into a series)

Hello,

I have the following problem:

My function is defined by the determinant of 2 Heun functions

If I plot the phase I get something which looks quite what I'm looking for.

To get a better result I thought I would manually carry out the Wronskian as far as possible...

Doing some manipulations I get another form of the Wronskian which in fact should give the same result...

the problem is it doesnt :-(

I've added the spreadsheet. Does anyone know where the problem lies?

Thx Chris

Wronski-Determinant.mw

If I calculate the Wronskian directly over the implemented Heun functions I think I get the right result...

NULL

with(LinearAlgebra)

[`&x`, Add, Adjoint, BackwardSubstitute, BandMatrix, Basis, BezoutMatrix, BidiagonalForm, BilinearForm, CARE, CharacteristicMatrix, CharacteristicPolynomial, Column, ColumnDimension, ColumnOperation, ColumnSpace, CompanionMatrix, ConditionNumber, ConstantMatrix, ConstantVector, Copy, CreatePermutation, CrossProduct, DARE, DeleteColumn, DeleteRow, Determinant, Diagonal, DiagonalMatrix, Dimension, Dimensions, DotProduct, EigenConditionNumbers, Eigenvalues, Eigenvectors, Equal, ForwardSubstitute, FrobeniusForm, GaussianElimination, GenerateEquations, GenerateMatrix, Generic, GetResultDataType, GetResultShape, GivensRotationMatrix, GramSchmidt, HankelMatrix, HermiteForm, HermitianTranspose, HessenbergForm, HilbertMatrix, HouseholderMatrix, IdentityMatrix, IntersectionBasis, IsDefinite, IsOrthogonal, IsSimilar, IsUnitary, JordanBlockMatrix, JordanForm, KroneckerProduct, LA_Main, LUDecomposition, LeastSquares, LinearSolve, LyapunovSolve, Map, Map2, MatrixAdd, MatrixExponential, MatrixFunction, MatrixInverse, MatrixMatrixMultiply, MatrixNorm, MatrixPower, MatrixScalarMultiply, MatrixVectorMultiply, MinimalPolynomial, Minor, Modular, Multiply, NoUserValue, Norm, Normalize, NullSpace, OuterProductMatrix, Permanent, Pivot, PopovForm, QRDecomposition, RandomMatrix, RandomVector, Rank, RationalCanonicalForm, ReducedRowEchelonForm, Row, RowDimension, RowOperation, RowSpace, ScalarMatrix, ScalarMultiply, ScalarVector, SchurForm, SingularValues, SmithForm, StronglyConnectedBlocks, SubMatrix, SubVector, SumBasis, SylvesterMatrix, SylvesterSolve, ToeplitzMatrix, Trace, Transpose, TridiagonalForm, UnitVector, VandermondeMatrix, VectorAdd, VectorAngle, VectorMatrixMultiply, VectorNorm, VectorScalarMultiply, ZeroMatrix, ZeroVector, Zip]

(1)

  NULLwith(VectorCalculus)

[`&x`, `*`, `+`, `-`, `.`, `<,>`, `<|>`, About, AddCoordinates, ArcLength, BasisFormat, Binormal, Compatibility, ConvertVector, CrossProduct, Curl, Curvature, D, Del, DirectionalDiff, Divergence, DotProduct, Flux, GetCoordinateParameters, GetCoordinates, GetNames, GetPVDescription, GetRootPoint, GetSpace, Gradient, Hessian, IsPositionVector, IsRootedVector, IsVectorField, Jacobian, Laplacian, LineInt, MapToBasis, Nabla, Norm, Normalize, PathInt, PlotPositionVector, PlotVector, PositionVector, PrincipalNormal, RadiusOfCurvature, RootedVector, ScalarPotential, SetCoordinateParameters, SetCoordinates, SpaceCurve, SurfaceInt, TNBFrame, Tangent, TangentLine, TangentPlane, TangentVector, Torsion, Vector, VectorField, VectorPotential, VectorSpace, Wronskian, diff, eval, evalVF, int, limit, series]

(2)

yg := Determinant(subs(c = (1+s)/(1-s), q = 2*k^2*s/(1-s)+k*(1+9*s)/(2*(1-s))+k^2+2*k, a = k, b = k+1/2, g = 1/2, d = 2*k+3, s = 1/2, k = -1+I*p*(1/2), t = 1/2, Wronskian([(1-t)^(I*p*(1/2))*HeunG(c, q, a, b, g, d, t), (1-t)^(I*p*(1/2))*exp(-I*ln(2)*p)*HeunG(1-c, -q+a*b, a, b, d, g, 1-t)], t)))

-((1/2)^(((1/2)*I)*p))^2*HeunG(3, -9/2+((3/4)*I)*p-(3/4)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1/2, 1+I*p, 1/2)*exp(-I*ln(2)*p)*HeunGPrime(-2, 5-((3/2)*I)*p+(1/2)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1+I*p, 1/2, 1/2)-((1/2)^(((1/2)*I)*p))^2*exp(-I*ln(2)*p)*HeunG(-2, 5-((3/2)*I)*p+(1/2)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1+I*p, 1/2, 1/2)*HeunGPrime(3, -9/2+((3/4)*I)*p-(3/4)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1/2, 1+I*p, 1/2)

(3)

deltag := argument(yg)

argument(-((1/2)^(((1/2)*I)*p))^2*HeunG(3, -9/2+((3/4)*I)*p-(3/4)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1/2, 1+I*p, 1/2)*exp(-I*ln(2)*p)*HeunGPrime(-2, 5-((3/2)*I)*p+(1/2)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1+I*p, 1/2, 1/2)-((1/2)^(((1/2)*I)*p))^2*exp(-I*ln(2)*p)*HeunG(-2, 5-((3/2)*I)*p+(1/2)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1+I*p, 1/2, 1/2)*HeunGPrime(3, -9/2+((3/4)*I)*p-(3/4)*p^2, -1+((1/2)*I)*p, -1/2+((1/2)*I)*p, 1/2, 1+I*p, 1/2))

(4)

plot(deltag, p = 0 .. 35)

 

Now as mentioned before I tried to calculate the wronskian as far as possible to maybe get a better result.

For this i introduce the first Heun function g:=HeunG(c,q,a,b,g,d,t)=Sum(c_n*t^n)

The other Heun function over the Singularity t=1 shall be h:=Sum(d_m*(1-t)^m)

evaluating at t=1/2

Parse:-ConvertTo1D,

(1-t)^(((1/2)*I)*p)

(5)

the wronskian becomes...

Wronskian(fg,fh)=f^2*Wronskian(g,h)=f^2*(g*h'-g'*h)

g*h'=-Sum(n=0 .. infinty) Sum(m=1 .. infinity) c_n * d_m * m * 2^-(n+m-1)

Now I introduce a new summationindex k=n+m-1 and the sum becomes

g*h'=-Sum(n=0 .. infinty) Sum(k=n .. infinity) c_n * d_(k-n+1) * (k-n+1) * 2^-(k)

Using the Cauchy Product

g*h'=-Sum(k=0 .. infinity) Sum(n=0 bis k) c_n * d_(k-n+1)*(k-n+1)*2^(-k)

 

the other term g'*h is analogous to the first and except for an overall sign the result is quite the same

So:

g'*h = Sum(k=0 .. infinity) Sum(n=0 .. k) c_(k-n+1) * d_n * (k-n+1)*2^(-k)

and therefore

f^2*(g*h'-g'*h) = -2^(-I*p)*Sum(k=0 .. infinity) Sum(n=0 .. k) (c_n*d_(k-n+1)+c_(k-n+1)*d_n)*(k-n+1)*2^(-k)

The recursion relations of the heun functions are:

f_n * c_(n+1) + g_n * c_n + h_n * c_(n-1) = 0

with

f_n=c*(n+1)*(n+g)               (here c is the singularity as above)

g_n=-(q+n(n-1+g)(1+c)+n(c*d+a+b+1-g-d))

h_n=(n-1+a)(n-1+b)

 

Finally I tried to implement it in maple:

Now with c_n=r(n) and d_n=o(n)

r := proc (n) option remember; subs(c = (1+s)/(1-s), q = 2*k^2*s/(1-s)+k*(1+9*s)/(2-2*s)+k^2+2*k, a = k, b = k+1/2, g = 1/2, d = 2*k+3, s = 1/2, k = -1+((1/2)*I)*p, (q+(n-1)*(n-2+g)*(1+c)+(n-1)*(c*d+a+b+1-g-d))*r(n-1)/(c*n*(n-1+g))-(n-2+a)*(n-2+b)*r(n-2)/(c*n*(n-1+g))) end proc; r(-1) := 0; r(0) := 1

1

(6)

o := proc (n) option remember; subs(c = (1+s)/(1-s), q = 2*k^2*s/(1-s)+k*(1+9*s)/(2-2*s)+k^2+2*k, a = k, b = k+1/2, g = 1/2, d = 2*k+3, s = 1/2, k = -1+((1/2)*I)*p, (-q+a*b+(n-1)*(n-2+d)*(2-c)+(n-1)*((1-c)*g+a+b+1-g-d))*o(n-1)/((1-c)*n*(n-1+d))-(n-2+a)*(n-2+b)*o(n-2)/((1-c)*n*(n-1+d))) end proc; o(-1) := 0; o(0) := 1

1

(7)

Checking the correctness of the sequence by expanding the implemented heunfunction into a series

series(subs(c = (1+s)/(1-s), q = 2*k^2*s/(1-s)+k*(1+9*s)/(2*(1-s))+k^2+2*k, a = k, b = k+1/2, g = 1/2, d = 2*k+3, s = 1/2, k = -1+I*p*(1/2), HeunG(c, q, a, b, g, d, t)), t = 0, 4)

series(1+(-3+((1/2)*I)*p-(1/2)*p^2)*t+(4/9-((5/4)*I)*p+(11/72)*p^2-((1/4)*I)*p^3+(1/24)*p^4)*t^2+(76/405-((13/36)*I)*p+(643/1620)*p^2-((1/144)*I)*p^3+(59/720)*p^4+((1/48)*I)*p^5-(1/720)*p^6)*t^3+O(t^4),t,4)

(8)

simplify(r(3)-76/405+(13/36*I)*p-(643/1620)*p^2+(1/144*I)*p^3-(59/720)*p^4-(1/48*I)*p^5+(1/720)*p^6)

0

(9)

Analogous:

series(subs(c = (1+s)/(1-s), q = 2*k^2*s/(1-s)+k*(1+9*s)/(2*(1-s))+k^2+2*k, a = k, b = k+1/2, g = 1/2, d = 2*k+3, s = 1/2, k = -1+I*p*(1/2), HeunG(1-c, -q+a*b, a, b, d, g, 1-t)), t = 1, 4)

series(1-((1/4)*(-10+(3*I)*p-p^2)/(1+I*p))*(t-1)-((1/32)*(-24+(58*I)*p-p^2+(10*I)*p^3-p^4)/((1+I*p)*(2+I*p)))*(t-1)^2-((1/384)*(-(65*I)*p^3+19*p^4+91*p^2+I*p^5-(306*I)*p+120)/((3+I*p)*(1+I*p)))*(t-1)^3+O((t-1)^4),t = 1,4)

(10)

simplify(o(3)-(1/384)*(-(65*I)*p^3+19*p^4+91*p^2+I*p^5-(306*I)*p+120)/((3+I*p)*(1+I*p)))

0

(11)

So they should be right

For the wronskian should therefore hold:(considering the factor exp(-I*p*ln(2))=2^(-I*p)

wronski := -2^(-(2*I)*p)*add(add((r(n)*o(k-n+1)+o(n)*r(k-n+1))*(k-n+1)*2^(-k), n = 0 .. k), k = 0 .. 20)

deltag2 := argument(wronski)

plot(deltag2, p = 0 .. 50)

 

NULL

Which is obviously not the same.
I just don't know where the problem arises...

Download Wronski-Determinant.mw

Please Wait...