@c $OpenXM: OpenXM/src/asir-contrib/packages/doc/Dmodule.texi,v 1.4 2000/02/20 11:30:44 okutani Exp $ @node D-module,,, その他の函数 @section D-module ファイル @file{gr}, @file{xm}, @file{Matrix}, @file{Diff} が必要です. @menu @c * dmodule_make_dv:: * dmodule_d_op_tosm1:: * dmodule_d_op_toasir:: * dmodule_d_op_fromasir:: * dmodule_ch_ideal:: * dmodule_singular_locus:: @c * dmodule_ch_ideal_appell1:: @c * dmodule_ch_ideal_appell2:: @c * dmodule_ch_ideal_appell3:: @c * dmodule_ch_ideal_appell4:: @c * dmodule_ch_ideal_selberg2:: @c * dmodule_ch_ideal_gkz:: * dmodule_restriction:: @c * dmodule_restriction_appell1:: @c * dmodule_restriction_appell2:: @c * dmodule_restriction_appell3:: @c * dmodule_restriction_appell4:: @c * dmodule_restriction_selberg2:: @c * dmodule_restriction_gkz:: * dmodule_elimination:: @c * dmodule_elimination_appell1:: @c * dmodule_elimination_appell2:: @c * dmodule_elimination_appell3:: @c * dmodule_elimination_appell4:: @c * dmodule_elimination_selberg2:: @c * dmodule_elimination_gkz:: @end menu @node dmodule_d_op_tosm1,,, D-module @subsection @code{dmodule_d_op_tosm1} @findex dmodule_d_op_tosm1 @table @t @item dmodule_d_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}と等価です. @item @code{dmodule_d_op_tosm1}の例 @end itemize @example [299] dmodule_d_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] dmodule_d_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] dmodule_d_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] dmodule_d_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 dmodule_d_op_toasir,,, D-module @subsection @code{dmodule_d_op_toasir} @findex dmodule_d_op_toasir @table @t @item dmodule_d_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}と等価です. @item @code{dmodule_d_op_toasir}の例 @end itemize @example [303] dmodule_d_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] dmodule_d_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 dmodule_d_op_fromasir,,, D-module @subsection @code{dmodule_d_op_fromasir} @findex dmodule_d_op_fromasir @table @t @item dmodule_d_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}と等価です. @item @code{dmodule_d_op_fromasir}の例 @end itemize @example [305] dmodule_d_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] dmodule_d_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 dmodule_ch_ideal,,, D-module @subsection @code{dmodule_ch_ideal} @findex dmodule_ch_ideal @table @t @item dmodule_ch_ideal(@var{D_ideal},@var{V}) :: @var{D_ideal}のcharacteristic idealを求めます. @end table @table @var @item return リスト @item D_ideal リスト @item V リスト @end table @itemize @bullet @item @var{D_ideal}はgeneric parameterを含むことができます. @item @code{dmodule_ch_ideal}の例 @end itemize @example [344] dmodule_ch_ideal([x*dx+y*dy+a,dx^2+dy^2],[x,y]); [x*dx+y*dy,dx^2+dy^2,y*dy*dx-x*dy^2,(x^2+y^2)*dy^2] [348] dmodule_ch_ideal(diff_op_appell4(a,b,c1,c2,[x,y]),[x,y]); [-x*dx^2+y*dy^2,2*y*x*dy*dx+(y*x+y^2-y)*dy^2, (2*y^2-2*y)*dy^2*dx+(-y*x+3*y^2+y)*dy^3, 2*y*x*dy^2*dx+(y*x^2+(-2*y^2-y)*x+y^3-y^2)*dy^3] @end example @node dmodule_singular_locus,,, D-module @subsection @code{dmodule_singular_locus} @findex dmodule_singular_locus @table @t @item dmodule_singular_locus(@var{D_ideal},@var{V}) :: @var{D_ideal}のsingular locusを求めます. @end table @table @var @item return リスト @item D_ideal リスト @item V リスト @end table @itemize @bullet @item @var{D_ideal}はgeneric parameterを含むことができます. @item @code{dmodule_singular_locus}の例 @end itemize @example [356] D = diff_op_appell4(a,b,c1,c2,[x,y])$ [357] dmodule_singular_locus(D,[x,y]); [-y*x^3+(2*y^2+2*y)*x^2+(-y^3+2*y^2-y)*x] [358] D = diff_op_hg1(a,b,c,[x])$ [359] dmodule_singular_locus(D,[x]); [x^2-x] @end example @node dmodule_restriction,,, D-module @subsection @code{dmodule_restriction} @findex dmodule_restriction @table @t @item dmodule_restriction(@var{D_ideal},@var{V},@var{Rest}) :: @var{D_ideal}のrestrictionを求めます. @end table @table @var @item return リスト @item @var{D_ideal} リスト @item @var{V} リスト @item @var{Rest} リスト @end table @itemize @bullet @item @var{D_ideal}はgeneric parameterを含むことができます. @item @code{dmodule_restriction}の例. @end itemize @example [345] dmodule_restriction([x*dx+y*dy+a,dx^2+dy^2],[x,y],[y]); [[2,[-x*dx-a,-e0*x*dx-e0*a-e0]]] @end example @node dmodule_elimination,,, D-module @subsection @code{dmodule_elimination} @findex dmodule_elimination @table @t @item dmodule_elimination(@var{D_ideal},@var{V},@var{Elim}) :: @var{D_ideal}のelimination idealを求めます. @end table @table @var @item return リスト @item @var{D_ideal} リスト @item @var{V} リスト @item @var{Elim} リスト @end table @itemize @bullet @item @var{D_ideal}はgeneric parameterを含むことができます. @item @code{dmodule_elimination}の例. @end itemize @example [346] dmodule_elimination([x*dx+y*dy+a,dx^2+dy^2],[x,y],[[y],[0]]); [x^2*dx^2+(2*a+2)*x*dx+a^2+a] [347] dmodule_elimination([x*dx+y*dy+a,dx^2+dy^2],[x,y],[[y],[b]]); [(x^2+b^2)*dx^2+(2*a+2)*x*dx+a^2+a] @end example