[BACK]Return to gtt_ekn-ja.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-contrib / packages / doc / gtt_ekn

Diff for /OpenXM/src/asir-contrib/packages/doc/gtt_ekn/gtt_ekn-ja.texi between version 1.11 and 1.14

version 1.11, 2019/02/15 05:27:38 version 1.14, 2019/03/19 07:36:21
Line 1 
Line 1 
 %% $OpenXM: OpenXM/src/asir-contrib/packages/doc/gtt_ekn/gtt_ekn-ja.texi,v 1.10 2019/02/14 05:46:51 takayama Exp $  %% $OpenXM: OpenXM/src/asir-contrib/packages/doc/gtt_ekn/gtt_ekn-ja.texi,v 1.13 2019/03/19 03:07:51 takayama Exp $
 %% xetex gtt_ekn.texi   (.texi までつける. )  %% xetex gtt_ekn-ja.texi   (.texi までつける. )
 %% 以下コメントは @comment で始める.  \input texinfo 以降は普通の tex 命令は使えない.  %% 以下コメントは @comment で始める.  \input texinfo 以降は普通の tex 命令は使えない.
 \input texinfo-ja  \input texinfo-ja
 @iftex  @iftex
Line 41 
Line 41 
 @title 2元分割表HGM関数  @title 2元分割表HGM関数
 @subtitle Risa/Asir 2元分割表HGM関数説明書  @subtitle Risa/Asir 2元分割表HGM関数説明書
 @subtitle 1.2 版  @subtitle 1.2 版
 @subtitle 2019 年 2 月 14 日  @subtitle 2019 年 3 月 19 日
   
 @author  by Y.Goto, Y.Tachibana, N.Takayama  @author  by Y.Goto, Y.Tachibana, N.Takayama
 @page  @page
Line 80  ChangeLog の項目は www.openxm.org の cvsweb で
Line 80  ChangeLog の項目は www.openxm.org の cvsweb で
 ソースコードを読む時の助けになる情報が書かれている.  ソースコードを読む時の助けになる情報が書かれている.
 このパッケージは下記のようにロードする.  このパッケージは下記のようにロードする.
 @example  @example
 load("gtt_ekn.rr");  load("gtt_ekn3.rr");
 @end example  @end example
   gtt_ekn3.rr は gtt_ekn.rr を置き換える大きく改良されたパッケージである.
   以下のモジュール名 gtt_ekn はすべて gtt_ekn3 と読み替えてほしい.
 @noindent  @noindent
 最新版の asir-contrib package を取得するには, 下記のように更新関数を呼び出す.  最新版の asir-contrib package を取得するには, 下記のように更新関数を呼び出す.
 @example  @example
Line 129  gtt_ekn/test-t1.rr 
Line 131  gtt_ekn/test-t1.rr 
 * gtt_ekn.cmle::  * gtt_ekn.cmle::
 * gtt_ekn.set_debug_level::  * gtt_ekn.set_debug_level::
 * gtt_ekn.show_path::  * gtt_ekn.show_path::
   * gtt_ekn.get_svalue::
 * gtt_ekn.assert1::  * gtt_ekn.assert1::
 * gtt_ekn.assert2::  * gtt_ekn.assert2::
 * gtt_ekn.prob2::  * gtt_ekn.prob2::
