この節では PHC pack の ox サーバ ox_sm1_phc
とのインタフェース関数を解説する.
これらの関数はファイル `phc.rr' で定義されている.
phc
は `$(OpenXM_HOME)/lib/asir-contrib' にある.
[255] phc.start(); 0 [257] phc.phc([x^2+y^2-4,x*y-1]); The detailed output is in the file tmp.output.* The answer is in the variable Phc. 0 [260] Phc ; [[[-0.517638,0],[-1.93185,0]], [[1.93185,0],[0.517638,0]], [[-1.93185,0],[-0.517638,0]], [[0.517638,0],[1.93185,0]]] [261]
Author of PHC pack
: Jan Verschelde.
http://www2.math.uic.edu/~jan/download.html
参考書 1: Jan Verschelde,
PHCpack: A general-purpose solver for polynomial systems by
homotopy continuation". ACM Transaction on Mathematical Softwares, 25(2):
251-276, 1999.
参考書 2: Cox, D., O'Shea, Little, J., Using Algebraic Geometry,
Springer. Mixed volumes についての章を見よ.
phc.start
ox_sm1_phc
を起動する.
ox_sm1_phc
を起動する.
起動された ox_sm1_phc
の識別番号を戻す.
Xm_noX =1
としておくと, ox_sm1_phc
用の debug window が開かない.
Phc_proc
に格納される.
P = phc.start()
ox_launch
, phc
phc.phc
www.mth.msu.edu/~jan
である.
PHC pack は代数方程式系を解くためにいろいろな戦略をえらぶことができるが,
このインタフェース関数では, black-box solver しか用いていない.
black-box solver は一般的な戦略ではあるが, 能率的ではない.
この関数で代数方程式を解くのに失敗したら, オリジナルの PHC pack を用い,
ほかの戦略を試してみるとよい.
tmp.phc.out.pid
, tmp.input.*
,
tmp.output.*
を生成する.
ここで pid
は ox_sm1_phc
のプロセス番号である.
ファイル tmp.output.*
には PHC pack がどのように方程式系を解いたのかの
詳しい情報がはいっている.
length(s)
は等しくないといけない.
Algorithm: Jan Verschelde, PHCpack: A general-purpose solver for polynomial systems by homotopy continuation". ACM Transaction on Mathematical Softwares, 25(2): 251-276, 1999.
[232] P = phc.start(); 0 [233] phc.phc([x^2+y^2-4,x*y-1]|proc=P); The detailed output is in the file tmp.output.* The answer is in the variable Phc. 0 [234] Phc; [[[-1.93185,0],[-0.517638,0]], [[0.517638,0],[1.93185,0]], [[-0.517638,0],[-1.93185,0]], [[1.93185,0],[0.517638,0]]] [[x=[real, imaginary], y=[real,imaginary]], the first solution [x=[real, imaginary], y=[real,imaginary]], the second solution ...
ox_launch
, phc.start
, `$(OpenXM_HOME)/bin/lin_phcv2'(original PHC pack binary for linux)
Jump to: p
@vfill @eject
This document was generated on 23 February 2009 using texi2html 1.56k.