diff options
Diffstat (limited to 'Master/texmf-dist/doc/plain')
-rw-r--r-- | Master/texmf-dist/doc/plain/xintsession/README.md | 68 |
1 files changed, 44 insertions, 24 deletions
diff --git a/Master/texmf-dist/doc/plain/xintsession/README.md b/Master/texmf-dist/doc/plain/xintsession/README.md index 422e5f88b67..2152a1be165 100644 --- a/Master/texmf-dist/doc/plain/xintsession/README.md +++ b/Master/texmf-dist/doc/plain/xintsession/README.md @@ -1,6 +1,6 @@ # xintsession README # -Release: 0.3b (2021-07-01) +Release: 0.4alpha (2021-11-01) ## Usage ## @@ -12,22 +12,22 @@ It will load [xintexpr](http://www.ctan.org/pkg/xint) and To start a session: -1. Execute `etex xintsession`, or if available, `rlwrap etex xintsession` - to benefit from arrow keys navigation and other improvements such - as parentheses highlighting.\ - \ - Alternatively, execute `rlwrap etex` and enter `xintsession` at the `**` - prompt.\ - \ - One can also use the `-jobname` option of `etex` at this step.\ - \ - At my locale I added `alias xs="rlwrap etex xintsession"` to my `.bashrc` - so I only have to type `xs` at the command line. +1. Execute `etex xintsession`, 2. An `>>>` invite appears, and computations can begin!\ \ Start entering input, terminate it via a semi-colon `;`. Say `&help` for help and `&bye` to quit. +In more details: if available at your locale use `rlwrap etex xintsession` to +benefit from arrow keys navigation and other improvements such as parentheses +highlighting. Alternatively, execute `rlwrap etex` and enter `xintsession` at +the `**` prompt. + +One can also use the `-jobname` option of `etex` at this step. + +At my locale I added `alias xs="rlwrap etex xintsession"` to my `.bashrc` +so I only have to type `xs` at the command line. + The above explanations have been tested on a Unixen (Mac OS), and probably `rlwrap` is not available on all platforms, but it is not a requirement. @@ -45,25 +45,38 @@ Here is a sample session (spaces do not matter): @_4 4.499205338329425 >>> add(1/i, i=1..1000); @_5 7.485470860550346 - >>> 1 - ... + - ... \message{xintsession is great!} - (executing \message {xintsession is great!} in background) - xintsession is great! - ... 2 - ... ; - @_6 3.0 + >>> &pol + pol mode (i.e. function definitions use \poldef) + >>> P(x):=(x-0.1)^3 (x+1.8)^2 (x^10 - (100x-1)^2); + + P = x^15+33*x^14/10+219*x^13/100-865*x^12/1000+936*x^11/10000-324*x^10/100000-1 + 0000*x^7-328000*x^6/10-2124100*x^5/100+9084700*x^4/1000-11111900*x^3/10000+5198 + 500*x^2/100000-74160*x/100000+324/100000 + --> &GenFloat(P) lets P become usable as function in fp mode + --> &ROOTS(P) (resp. &ROOTS(P,N)) finds all rational roots exactly and + all irrational roots with at least 10 (resp. N) fractional digits + >>> &ROOTS(P,30) + Solving for real roots of P and assigning them (please wait...) + (mult. 1) RootP_1 = -3.164772734675337090200909653480... + (mult. 2) RootP_2 = -1.8 + (mult. 1) RootP_3 = 0.009999999999000000000499999999... + (mult. 1) RootP_4 = 0.010000000001000000000500000000... + (mult. 3) RootP_5 = 0.1 + (mult. 1) RootP_6 = 3.159772703424837079727026834533... + Square-free irrational part: x^10-10000*x^2+200*x-1 + --> &REFINEROOTS(P,N) to extend real irr. roots to N fractional digits >>> &bye Did I say something wrong? - Session transcript written on xintsession-210531_09h08.tex + Session transcript written on xintsession-211101_18h17.tex ) No pages of output. Transcript written on xintsession.log. As this example illustrates, the computational engine can work in -various modes: exact, fp, int, and pol. Say `&fp=number` at the -`>>>` prompt to activate floating point mode with `number` digits -of precision. +various modes: exact, fp, int, and pol (the `&ROOTS()` will work in +any mode the same once the polynomial as been defined in pol mode). +Say `&fp=number` at the `>>>` prompt to activate floating point mode +with `number` digits of precision. If ill-formed input drops you deep into TeX error interaction mode, try hitting `S` as it may work to bring you back to normal session. @@ -72,6 +85,13 @@ For additional explanations, enter `&help` at the `>>>` prompt. ## Change log ## +- 0.4alpha (2021-11-01) + - add `&GenFloat` interface to `\PolGenFloatVariant` + - add `&ROOTS` and `&REFINEROOTS` interface to under-the-hood + usage of the + [polexpr](http://www.ctan.org/pkg/polexpr) facilities + allowing to get all real roots of the given polynomial + to arbitrary precision (and all rational roots exactly) - 0.3b (2021-07-01) - fix output still uses `(@_<n>)` when a variable is defined but the parentheses were dropped a while ago in general |