# mpsolve - Man Page

A multiprecision polynomial rootfinder

## Description

mpsolve [-a alg] [-b] [-c] [-G goal] [-o digits] [-i digits] [-j n] [-t type] [-S set] [-D detect] [-O format] [-l filename] [-x] [-d] [-v] [-r] [infile | -p poly]

## Options

- -a alg
Select the algorithm used to solve the polynomial/secular equation:

u: Classic unisolve algorithm (Aberth iterations and dynamic precision)

s: Secular algorithm, using regeneration of increasingly better-conditionedsecular equations with the same roots of the polynomial

- -b
Perform Aberth iterations in Jacobi-style instead of Gauss-Seidel

- -c
Enable crude approximation mode

- -G goal
Select the goal to reach. Possible values are:

a: Approximate the roots

i: Isolate the roots

c: Count the roots in the search set- -o digits
Number of guaranteed digits of the roots

- -i digits
Digits of precision of the input coefficients

- -j n
Number of threads to spawn as workers

- -t type
Type can be 'f' for floating point or 'd' for DPE

- -S set
Restrict the search set for the roots set can be one of:

u: upper half-plane { x | Im(x) > 0 }

d: lower half-plane { x | Im(x) < 0 }

l: left half-plane { x | Re(x) < 0 }

r: right half-plane { x | Re(x) > 0 }

i: inside the unit circle: { x | |x| < 1 }

o: outside the unit circle { x | |x| > 1 }

R: real axis { x | Im(x) = 0 }

I: imaginary axis { x | Re(x) = 0 }- -D detect
Detect properties of the roots:

r: real roots

i: imaginary roots

b: both- -O format
Select format for output:

f: full output

b: bare output

c: compact output

v: verbose output

g: gnuplot-ready output

gf: gnuplot-full mode, can be piped to gnuplot and display error bars.

gp: The same as gf but only with points (suitable for high degree polynomials)For example:

mpsolve

**-as -Ogf**myfile.pol | gnuplot- -l
- filename Set filename as the output for the log, instead of the tty. Use this option with
**-d[domains]**- to activate the desired debug domains.
- -x
Enable graphic visualization of convergence

**-d[domains]**Activate debug on selected domains, that can be one of:- t: trace

a: approximation

c: cluster

i: improvement

w: timings

o: input/Output

m: memory management

f: function calls

p: debug stop condition and development of iteration packets

r: regeneration Example:**-dfi**for function calls and improvement

**-p poly**Solve the polynomial specified on the command line.

For example: mpsolve

**-p**"x^4-6x^9+6/7x + 5"- -r
Use a recursive strategy to dispose the initial approximations.

This option is available only for monomial polynomials.

Note: this option is considered experimental.- -v
Print the version and exit

## See Also

The full documentation for **MPSolve** is maintained as a Texinfo manual. If the **info** and **MPSolve** programs are properly installed at your site, the command

**info MPSolve**

should give you access to the complete manual.