Annotation of OpenXM/src/asir-contrib/packages/doc/phc.oxweave, Revision 1.1
1.1 ! takayama 1: /* $OpenXM$ */
! 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
! 65: * phc_start::
! 66: * phc::
! 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>