Annotation of OpenXM/src/asir-contrib/packages/doc/phc.oxweave, Revision 1.2
1.2 ! takayama 1: /* $OpenXM: OpenXM/src/asir-contrib/packages/doc/phc.oxweave,v 1.1 2003/05/19 05:15:52 takayama Exp $ */
1.1 takayama 2:
3:
4: /*&C-texi
5: @c DO NOT EDIT THIS FILE oxphc.texi
6: @node PHC Functions,,, Top
7:
8: */
9: /*&jp-texi
10: @chapter PHC $BH!?t(B
11:
12: $B$3$N@a$G$O(B PHC pack $B$N(B ox $B%5!<%P(B @code{ox_sm1_phc}
13: $B$H$N%$%s%?%U%'!<%94X?t$r2r@b$9$k(B.
14: $B$3$l$i$N4X?t$O%U%!%$%k(B @file{phc} $B$GDj5A$5$l$F$$$k(B.
15: @code{phc} $B$O(B @file{$(OpenXM_HOME)/lib/asir-contrib} $B$K$"$k(B.
16: */
17: /*&eg-texi
18: @chapter PHC Functions
19:
20: This chapter describes interface functions for
21: PHC pack ox server @code{ox_sm1_phc}.
22: These interface functions are defined in the file @file{phc}.
23: The file @code{phc} is @*
24: at @file{$(OpenXM_HOME)/lib/asir-contrib}.
25: */
26: /*&C-texi
27: @example
28: @include opening.texi
29: [255] phc.start();
30: 0
31: [257] phc.phc([x^2+y^2-4,x*y-1]);
32: The detailed output is in the file tmp.output.*
33: The answer is in the variable Phc.
34: 0
35: [260] Phc ;
36: [[[-0.517638,0],[-1.93185,0]],
37: [[1.93185,0],[0.517638,0]],
38: [[-1.93185,0],[-0.517638,0]],
39: [[0.517638,0],[1.93185,0]]]
40: [261]
41: @end example
42: */
43: /*&C-texi
44: Author of @code{PHC pack}: Jan Verschelde. @*
45: */
46: /*&jp-texi
47: $B;29M=q(B 1: Jan Verschelde,
48: PHCpack: A general-purpose solver for polynomial systems by
49: homotopy continuation". ACM Transaction on Mathematical Softwares, 25(2):
50: 251-276, 1999. @*
51: $B;29M=q(B 2: Cox, D., O'Shea, Little, J., Using Algebraic Geometry,
52: Springer. Mixed volumes $B$K$D$$$F$N>O$r8+$h(B.
53: */
54: /*&eg-texi
55: Reference 1: Jan Verschelde,
56: PHCpack: A general-purpose solver for polynomial systems by
57: homotopy continuation". ACM Transaction on Mathematical Softwares, 25(2):
58: 251-276, 1999. @*
59: Reference 2: Cox, D., O'Shea, Little, J., Using Algebraic Geometry,
60: Springer. See the chapter on mixed volumes.
61: */
62:
63: /*&C-texi
64: @menu
1.2 ! takayama 65: * phc.start::
! 66: * phc.phc::
1.1 takayama 67: @end menu
68:
69: */
70: /*&jp-texi
71: @section $BH!?t0lMw(B
72: */
73: /*&eg-texi
74: @section Functions
75: */
76: /*&jp-texi
77: @node phc.start,,, PHC Functions
78: @subsection @code{phc.start}
79: @findex phc.start
80: @table @t
81: @item phc.start()
82: :: Localhost $B$G(B @code{ox_sm1_phc} $B$r5/F0$9$k(B.
83: @end table
84:
85: @table @var
86: @item return
87: $B@0?t(B
88: @end table
89:
90: @itemize @bullet
91: @item Localhost $B$G(B @code{ox_sm1_phc} $B$r5/F0$9$k(B.
92: $B5/F0$5$l$?(B @code{ox_sm1_phc} $B$N<1JLHV9f$rLa$9(B.
93: @item @code{Xm_noX =1} $B$H$7$F$*$/$H(B, @code{ox_sm1_phc} $BMQ$N(B debug window $B$,3+$+$J$$(B.
94: @item $B<1JLHV9f$O(B @code{Phc_proc} $B$K3JG<$5$l$k(B.
95: @end itemize
96: */
97: /*&eg-texi
98: @node phc.start,,, PHC Functions
99: @subsection @code{phc.start}
100: @findex phc.start
101: @table @t
102: @item phc.start()
103: :: Start @code{ox_sm1_phc} on the localhost.
104: @end table
105:
106: @table @var
107: @item return
108: Integer
109: @end table
110:
111: @itemize @bullet
112: @item Start @code{ox_sm1_phc} on the localhost.
113: It returns the descriptor of @code{ox_sm1_phc}.
114: @item Set @code{Xm_noX = 1} to start @code{ox_sm1_phc} without a debug window.
115: @item The descriptor is stored in @code{Phc_proc}.
116: @end itemize
117: */
118: /*&C-texi
119: @example
120: P = phc.start()
121: @end example
122: */
123: /*&jp-texi
124: @table @t
125: @item $B;2>H(B
126: @code{ox_launch}, @code{phc}
127: @end table
128: */
129: /*&eg-texi
130: @table @t
131: @item Reference
132: @code{ox_launch}, @code{phc}
133: @end table
134: */
135:
136:
137: /*&jp-texi
138: @node phc.phc,,, PHC Functions
139: @subsection @code{phc.phc}
140: @findex phc.phc
141: @table @t
142: @item phc.phc(@var{s}|proc=@var{p})
143: :: PHC pack $B$KBe?tJ}Dx<07O(B @var{s} $B$N2r$r$9$Y$F$b$H$a$F$/$l$k$h$&$KMj$`(B.
144: @end table
145:
146: @table @var
147: @item return
148: $B$J$7(B
149: @item p
150: $B?t(B
151: @item s
152: $B%j%9%H(B
153: @end table
154:
155: @itemize @bullet
156: @item
157: $BBe?tJ}Dx<07O(B @var{S} $B$r%[%b%H%T!<K!$G2r$/$?$a$K(B PHC pack $B$r8F$V(B.
158: PHC pack $B$r3+H/$7$?$N$O(B Jan Verschelde $B$G$"$k(B.
159: $B%*%j%8%J%k$NG[I[85$O(B
160: @code{www.mth.msu.edu/~jan} $B$G$"$k(B.
161: PHC pack $B$OBe?tJ}Dx<07O$r2r$/$?$a$K$$$m$$$m$J@oN,$r$($i$V$3$H$,$G$-$k$,(B,
162: $B$3$N%$%s%?%U%'!<%94X?t$G$O(B, black-box solver $B$7$+MQ$$$F$$$J$$(B.
163: black-box solver $B$O0lHLE*$J@oN,$G$O$"$k$,(B, $BG=N(E*$G$O$J$$(B.
164: $B$3$N4X?t$GBe?tJ}Dx<0$r2r$/$N$K<:GT$7$?$i(B, $B%*%j%8%J%k$N(B PHC pack $B$rMQ$$(B,
165: $B$[$+$N@oN,$r;n$7$F$_$k$H$h$$(B.
166: @item
167: PHC $B$O:n6H%U%!%$%k(B @code{tmp.phc.out.pid}, @code{tmp.input.*},
168: @code{tmp.output.*} $B$r@8@.$9$k(B.
169: $B$3$3$G(B @code{pid} $B$O(B @code{ox_sm1_phc} $B$N%W%m%;%9HV9f$G$"$k(B.
170: $B%U%!%$%k(B @code{tmp.output.*} $B$K$O(B PHC pack $B$,$I$N$h$&$KJ}Dx<07O$r2r$$$?$N$+$N(B
171: $B>\$7$$>pJs$,$O$$$C$F$$$k(B.
172: @item
173: $BJQ?t$N?t$HJ}Dx<0$N?t(B @code{length(@var{s})} $B$OEy$7$/$J$$$H$$$1$J$$(B.
174: @end itemize
175: */
176: /*&eg-texi
177: @node phc.phc,,, PHC Functions
178: @subsection @code{phc.phc}
179: @findex phc.phc
180: @table @t
181: @item phc.phc(@var{s}|proc=@var{p})
182: :: Ask PHC pack to find all the roots in the complex torus of the given systems of polynomials @var{s}
183: @end table
184:
185: @table @var
186: @item return
187: Void
188: @item p
189: Number
190: @item s
191: List
192: @end table
193:
194: @itemize @bullet
195: @item
196: The server calls PHC pack to solve a system of algebraic equations S
197: by homotopy methods.
198: PHC pack has been developed by Jan Verschelde. See
199: @code{www.mth.msu.edu/~jan} for the original distribution.
200: The original PHC pack can choose several strategies to solve,
201: but our phc interface uses only black-box solver, which is general
202: and automatic but is not efficient. So, if you fails by our interface,
203: try the other strategies via the original user interface.
204: @item
205: phc generates working files tmp.phc.out.pid, tmp.input.*, tmp.output.*.
206: Here, pid the process number of the server.
207: The file @code{tmp.output.*} contains details informations on how PCH pack
208: solves the system.
209: @item
210: The number of variables and the number of equations
211: @code{length(@var{s})} must agree.
212: @end itemize
213: */
214: /*&C-texi
215:
216: @noindent
217: Algorithm:
218: Jan Verschelde,
219: PHCpack: A general-purpose solver for polynomial systems by
220: homotopy continuation". ACM Transaction on Mathematical Softwares, 25(2):
221: 251-276, 1999.
222:
223: @example
224: [232] P = phc.start();
225: 0
226: [233] phc.phc([x^2+y^2-4,x*y-1]|proc=P);
227: The detailed output is in the file tmp.output.*
228: The answer is in the variable Phc.
229: 0
230: [234] Phc;
231: [[[-1.93185,0],[-0.517638,0]],
232: [[0.517638,0],[1.93185,0]],
233: [[-0.517638,0],[-1.93185,0]],
234: [[1.93185,0],[0.517638,0]]]
235:
236: [[x=[real, imaginary], y=[real,imaginary]], the first solution
237: [x=[real, imaginary], y=[real,imaginary]], the second solution
238: ...
239: @end example
240: */
241: /*&jp-texi
242: @table @t
243: @item $B;2>H(B
244: @code{ox_launch}, @code{phc.start}, @file{$(OpenXM_HOME)/bin/lin_phcv2}(original PHC pack binary for linux)
245: @end table
246: */
247: /*&eg-texi
248: @table @t
249: @item Reference
250: @code{ox_launch}, @code{phc.start}, @file{$(OpenXM_HOME)/bin/lin_phcv2}(original PHC pack binary for linux)
251: @end table
252: */
253:
254:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>