Line 732  ChangeLog
Line 735  ChangeLog
 @comment --- 個々の関数の説明の開始 ---  @comment --- 個々の関数の説明の開始 ---
 @comment --- section 名を正確に ---  @comment --- section 名を正確に ---
 @node gtt_ekn.upAlpha,,, 超幾何関数E(k,n)  @node gtt_ekn.upAlpha,,, 超幾何関数E(k,n)
 @subsection @code{gtt_ekn.upAlpha}  @node gtt_ekn.downAlpha,,, 超幾何関数E(k,n)
   @subsection @code{gtt_ekn.upAlpha}, @code{gtt_ekn.downAlpha}
 @comment --- 索引用キーワード  @comment --- 索引用キーワード
 @findex gtt_ekn.upAlpha  @findex gtt_ekn.upAlpha
   @findex gtt_ekn.downAlpha
   
 @table @t  @table @t
 @item gtt_ekn.upAlpha(@var{i},@var{k},@var{n})  @item gtt_ekn.upAlpha(@var{i},@var{k},@var{n})
   @item gtt_ekn.downAlpha(@var{i},@var{k},@var{n})
 ::  ::
 @end table  @end table
   
 @comment --- 引数の簡単な説明 ---  以下まだ書いてない.  @comment --- 引数の簡単な説明 ---  以下まだ書いてない.
 @table @var  @table @var
 @item i  a_i を a_i+1 と変化させる contiguity relation.  @item i  a_i を a_i+1 (a_i を a_i-1) と変化させる contiguity relation.
 @item k  E(k+1,n+k+2)型の超幾何関数の k. 分割表では (k+1)×(n+1).  @item k  E(k+1,n+k+2)型の超幾何関数の k. 分割表では (k+1)×(n+1).
 @item n  E(k+1,n+k+2)型の超幾何関数の n. 分割表では (k+1)×(n+1).  @item n  E(k+1,n+k+2)型の超幾何関数の n. 分割表では (k+1)×(n+1).
 @item return  contiguity relation の pfaffian_basis についての行列表現を戻す. [GM2016] の Cor 6.3.  @item return  contiguity relation の pfaffian_basis についての行列表現を戻す. [GM2016] の Cor 6.3.
Line 760  ChangeLog
Line 766  ChangeLog
 @item a_i と分割表の周辺和を見るには, 関数 marginaltoAlpha([行和,列和]) を用いる.  @item a_i と分割表の周辺和を見るには, 関数 marginaltoAlpha([行和,列和]) を用いる.
 @item  @item
    pfaffian_basis は [GM2016] の4章のベクトル F に対応する偏微分を戻す.     pfaffian_basis は [GM2016] の4章のベクトル F に対応する偏微分を戻す.
   @item optional 引数 arule, xrule で a_i や x_i_j を数にしたものをより効率的に求めることができる. 変化をうけるパラメータを数にしてしまっても特にエラー表示はしない. a_0 で和の条件を調整しているので注意(Todo, double check).
 @end itemize  @end itemize
   
 @comment --- @example〜@end example は実行例の表示 ---  @comment --- @example〜@end example は実行例の表示 ---
Line 782  f() redefined.
Line 789  f() redefined.
 [ f(x_1_1,x_1_2) ]  [ f(x_1_1,x_1_2) ]
 [ (f{1,0}(x_1_1,x_1_2)*x_1_1)/(a_2) ]  [ (f{1,0}(x_1_1,x_1_2)*x_1_1)/(a_2) ]
 [ (f{0,1}(x_1_1,x_1_2)*x_1_2)/(a_3) ]  [ (f{0,1}(x_1_1,x_1_2)*x_1_2)/(a_3) ]
   
   [2235]   RuleA=[[a_2,1/3],[a_3,1/2]]$ RuleX=[[x_1_1,1/5]]$
     base_replace(gtt_ekn.upAlpha(1,1,1),append(RuleA,RuleX))
    -gtt_ekn.upAlpha(1,1,1 | arule=RuleA, xrule=RuleX);
   
   [ 0 0 ]
   [ 0 0 ]
   
 @end example  @end example
   
   
