{VERSION 5 0 "IBM INTEL NT" "5.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 256 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{PSTYLE "Normal " -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 256 61 " \+ The Connection Coefficients K " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 79 " A Maple worksheet written b y Hans Volkmer, January 8, 2001 " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 69 " send comments to volkmer@uwm. edu" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "The Maple program K(m,n," }{XPPEDIT 18 0 "gamma;" "6#%&gammaG" }{TEXT -1 40 ",d) computes the co nnection coefficient " }{XPPEDIT 18 0 "K[n]^m;" "6#)&%\"KG6#%\"nG%\"mG " }{TEXT -1 26 " from Section SW.11(iii) ." }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 7 "Again, " }{XPPEDIT 18 0 "d;" "6#%\"dG" }{TEXT -1 37 " has \+ to be chosen sufficiently large." }{MPLTEXT 1 0 1 " " }{TEXT -1 0 "" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "restart;with(linalg):Digit s:=10;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "trideven:=proc(m, q,d)" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "local A,i;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "A:=matrix(d,d,0.0);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 115 "for i from 1 to d do A[i,i]:=(m+2*i-2.0)*(m+2*i -1)-2*q*((m+2*i-2)*(m+2*i-1)-1+m^2)/(2*m+4*i-5)/(2*m+4*i-1) od;" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 91 "for i from 1 to d-1 do A[i,i+1 ]:=-q*(2*m+2*i-1)*(2*m+2*i)/(2*m+4*i-1)/(2*m+4*i+1) od; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "for i from 2 to d do " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 58 " A[i,i-1]:=-q*(2*i-3)*(2*i-2)/(2*m+4*i-7)/(2*m+4*i-5 ) od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "A;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "tri dodd:=proc(m,q,d)" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "local A,i;" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "A:=matrix(d,d,0.0);" }}{PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 111 "for i from 1 to d do A[i,i]:=(m+2*i-1.0) *(m+2*i)-2*q*((m+2*i-1)*(m+2*i)-1+m^2)/(2*m+4*i-3)/(2*m+4*i+1) od;" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 91 "for i from 1 to d-1 do A[i,i+1 ]:=-q*(2*m+2*i)*(2*m+2*i+1)/(2*m+4*i+1)/(2*m+4*i+3) od; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "for i from 2 to d do " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 58 " A[i,i-1]:=-q*(2*i-2)*(2*i-1)/(2*m+4*i-5)/(2*m+4*i-3 ) od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "A;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 86 "aco eff:=proc(m,n,q,d) # a-coefficients for expansion of Ps_n^m(x;q) from \+ d by d matrix" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "local R,r,c,cc,a,a a,A,K;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "R:=floor((n-m)/2);" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "if type(n-m,even) then A:=trideven( m,q,d); else A:=tridodd(m,q,d) fi;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "K:=[eigenvectors(A)];" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "K:=sor t(K,(a,b)->evalb(a[1] < b[1]));" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 17 " aa:=K[R+1][3][1];" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "for r from -R \+ to -R+d-1 do a[r]:=aa[r+R+1] od; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 84 "c:=sum((n+m+2*s)!/(n-m+2*s)!/(1+2*n+4*s)*a[s]^2,s=-R..-R+d-1)/(n+m )!*(n-m)!*(2*n+1);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "c:=sqrt(c);" }{TEXT -1 0 "" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "cc:=sum((-1)^s*(n+ m+2*s)!/(n-m+2*s)!*a[s],s=-R..-R+d-1);# test A_n^(-m)>0 " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "if cc<0 then c:=-c fi;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 43 "for r from -R to -R+d-1 do a[r]:=a[r]/c od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "a;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "en d;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "with(orthopoly);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "Ps:=proc(m,n,q,d) # Ps_n^m(x ,q)" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "local ps,r,R,a;" }}{PARA 0 " > " 0 "" {MPLTEXT 1 0 18 "R:=floor((n-m)/2);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "a:=acoeff(m,n,q,d);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "ps:=0;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 72 "if m=0 then for r fr om -R to -R+d-1 do ps:=ps+(-1)^r*a[r]*P(n+2*r,x) od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 81 "else for r from -R to -R+d-1 do ps:=ps+(-1)^r*a [r]*diff(P(n+2*r,x),x$m) od; fi; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "(1-x^2)^(m/2)*(-1)^m*ps;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end; " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 125 "acoeff2:=proc(m,n,q,d) # normalized a-coefficients for expansion of radial functions with -m in place of m from d by d matrix" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "local c,a,aa,A,K,r,R;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "R:=flo or((n-m)/2);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "if type(n-m,even) t hen A:=trideven(m,q,d);else A:=tridodd(m,q,d); fi;" }}{PARA 0 "> " 0 " " {MPLTEXT 1 0 21 "K:=[eigenvectors(A)];" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "K:=sort(K,(a,b)->evalb(a[1] < b[1]));" }}{PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 18 "aa:=K[R+1][3][1]; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "for r from -R to -R+d-1 do a[r]:=aa[r+R+1]*(n+m+2*r)! /(n-m+2*r)! od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "c:=0;for r from \+ -R to -R+d-1 do c:=c+(-1)^r*a[r] od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 43 "for r from -R to -R+d-1 do a[r]:=a[r]/c od;" }}{PARA 0 "> " 0 " " {MPLTEXT 1 0 2 "a;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end;" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "K:=proc(m,n,gama,d) # connec tion coefficient " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "local R,e,a,f, w;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "R:=floor((n-m)/2);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "if type(n-m,even) then " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "e:=acoeff2(m,n,gama^2,d);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "a:=e[-R]*(n-m)!/(n+m)!*(2*m)!;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "f:=Ps(m,n,gama^2,d);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "w:=subs(x=0,f);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "(-1)^m*1/2 *sqrt(Pi)*(gama/2)^m*a/GAMMA(3/2+m)/w; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "else" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "e:=acoeff2(m,n,gama^ 2,d);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "a:=e[-R]*(n-m)!/(n+m)!*(2* m+1)!;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "f:=Ps(m,n,gama^2,d);f:=di ff(f,x);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "w:=subs(x=0,f);" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "(-1)^m*1/2*sqrt(Pi)*(gama/2)^(m+1)* a/GAMMA(5/2+m)/w; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 3 "fi;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 44 "First example: The value of K for m=0, n=0, " }{XPPEDIT 18 0 "gamm a = 2;" "6#/%&gammaG\"\"#" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 14 "K(0,0,2.0,6); " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 65 "Second example: Let us check graphically the connection relation. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "itPs:=proc(m,n,q,d) # i talic Ps_n^m(x,q)" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "local ps,r,R,a ;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "R:=floor((n-m)/2);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "a:=acoeff(m,n,q,d);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "ps:=0;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 72 "if m=0 th en for r from -R to -R+d-1 do ps:=ps+(-1)^r*a[r]*P(n+2*r,x) od;" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 81 "else for r from -R to -R+d-1 do ps :=ps+(-1)^r*a[r]*diff(P(n+2*r,x),x$m) od; fi; " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "x^m*(1-1/x^2)^(m/2)*(-1)^m*ps;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "S1: =proc(m,n,gama,d) # radial spheroidal function S_n^m(1)" }}{PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 14 "local S,r,a,R;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "R:=floor((n-m)/2);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "a:=ac oeff2(m,n,gama^2,d);" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "S:=0;" }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "for r from -R to -R+d-1 do " }} {PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "S:=S+a[r]*subs(z=gama*x,sqrt(Pi/2)/ sqrt(z)*BesselJ(n+2*r+1/2,z)) od;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "(1-1/x^2)^(m/2)*S;" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "end;" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "m:=0;n:=1;gama:=1.0;d:=6;" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "f:=K(m,n,gama,d)*itPs(m,n, gama^2,d);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "g:=S1(m,n,gam a,d);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "# f and g should b e approximations of the same function" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "plot([f,g],x=1..8);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "# f and g agree well for x not too large " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}} {MARK "27" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }