=================================================================== RCS file: /home/cvs/OpenXM/src/asir-contrib/packages/doc/Attic/Diff.texi,v retrieving revision 1.1.1.1 retrieving revision 1.6 diff -u -p -r1.1.1.1 -r1.6 --- OpenXM/src/asir-contrib/packages/doc/Attic/Diff.texi 1999/11/27 11:25:18 1.1.1.1 +++ OpenXM/src/asir-contrib/packages/doc/Attic/Diff.texi 2000/02/20 11:30:44 1.6 @@ -1,10 +1,11 @@ -@c $OpenXM: OpenXM/src/asir99/lib/contrib/packages/doc/Diff.texi,v 1.4 1999/11/24 10:24:36 okutani Exp $ +@c $OpenXM: OpenXM/src/asir-contrib/packages/doc/Diff.texi,v 1.5 2000/01/31 11:01:00 okutani Exp $ @node Differential equations,,, その他の函数 @section Differential equations ファイル @file{gr}, @file{Matrix} が必要です. @tex -この節で紹介される関数では微分作用素は次のようなリストで表現します. +この節で紹介される関数では微分作用素はリストまたは多項式で表現されます. +リストによる表現は次のようになります. $$ [ [f_{\alpha},[\alpha_{1},\ldots,\alpha_{n}]],\ldots ] $$ これは $$ \sum_{\alpha}f_{\alpha}\partial^{\alpha} $$ @@ -12,11 +13,15 @@ $$ \sum_{\alpha}f_{\alpha}\partial^{\alpha} $$ $$ (\sum_{\alpha^{(i)}}f_{\alpha^{(i)}}\partial^{\alpha^{(i)}})\bullet u = 0 \quad (i = 1,\ldots,s) $$ などのように複数の微分作用素を表現するときは微分作用素のリストを使います. $$ [ [ [f_{\alpha^{(1)}},[\alpha_{1}^{(1)},\ldots,\alpha_{n}^{(1)}]],\ldots ],\ldots,[ [f_{\alpha^{(s)}},[\alpha_{1}^{(s)},\ldots,\alpha_{n}^{(s)}]],\ldots ] ] $$ -例えば微分作用素$x dx + y dy + 1$の場合は +例えば微分作用素$x \partial_{x} + y \partial_{y} + 1$の場合は $$ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ] $$ -となります. また微分作用素のリストで$x dx + y dy + 1, dx^2 + dy^2$を表すと +となります. また微分作用素のリストで$x \partial_{x} + y \partial_{y} + 1, {\partial_{x}}^{2} + {\partial_{y}}^{2}$を表すと $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1,[0,2]] ] ] $$ -となります. +となります. またこの表現法を使うときは変数リストを常に意識している必要があります. +次に多項式による表現について述べます. 変数$x$に対する微分は$dx$で表現されます. +例えば$x \partial_{x} + y \partial_{y} + 1$については +$$ x*dx+y*dy+1 $$ +と表現されます. @end tex @menu @c * diff_op_hg1:: @@ -26,6 +31,9 @@ $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1, * diff_op_appell4:: @c * diff_op_selberg2:: @c * diff_op_gkz:: +* diff_op_tosm1:: +* diff_op_toasir:: +* diff_op_fromasir:: * diff_act:: @c * diff_act_hg1:: @c * diff_act_appell1:: @@ -35,13 +43,15 @@ $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1, @c * diff_act_selberg2:: @c * diff_act_gkz:: * diff_poly_solve:: -@c * diff_poly_solve_hg1:: +* diff_poly_solve_hg1:: @c * diff_poly_solve_appell1:: @c * diff_poly_solve_appell2:: @c * diff_poly_solve_appell3:: -@c * diff_poly_solve_appell4:: +* diff_poly_solve_appell4:: @c * diff_poly_solve_selberg2:: @c * diff_poly_solve_gkz:: +* diff_rat_solve:: +@c * diff_pseries_appell4:: @end menu @node diff_op_appell4,,, Differential equations @@ -70,6 +80,97 @@ $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1, [(-a-b-1)*y+c2,[0,1]], [(-a-b-1)*x,[1,0]], [-b*a,[0,0]] ] ] @end example +@node diff_op_tosm1,,, Differential equations +@subsection @code{diff_op_tosm1} +@findex diff_op_tosm1 +@table @t +@item diff_op_tosm1(@var{LL},@var{V}) +:: リスト形式の微分作用素リストを sm1 形式に変換します. +@end table +@table @var +@item return +リスト +@item LL +リスト +@item V +リスト +@end table +@itemize @bullet +@item 微分作用素の係数は整数多項式に変換されます. +@item @code{diff_op_tosm1}の例 +@end itemize +@example +[299] diff_op_tosm1([[[x,[2,0]],[-1,[0,0]]], + [[y,[0,2]],[-1,[0,0]]]],[x,y]); +[ + ( + (1) x) dx^2 + ( + (-1)), + ( + (1) y) dy^2 + ( + (-1))] + +[300] diff_op_tosm1([[[x,[1,0]],[y,[0,1]],[1,[0,0]]], + [[1,[2,0]],[1,[0,2]]]],[x,y]); +[ + ( + (1) x) dx + ( + (1) y) dy + ( + (1)), + ( + (1)) dx^2 + ( + (1)) dy^2] + +[301] diff_op_tosm1([[[1/2,[1,0]],[1,[0,0]]], + [[1/3,[0,1]],[1/4,[0,0]]]],[x,y]); +[ + ( + (6)) dx + ( + (12)), + ( + (4)) dy + ( + (3))] + +[302] diff_op_tosm1([[[1/2*x,[1,0]],[1,[0,0]]], + [[1/3*y,[0,1]],[1/4,[0,0]]]],[x,y]); +[ + ( + (6) x) dx + ( + (12)), + ( + (4) y) dy + ( + (3))] +@end example + +@node diff_op_toasir,,, Differential equations +@subsection @code{diff_op_toasir} +@findex diff_op_toasir +@table @t +@item diff_op_toasir(@var{LL},@var{V}) +:: リスト形式の微分作用素リスト @var{LL} を @code{asir} の多項式に変換します. +@end table +@table @var +@item return +リスト +@item LL +リスト +@item V +リスト +@end table +@itemize @bullet +@item @code{diff_op_toasir}の例 +@end itemize +@example +[303] diff_op_toasir([[[1/2*x,[1,0]],[1,[0,0]]], + [[1/3*y,[0,1]],[1/4,[0,0]]]],[x,y]); +[1/2*x*dx+1,1/3*y*dy+1/4] + +[304] diff_op_toasir([[[x,[1,0]],[y,[0,1]],[1,[0,0]]], + [[1,[2,0]],[1,[0,2]]]],[x,y]); +[x*dx+y*dy+1,dx^2+dy^2] +@end example + +@node diff_op_fromasir,,, Differential equations +@subsection @code{diff_op_fromasir} +@findex diff_op_fromasir +@table @t +@item diff_op_fromasir(@var{D_list},@var{V}) +:: @code{asir} の多項式からリスト形式の微分作用素リストに変換します. +@end table +@table @var +@item return +リスト +@item D_list +リスト +@item V +リスト +@end table +@itemize @bullet +@item @code{diff_op_fromasir}の例 +@end itemize +@example +[305] diff_op_fromasir([1/2*x*dx+1,1/3*y*dy+1/4],[x,y]); +[[[1/2*x,[1,0]],[1,[0,0]]],[[1/3*y,[0,1]],[1/4,[0,0]]]] + +[306] diff_op_fromasir([x*dx+y*dy+1,dx^2+dy^2],[x,y]); +[[[x,[1,0]],[y,[0,1]],[1,[0,0]]],[[1,[2,0]],[1,[0,2]]]] +@end example + @node diff_act,,, Differential equations @subsection @code{diff_act} @findex diff_act @@ -81,7 +182,7 @@ $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1, @item return 有理式 @item L -リスト +リスト or 多項式 @item F 有理式 @item V @@ -96,6 +197,9 @@ $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1, [303] diff_act([[1,[1,0]],[1,[0,1]]],x^2+y^2,[x,y]); 2*x+2*y + +[349] diff_act(x*dx+y*dy, x^2+x*y+y^2, [x,y]); +2*x^2+2*y*x+2*y^2 @end example @node diff_act_appell4,,, Differential equations @@ -155,5 +259,93 @@ $$ [ [ [x,[1,0]],[y,[0,1]],[1,[0,0]] ],[ [1,[2,0]],[1, [298] diff_poly_solve([[[x,[1,0]],[-2,[0,0]]],[[y,[0,1]],[-2,[0,0]]]],5,[x,y]); [_33*y^2*x^2,[_33]] + +[356] diff_poly_solve([x*dx+y*dy-3,dx+dy],4,[x,y]); +[-_126*x^3+3*_126*y*x^2-3*_126*y^2*x+_126*y^3,[_126]] @end example +@node diff_poly_solve_hg1,,, Differential equations +@subsection @code{diff_poly_solve_hg1} +@findex diff_poly_solve_hg1 +@table @t +@item diff_poly_solve_hg1(@var{a},@var{b},@var{c},@var{V}) +:: ガウスの超幾何微分方程式の多項式解を求める. +@end table +@table @var +@item return +リスト +@item a, b, c +有理式 +@item V +リスト +@end table +@itemize @bullet +@item @code{diff_poly_solve_hg1}の例. +@end itemize +@example +[334] diff_poly_solve_hg1(-3,-6,-5,[x]); +[_1*x^6-2*_0*x^3+9/2*_0*x^2-18/5*_0*x+_0,[_0,_1]] + +[335] diff_poly_solve_hg1(-3,-6,-7,[x]); +[-4/7*_2*x^3+15/7*_2*x^2-18/7*_2*x+_2,[_2]] +@end example + +@node diff_poly_solve_appell4,,, Differential equations +@subsection @code{diff_poly_solve_appell4} +@findex diff_poly_solve_appell4 +@table @t +@item diff_poly_solve_appell4(@var{a},@var{b},@var{c1},@var{c2},@var{V}) +:: F_4がみたす線型微分方程式系の多項式解を求める. +@end table +@table @var +@item return +リスト +@item a, b, c1, c2 +有理式 +@item V +リスト +@end table +@itemize @bullet +@item @code{diff_poly_solve_appell4}の例. +@end itemize +@example +[299] diff_poly_solve_appell4(-3,1,-1,-1,[x,y]); +[-_26*x^3+(3*_26*y+_26)*x^2+3*_24*y^2*x-_24*y^3+_24*y^2,[_24,_26]] + +[300] diff_poly_solve_appell4(-3,1,1,-1,[x,y]); +[-3*_45*y^2*x-_45*y^3+_45*y^2,[_45]] +@end example + +@node diff_rat_solve,,, Differential equations +@subsection @code{diff_rat_solve} +@findex diff_rat_solve +@table @t +@item diff_rat_solve(@var{LL},@var{Dn},@var{N},@var{V}) +:: 与えられた線型微分方程式系の分母が @var{Dn}, 分子が @var{N} 次以下の多項式であるような解を求める. +@end table +@table @var +@item return +リスト +@item LL +リスト +@item Dn +有理式 +@item N +整数 +@item V +リスト +@end table +@itemize @bullet +@item @code{diff_rat_solve}の例. +@end itemize +@example +[333] diff_rat_solve([[[x,[1]],[1,[0]]]],x,1,[x]); +[(_8)/(x),[_8]] + +[361] diff_rat_solve([x*(1-x)*dx^2+(1-3*x)*dx-1],1-x,2,[x]); +[(_180)/(-x+1),[_180]] + +[350] D = diff_op_appell4(0,0,3,0,[x,y])$ +[351] diff_rat_solve(D,x^2,2,[x,y]); +[(_118*x^2-_114*y*x+1/2*_114*y^2+_114*y)/(x^2),[_114,_118]] +@end example