Line 870  ChangeLog
Line 885  ChangeLog
 @comment --- section 名を正確に ---  @comment --- section 名を正確に ---
 @node gtt_ekn.set_debug_level,,, 超幾何関数E(k,n)  @node gtt_ekn.set_debug_level,,, 超幾何関数E(k,n)
 @node gtt_ekn.show_path,,, 超幾何関数E(k,n)  @node gtt_ekn.show_path,,, 超幾何関数E(k,n)
   @node gtt_ekn.get_svalue,,, 超幾何関数E(k,n)
 @node gtt_ekn.assert1,,, 超幾何関数E(k,n)  @node gtt_ekn.assert1,,, 超幾何関数E(k,n)
 @node gtt_ekn.assert2,,, 超幾何関数E(k,n)  @node gtt_ekn.assert2,,, 超幾何関数E(k,n)
 @node gtt_ekn.prob1,,, 超幾何関数E(k,n)  @node gtt_ekn.prob1,,, 超幾何関数E(k,n)
 @subsection @code{gtt_ekn.set_debug_level}, @code{gtt_ekn.show_path}, @code{gtt_ekn.assert1}, @code{gtt_ekn.assert2}, @code{gtt_ekn.prob1}  @subsection @code{gtt_ekn.set_debug_level}, @code{gtt_ekn.show_path}, @code{gtt_ekn.get_svalue}, @code{gtt_ekn.assert1}, @code{gtt_ekn.assert2}, @code{gtt_ekn.prob1}
 @comment --- 索引用キーワード  @comment --- 索引用キーワード
 @findex gtt_ekn.set_debug_level  @findex gtt_ekn.set_debug_level
 @findex gtt_ekn.show_path  @findex gtt_ekn.show_path
   @findex gtt_ekn.get_svalue
 @findex gtt_ekn.assert1  @findex gtt_ekn.assert1
 @findex gtt_ekn.assert2  @findex gtt_ekn.assert2
 @findex gtt_ekn.prob1  @findex gtt_ekn.prob1
Line 884  ChangeLog
Line 901  ChangeLog
 @table @t  @table @t
 @item gtt_ekn.set_debug_level(@var{m}) debug メッセージのレベルを設定.  @item gtt_ekn.set_debug_level(@var{m}) debug メッセージのレベルを設定.
 @item gtt_ekn.show_path()  どのように contiguity を適用したかの情報.  @item gtt_ekn.show_path()  どのように contiguity を適用したかの情報.
   @item gtt_ekn.get_svalue()  static 変数の値を得る.
 @item gtt_ekn.assert1(@var{N})  2x2 分割表で動作チェック.  @item gtt_ekn.assert1(@var{N})  2x2 分割表で動作チェック.
 @item gtt_ekn.assert2(@var{N})  3x3 分割表で動作チェック.  @item gtt_ekn.assert2(@var{N})  3x3 分割表で動作チェック.
 @item gtt_ekn.prob1(@var{R1},@var{R2},@var{Size})  R1 x R2 分割表用のテストデータを作る.  @item gtt_ekn.prob1(@var{R1},@var{R2},@var{Size})  R1 x R2 分割表用のテストデータを作る.
Line 903  ChangeLog
Line 921  ChangeLog
 @item (@var{m} & 0x2) == 0x2 の時 g_mat_fac_test への引数を tmp-input-数.ab として保存.  @item (@var{m} & 0x2) == 0x2 の時 g_mat_fac_test への引数を tmp-input-数.ab として保存.
 @item (@var{m} & 0x4) == 0x4 の時 matrix factorial の計算の呼び出し引数を表示.  @item (@var{m} & 0x4) == 0x4 の時 matrix factorial の計算の呼び出し引数を表示.
 @item @var{N} は問題の周辺和のサイズ.  @item @var{N} は問題の周辺和のサイズ.
   @item @code{get_svalue} の戻り値は @code{[Ekn_plist,Ekn_IDL,Ekn_debug,Ekn_mesg,XRule,ARule,Verbose,Ekn_Rq]} の値.
 @end itemize  @end itemize
   
 @comment --- @example〜@end example は実行例の表示 ---  @comment --- @example〜@end example は実行例の表示 ---
Line 1101  ChangeLog
Line 1120  ChangeLog
  関連ファイルは   関連ファイルは
  gtt_ekn/g_mat_fac.rr   gtt_ekn/g_mat_fac.rr
  gtt_ekn/childprocess.rr   gtt_ekn/childprocess.rr
   @end itemize
   
   @node binary splitting,,, 2元分割表HGMの関数
   @chapter binary splitting
   
   @menu
   * gtt_ekn3.init_dm_bsplit::
   * gtt_ekn3.setup_dm_bsplit::
   * gtt_ekn3.init_bsplit::
   @end menu
   
   @node matrix factorial,,, binary splitting
   @section matrix factorial
   
   @comment **********************************************************
   @comment --- ◯◯◯◯  の説明
   @comment --- 個々の関数の説明の開始 ---
   @comment --- section 名を正確に ---
   @node gtt_ekn3.init_bsplit,,,
   @node gtt_ekn3.init_dm_bsplit,,,
   @node gtt_ekn3.setup_dm_bsplit,,,
   @subsection @code{gtt_ekn3.init_bsplit, gtt_ekn3.init_dm_bsplit, gtt_ekn3.setup_dm_bsplit}
   @comment --- 索引用キーワード
   @findex gtt_ekn3.init_dm_bsplit matrix factorial
   @findex gtt_ekn3.setup_dm_bsplit matrix factorial
   @findex gtt_ekn3.init_bsplit matrix factorial
   
   @table @t
   @item gtt_ekn3.init_bsplit(|minsize=16,levelmax=1);
   :: binary split の実行のためのパラメータを設定する.
   @item gtt_ekn3.init_dm_bsplit(|bsplit_x=0, bsplit_reduce=0)
   :: binary split の分散実行のためのパラメータを設定する.
   @item gtt_ekn3.setup_dm_bsplit(C)
   :: binary split の分散実行のために C 個のプロセスを立ち上げる.
   @end table
   
   @comment --- 引数の簡単な説明 ---  以下まだ書いてない.
   @table @var
   @item C  C はlevelmax-1 に設定する. 特に levalmax=1 のときは分散計算を行わない.
   @item bsplit_x bsplit_x=1 のとき, 各プロセスを xterm で表示.
   @end table
   
   @comment --- ここで関数の詳しい説明 ---
   @comment --- @itemize〜@end itemize は箇条書き ---
   @comment --- @bullet は黒点付き ---
   @itemize @bullet
   @item expectation などの関数に bs=1 オプションを与えると matrix factorial を binary
   splitting method で計算する.
   @end itemize
   
   @comment --- @example〜@end example は実行例の表示 ---
   例: bs=1 と無い場合.
   @example
   [4618] cputime(1)$
   [4619] gtt_ekn3.expectation(Marginal=[[1950,2550,5295],[1350,1785,6660]],
                             P=[[17/100,1,10],[7/50,1,33/10],[1,1,1]]|bs=1)$
   4.912sec(4.914sec)
   [4621] V2=gtt_ekn3.expectation(Marginal=[[1950,2550,5295],[1350,1785,6660]],
                             P=[[17/100,1,10],[7/50,1,33/10],[1,1,1]])$
   6.752sec(6.756sec)
   @end example
   
   
   @comment --- @example〜@end example は実行例の表示 ---
   例: 分散計算する場合. debug 用の xterm も開く.
   @example
   [3669] C=3$ gtt_ekn3.init_bsplit(|minsize=16,levelmax=C+1)$ gtt_ekn3.init_dm_bsplit(|bsplit_x=1)$
   [3670] [3671] [3672] gtt_ekn3.setup_dm_bsplit(C);
   [0,0]
   [3673] gtt_ekn3.assert2(10|bs=1)$
   @end example
   
   @comment --- 参照(リンク)を書く ---
   @table @t
   @item 参照
   @ref{gtt_ekn3.gmvector}
   @ref{gtt_ekn3.expectation}
   @ref{gtt_ekn3.assert1}
   @ref{gtt_ekn3.assert2}
   @end table
   
   @comment --- ChangeLog を書く. ソースコードの位置. 変更日時 など CVSサーバを見るため
   @noindent
   ChangeLog
   @itemize @bullet
   @item
    関連ファイルは
    gtt_ekn3/mfac_bs.rr
    gtt_ekn3/dm_bsplit.rr
 @end itemize  @end itemize
   
   

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.14

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>