From 65bc243624a3973be87939de8f9f326a91cbcb39 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 10 May 2021 19:49:04 +0000 Subject: xint (10may21) git-svn-id: svn://tug.org/texlive/trunk@59161 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/generic/xint/xint.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintbinhex.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintcfrac.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintcore.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintexpr.sty | 25 +- Master/texmf-dist/tex/generic/xint/xintfrac.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintgcd.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintkernel.sty | 4 +- Master/texmf-dist/tex/generic/xint/xintlog.sty | 677 ++++++---------------- Master/texmf-dist/tex/generic/xint/xintseries.sty | 4 +- Master/texmf-dist/tex/generic/xint/xinttools.sty | 4 +- Master/texmf-dist/tex/generic/xint/xinttrig.sty | 130 +++-- 12 files changed, 272 insertions(+), 596 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/generic/xint/xint.sty b/Master/texmf-dist/tex/generic/xint/xint.sty index a0c06cb0417..524b2891bfb 100644 --- a/Master/texmf-dist/tex/generic/xint/xint.sty +++ b/Master/texmf-dist/tex/generic/xint/xint.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xint: Expandable operations on big integers %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty (loaded by xintcore.sty) \XINT_providespackage \ProvidesPackage{xint}% - [2021/05/05 v1.4e Expandable operations on big integers (JFB)]% + [2021/05/10 v1.4f Expandable operations on big integers (JFB)]% \long\def\xint_firstofthree #1#2#3{#1}% \long\def\xint_secondofthree #1#2#3{#2}% \long\def\xint_thirdofthree #1#2#3{#3}% diff --git a/Master/texmf-dist/tex/generic/xint/xintbinhex.sty b/Master/texmf-dist/tex/generic/xint/xintbinhex.sty index 7482824c7ec..392eabd0adf 100644 --- a/Master/texmf-dist/tex/generic/xint/xintbinhex.sty +++ b/Master/texmf-dist/tex/generic/xint/xintbinhex.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintbinhex: Expandable binary and hexadecimal conversions %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xintbinhex}% - [2021/05/05 v1.4e Expandable binary and hexadecimal conversions (JFB)]% + [2021/05/10 v1.4f Expandable binary and hexadecimal conversions (JFB)]% \newcount\xint_c_ii^xv \xint_c_ii^xv 32768 \newcount\xint_c_ii^xvi \xint_c_ii^xvi 65536 \def\XINT_tmpa #1{\ifx\relax#1\else diff --git a/Master/texmf-dist/tex/generic/xint/xintcfrac.sty b/Master/texmf-dist/tex/generic/xint/xintcfrac.sty index dc8b8838729..a41f9d4092c 100644 --- a/Master/texmf-dist/tex/generic/xint/xintcfrac.sty +++ b/Master/texmf-dist/tex/generic/xint/xintcfrac.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintcfrac: Expandable continued fractions with xint package %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xintcfrac}% - [2021/05/05 v1.4e Expandable continued fractions with xint package (JFB)]% + [2021/05/10 v1.4f Expandable continued fractions with xint package (JFB)]% \def\xintCFrac {\romannumeral0\xintcfrac }% \def\xintcfrac #1% {% diff --git a/Master/texmf-dist/tex/generic/xint/xintcore.sty b/Master/texmf-dist/tex/generic/xint/xintcore.sty index b1e52e326fd..0eedc381203 100644 --- a/Master/texmf-dist/tex/generic/xint/xintcore.sty +++ b/Master/texmf-dist/tex/generic/xint/xintcore.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintcore: Expandable arithmetic on big integers %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xintcore}% - [2021/05/05 v1.4e Expandable arithmetic on big integers (JFB)]% + [2021/05/10 v1.4f Expandable arithmetic on big integers (JFB)]% \csname XINT_Clamped_istrapped\endcsname \csname XINT_ConversionSyntax_istrapped\endcsname \csname XINT_DivisionByZero_istrapped\endcsname diff --git a/Master/texmf-dist/tex/generic/xint/xintexpr.sty b/Master/texmf-dist/tex/generic/xint/xintexpr.sty index baf227ba966..80c3dad219e 100644 --- a/Master/texmf-dist/tex/generic/xint/xintexpr.sty +++ b/Master/texmf-dist/tex/generic/xint/xintexpr.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintexpr: Expandable expression parser %% --------------------------------------------------------------- @@ -82,7 +82,7 @@ \XINTsetupcatcodes% \XINT_providespackage \ProvidesPackage{xintexpr}% - [2021/05/05 v1.4e Expandable expression parser (JFB)]% + [2021/05/10 v1.4f Expandable expression parser (JFB)]% \catcode`! 11 \let\XINT_Cmp \xintiiCmp \def\XINTfstop{\noexpand\XINTfstop}% @@ -103,6 +103,7 @@ \let\XINTdigits\XINT_digits \xintreloadscilibs }% +\def\XINTdigitsormax{\ifnum\XINTdigits>\xint_c_ii^vi\xint_c_ii^vi\else\XINTdigits\fi}% \def\XINT:expr:toblistwith#1#2% {% {\expandafter\XINT:expr:toblist_checkempty @@ -282,7 +283,7 @@ \expanded \XINT:NEhook:x:mapwithin\XINT:expr:mapwithin{\XINTiRound_braced{#1}}% }% -\def\XINTiRound_braced#1#2{{\xintiRound{#1}{#2}[\the\numexpr-#1]}}% +\def\XINTiRound_braced#1#2{{\xintiRound{#1}{#2}[\the\numexpr\ifnum#1<\xint_c_i0\else-#1\fi]}}% \def\xintfloatexpro #1% {% \ifx [#1\expandafter\XINT_flexpr_withopt\else\expandafter\XINT_flexpr_noopt @@ -3028,13 +3029,20 @@ }}% }% \let\XINT_flexpr_func_float\XINT_expr_func_float -\def\XINT_expr_func_float_ #1#2#3% +\def\XINT_expr_func_float_dgt #1#2#3% {% \expandafter #1\expandafter #2\expandafter{% \romannumeral`&&@\XINT:NEhook:f:one:from:one {\romannumeral`&&@\XINTinFloatdigits#3}}% }% -\let\XINT_flexpr_func_float_\XINT_expr_func_float_ +\let\XINT_flexpr_func_float_dgt\XINT_expr_func_float_dgt +\def\XINT_expr_func_float_dgtormax #1#2#3% +{% + \expandafter #1\expandafter #2\expandafter{% + \romannumeral`&&@\XINT:NEhook:f:one:from:one + {\romannumeral`&&@\XINTinFloatdigitsormax#3}}% +}% +\let\XINT_flexpr_func_float_dgtormax\XINT_expr_func_float_dgtormax \def\XINT_expr_func_sfloat #1#2#3% {% \expandafter #1\expandafter #2\expandafter{\expandafter{% @@ -3043,6 +3051,13 @@ }}% }% \let\XINT_flexpr_func_sfloat\XINT_expr_func_sfloat +\def\XINT_expr_func_sfloat_dgtormax #1#2#3% +{% + \expandafter #1\expandafter #2\expandafter{% + \romannumeral`&&@\XINT:NEhook:f:one:from:one + {\romannumeral`&&@\XINTinFloatSdigitsormax#3}}% +}% +\let\XINT_flexpr_func_sfloat_dgtormax\XINT_expr_func_sfloat_dgtormax \expandafter\def\csname XINT_expr_func_ilog10\endcsname #1#2#3% {% \expandafter #1\expandafter #2\expandafter{\expandafter{% diff --git a/Master/texmf-dist/tex/generic/xint/xintfrac.sty b/Master/texmf-dist/tex/generic/xint/xintfrac.sty index 9da94186939..5b72d9741ef 100644 --- a/Master/texmf-dist/tex/generic/xint/xintfrac.sty +++ b/Master/texmf-dist/tex/generic/xint/xintfrac.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintfrac: Expandable operations on fractions %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xintfrac}% - [2021/05/05 v1.4e Expandable operations on fractions (JFB)]% + [2021/05/10 v1.4f Expandable operations on fractions (JFB)]% \def\XINT_cntSgnFork #1% {% \ifcase #1\expandafter\xint_secondofthree diff --git a/Master/texmf-dist/tex/generic/xint/xintgcd.sty b/Master/texmf-dist/tex/generic/xint/xintgcd.sty index 83821ea8815..a7dbe96cc44 100644 --- a/Master/texmf-dist/tex/generic/xint/xintgcd.sty +++ b/Master/texmf-dist/tex/generic/xint/xintgcd.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintgcd: Euclidean algorithm with xint package %% --------------------------------------------------------------- @@ -77,7 +77,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xintgcd}% - [2021/05/05 v1.4e Euclide algorithm with xint package (JFB)]% + [2021/05/10 v1.4f Euclide algorithm with xint package (JFB)]% \def\xintBezout {\romannumeral0\xintbezout }% \def\xintbezout #1% {% diff --git a/Master/texmf-dist/tex/generic/xint/xintkernel.sty b/Master/texmf-dist/tex/generic/xint/xintkernel.sty index 19fcfed741d..def82ede68f 100644 --- a/Master/texmf-dist/tex/generic/xint/xintkernel.sty +++ b/Master/texmf-dist/tex/generic/xint/xintkernel.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintkernel: Paraphernalia for the xint packages %% --------------------------------------------------------------- @@ -159,7 +159,7 @@ \fi \XINT_providespackage \ProvidesPackage {xintkernel}% - [2021/05/05 v1.4e Paraphernalia for the xint packages (JFB)]% + [2021/05/10 v1.4f Paraphernalia for the xint packages (JFB)]% \chardef\xint_c_ 0 \chardef\xint_c_i 1 \chardef\xint_c_ii 2 diff --git a/Master/texmf-dist/tex/generic/xint/xintlog.sty b/Master/texmf-dist/tex/generic/xint/xintlog.sty index e20e40bebcc..8bfcaa86ef6 100644 --- a/Master/texmf-dist/tex/generic/xint/xintlog.sty +++ b/Master/texmf-dist/tex/generic/xint/xintlog.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintlog: Logarithms and exponentials for xintexpr %% --------------------------------------------------------------- @@ -68,10 +68,10 @@ \expandafter\xint_secondoftwo \fi {\immediate\write-1{Reloading xintlog library using Digits=\xinttheDigits.}}% -{\expandafter\gdef\csname xintlibver@log\endcsname{2021/05/05 v1.4e}% +{\expandafter\gdef\csname xintlibver@log\endcsname{2021/05/10 v1.4f}% \XINT_providespackage \ProvidesPackage{xintlog}% -[2021/05/05 v1.4e Logarithms and exponentials for xintexpr (JFB)]% +[2021/05/10 v1.4f Logarithms and exponentials for xintexpr (JFB)]% }% \def\xintreloadxintlog{\input xintlog.sty }% \xintexprSafeCatcodes\catcode`_ 11 @@ -150,28 +150,30 @@ \def\XINT_scipow_Biszero#1]#2#3{ 1[0]}% \def\XINT_scipow_b #1#2/#3[#4]#5% {% - \unless\if1\XINT_is_One#3XY\xint_dothis\XINT_scipow_c\fi - \ifnum#4<\xint_c_mone\xint_dothis\XINT_scipow_c\fi - \ifnum#4=\xint_c_mone - \if5\xintLDg{#1#2} % + \unless\if1\XINT_is_One#3XY\xint_dothis\XINT_scipow_c\fi + \ifnum#4<\xint_c_mone\xint_dothis\XINT_scipow_c\fi + \ifnum#4=\xint_c_mone + \if5\xintLDg{#1#2} % \xint_afterfi{\xint_dothis\XINT_scipow_halfint}\else \xint_afterfi{\xint_dothis\XINT_scipow_c}% + \fi \fi - \fi - \xint_orthat#5#1#2/#3[#4]% + \xint_orthat#5#1#2/#3[#4]% }% \def\XINT_scipow_int #1/1[#2]#3% {% - \expandafter\XINT_flpower_checkB_a - \romannumeral0\XINT_dsx_addzeros{#2}#1;.\XINTdigits.{#3}{\XINTinfloatS[\XINTdigits]}% + \expandafter\XINT_flpower_checkB_a + \romannumeral0\XINT_dsx_addzeros{#2}#1;.\XINTdigits.{#3}{\XINTinfloatS[\XINTdigits]}% }% \def\XINT_scipow_halfint#1/1[#2]#3% {% - \expandafter\XINT_flpower_checkB_a - \romannumeral0\xintdsr{\xintDouble{#1}}.\XINTdigits.{#3}\XINT_flpowerh_finish + \expandafter\XINT_flpower_checkB_a + \romannumeral0\xintdsr{\xintDouble{#1}}.\XINTdigits.{#3}\XINT_flpowerh_finish }% \def\XINT_flpowerh_finish #1% - {\XINTinfloatS[\XINTdigits]{\XINTinFloatSqrt[\XINTdigits+\xint_c_iii]{#1}}}% +{% + \XINTinfloatS[\XINTdigits]{\XINTinFloatSqrt[\XINTdigits+\xint_c_iii]{#1}}% +}% \def\XINT_tmpa#1.{% \def\XINT_scipow_c ##1[##2]##3% {% @@ -198,48 +200,50 @@ }% \def\XINT_scipow_Aisneg #1#2\xint:#3\xint: {% - \XINT_signalcondition{InvalidOperation}{Fractional power of negative argument}{}{0[0]} + \XINT_signalcondition{InvalidOperation}{Fractional power of negative argument}{}{0[0]}% }% \ifnum\XINTdigits<9 - \def\XINTinfloatscipow#1#2% + \def\XINT_tmpa#1.#2.#3.{% + \def\XINT_scipow_c ##1[##2]##3% {% - \expandafter\XINT_scipow_a\romannumeral0\xintraw{#2}\relax{#1}% - }% - \def\XINT_scipow_b #1[#2]#3#4% - {% - \expandafter\XINT_scipow_d\romannumeral0\XINTinfloat[9]{#4}\xint:#1[#2]\xint: + \expandafter\XINT_scipow_d + \romannumeral0\expandafter\XINT_scipow_c_i + \romannumeral0\XINTinfloat[#1]{##3}\xint:##1[##2]\xint: }% + \def\XINT_scipow_c_i##1[##2]{ ##1#3[##2-#2]}% + }\expandafter\XINT_tmpa\the\numexpr\XINTdigits\expandafter.% + \the\numexpr9-\XINTdigits\expandafter.% + \romannumeral\xintreplicate{9-\XINTdigits}0.% \def\XINT_scipow_Aispos #1\xint:#2\xint: {% \poormanpoweroften{\xintMul{#2}{\romannumeral0\expandafter\PML@logbaseten#1}}% }% - \def\XINT_scipow_Aisneg #1#2\xint:#3\xint: - {% - \ifcase\xintFloatIntType{#3}% - \or\expandafter-\romannumeral0% - \else - \expandafter\XINT_scipow_AnegBfrac - \fi - \poormanpoweroften{\xintMul{#3}{\romannumeral0\expandafter\PML@logbaseten#2}}% - }% \fi \def\xintPow{\romannumeral0\xintpow}% \def\xintpow#1#2% {% \expandafter\XINT_scipow_a\romannumeral0\xintrez{#2}\XINT_pow_int{#1}% }% -\def\XINT_pow_int #1/1[#2]%#3 +\def\XINT_pow_int #1/1[#2]% {% \expandafter\XINT_pow_int_a\romannumeral0\XINT_dsx_addzeros{#2}#1;.% }% -\def\XINT_pow_int_a #1#2.#3% +\def\XINT_pow_int_a #1#2.% {% \ifnum\if-#1\xintLength{#2}\else\xintLength{#1#2}\fi>\xint_c_iv - \expandafter\XINT_pow_tosci - \fi - \expandafter\XINT_pow_int_b\romannumeral0\xintraw{#3}\xint:#1#2\xint: + \expandafter\XINT_pow_bigint + \else\expandafter\XINT_pow_int_b + \fi #1#2.% +}% +\def\XINT_pow_bigint #1.#2% +{% + \XINT_flpower_checkB_a#1.\XINTdigits.{#2}{\XINTinfloatS[\XINTdigits]}% +}% +\def\XINT_pow_int_b #1.#2% +{% + \expandafter\XINT_pow_int_c\romannumeral0\xintraw{#2}\xint:#1\xint: }% -\def\XINT_pow_int_b#1#2/#3[#4]\xint:#5\xint: +\def\XINT_pow_int_c#1#2/#3[#4]\xint:#5\xint: {% \if0\ifnum\numexpr\xint_c_x^iv/% (\xintLength{#1#2}\if-#1-\xint_c_i\fi)<\XINT_Abs#5 % @@ -247,50 +251,14 @@ \ifnum\numexpr\xint_c_x^iv/\xintLength{#3}<\XINT_Abs#5 % 1\else 0\fi\fi - \expandafter\XINT_fpow_fork\else\expandafter\XINT_pow_tosci_i + \expandafter\XINT_fpow_fork\else\expandafter\XINT_pow_bigint_i \fi #5\Z{#4}{#1#2}{#3}% }% -\def\XINT_tmpa#1.{% -\def\XINT_pow_tosci##1\xintraw%##2%\xint:##3\xint: -{% - \expandafter\XINT_scipow_d\romannumeral0\XINTinfloatS[#1]% -}% -\def\XINT_pow_tosci_i##1\Z##2##3##4% +\def\XINT_pow_bigint_i#1\Z#2#3#4% {% - \expandafter\XINT_scipow_d\romannumeral0\expandafter\XINT_infloatS_clean - \romannumeral0\XINT_infloat_a#1.{##2}{##3}{##4}\xint:##1\xint: + \XINT_flpower_checkB_a#1.\XINTdigits.{#3/#4[#2]}{\XINTinfloatS[\XINTdigits]}% }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits.% -\ifnum\XINTdigits<9 - \def\xintpow#1#2% - {% - \expandafter\XINT_poorpow_a\romannumeral0\xintrez{#2}\relax{#1}% - }% - \def\XINT_poorpow_a #1% - {% - \xint_gob_til_zero#1\XINT_scipow_Biszero0\XINT_poorpow_b#1% - }% - \def\XINT_poorpow_b #1#2/#3[#4]#5% - {% - \unless\if1\XINT_is_One#3XY\xint_dothis\XINT_poorpow_c\fi - \ifnum#4<\xint_c_\xint_dothis\XINT_poorpow_c\fi - \xint_orthat\XINT_pow_int#1#2/#3[#4]% - }% - \def\XINT_poorpow_c #1[#2]#3% - {% - \expandafter\XINT_scipow_d\romannumeral0\XINTinfloat[9]{#3}\xint:#1[#2]\xint: - }% - \def\XINT_pow_tosci#1\xintraw%#2%\xint:#3\xint: - {% - \expandafter\XINT_scipow_d\romannumeral0\XINTinfloat[9]% - }% - \def\XINT_pow_tosci_i#1\Z#2#3#4% - {% - \expandafter\XINT_scipow_d\romannumeral0\expandafter\XINT_infloat_clean - \romannumeral0\XINT_infloat_a9.{#2}{#3}{#4}\xint:#1\xint: - }% -\fi \ifnum\XINTdigits<9 \expandafter\def\csname XINT_expr_func_log10\endcsname#1#2#3% {% @@ -392,8 +360,8 @@ \expandafter\let\csname XINT_c_5_0_inv_x\endcsname\XINT_tmpa \expandafter\let\csname XINT_c_6_0_inv_x\endcsname\XINT_tmpa \def\XINT_tmpa#1#2#3#4;% - {\expandafter\edef\csname XINT_c_#1_#2\endcsname{\XINTinFloat[\XINTdigits+5]{#3#4[-79]}}% - \expandafter\edef\csname XINT_c_#1_#2_x\endcsname{\XINTinFloat[\XINTdigits+10]{#3#4[-79]}}% + {\expandafter\edef\csname XINT_c_#1_#2\endcsname{\XINTinFloat[\XINTdigitsormax+5]{#3#4[-79]}}% + \expandafter\edef\csname XINT_c_#1_#2_x\endcsname{\XINTinFloat[\XINTdigitsormax+10]{#3#4[-79]}}% }% \XINT_tmpa 1 1 12589254117941672104239541063958006060936174094669310691079230195266476157825020;% \XINT_tmpa 1 2 15848931924611134852021013733915070132694421338250390683162968123166568636684540;% @@ -450,8 +418,8 @@ \XINT_tmpa 6 8 10000184208504057336610176132939223090407041937631374389422968832433217547184883;% \XINT_tmpa 6 9 10000207234805653031739097001771331138303016031686764989867510425362339583809842;% \def\XINT_tmpa#1#2#3#4;% - {\expandafter\edef\csname XINT_c_#1_#2_inv\endcsname{\XINTinFloat[\XINTdigits+5]{#3#4[-80]}}% - \expandafter\edef\csname XINT_c_#1_#2_inv_x\endcsname{\XINTinFloat[\XINTdigits+10]{#3#4[-80]}}% + {\expandafter\edef\csname XINT_c_#1_#2_inv\endcsname{\XINTinFloat[\XINTdigitsormax+5]{#3#4[-80]}}% + \expandafter\edef\csname XINT_c_#1_#2_inv_x\endcsname{\XINTinFloat[\XINTdigitsormax+10]{#3#4[-80]}}% }% \XINT_tmpa 1 1 79432823472428150206591828283638793258896063175548433209232392931695569719148754;% \XINT_tmpa 1 2 63095734448019324943436013662234386467294525718822872452772952883349494329768681;% @@ -508,13 +476,13 @@ \XINT_tmpa 6 8 99998157948891574541919478156202215623119146605983303201215215949834619332550929;% \XINT_tmpa 6 9 99997927694888844379020974874260864289829523807763942234420930258187873904191138;% \edef\XINT_c_logten - {\XINTinFloat[\XINTdigits+4] + {\XINTinFloat[\XINTdigitsormax+4] {23025850929940456840179914546843642076011014886287729760333279009675726096773525[-79]}}% \edef\XINT_c_oneoverlogten - {\XINTinFloat[\XINTdigits+4] + {\XINTinFloat[\XINTdigitsormax+4] {43429448190325182765112891891660508229439700580366656611445378316586464920887077[-80]}}% \edef\XINT_c_oneoverlogten_xx - {\XINTinFloat[\XINTdigits+14] + {\XINTinFloat[\XINTdigitsormax+14] {43429448190325182765112891891660508229439700580366656611445378316586464920887077[-80]}}% \def\XINTinFloatExp{\romannumeral0\XINTinfloatexp}% \def\XINT_tmpa#1.{% @@ -523,7 +491,7 @@ \XINTinfloatpowten {\xintMul{\XINT_c_oneoverlogten_xx}{\XINTinFloatS[#1]{##1}}}% }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+14.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+14.% \def\XINTinFloatPowTen{\romannumeral0\XINTinfloatpowten}% \def\XINT_tmpa#1.{% \def\XINTinfloatpowten##1% @@ -531,7 +499,7 @@ \expandafter\XINT_powten_fork \romannumeral0\xintiround{#1}{##1}[-#1]% }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+4.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+4.% \def\XINT_powten_fork#1% {% \xint_UDzerominusfork @@ -545,11 +513,11 @@ {% \expandafter\XINT_powten_pos_a\romannumeral0\xintround{6}{#1[#2]}#1[#2]% }% -\def\XINT_tmpa #1.#2.{% +\def\XINT_tmpa #1.#2.#3.{% \def\XINT_powten_pos_a ##1.##2##3##4##5##6##7##8[##9]% {% \expandafter\XINT_infloate - \romannumeral0\XINTinfloat[\XINTdigits]{% + \romannumeral0\XINTinfloat[#3]{% \xintMul{\csname XINT_c_1_##2\endcsname}{% \XINTinFloat[#1]{% \xintMul{\csname XINT_c_2_##3\endcsname}{% @@ -571,17 +539,18 @@ }% }}}}}}}}}}}}{##1}% }}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits+5\expandafter.% - \the\numexpr\XINTdigits-1.% + \the\numexpr\XINTdigitsormax+5\expandafter.% + \the\numexpr\XINTdigitsormax-1\expandafter.% + \the\numexpr\XINTdigitsormax.% \def\XINT_powten_neg#1[#2]% {% \expandafter\XINT_powten_neg_a\romannumeral0\xintround{6}{#1[#2]}#1[#2]% }% -\def\XINT_tmpa #1.#2.{% +\def\XINT_tmpa #1.#2.#3.{% \def\XINT_powten_neg_a -##1.##2##3##4##5##6##7##8[##9]% {% \expandafter\XINT_infloate - \romannumeral0\XINTinfloat[\XINTdigits]{% + \romannumeral0\XINTinfloat[#3]{% \xintMul{\csname XINT_c_1_##2_inv\endcsname}{% \XINTinFloat[#1]{% \xintMul{\csname XINT_c_2_##3_inv\endcsname}{% @@ -603,8 +572,9 @@ }% }}}}}}}}}}}}{-##1}% }}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits+5\expandafter.% - \the\numexpr\XINTdigits-1.% + \the\numexpr\XINTdigitsormax+5\expandafter.% + \the\numexpr\XINTdigitsormax-1\expandafter.% + \the\numexpr\XINTdigitsormax.% \def\XINT_tmpa#1.#2.{% \def\XINT_Exp_series_a_ii##1\xint: {% @@ -622,8 +592,8 @@ }% }% \expandafter\XINT_tmpa - \the\numexpr\XINTdigits-6\expandafter.% - \the\numexpr\XINTdigits-1.% + \the\numexpr\XINTdigitsormax-6\expandafter.% + \the\numexpr\XINTdigitsormax-1.% \ifnum\XINTdigits>15 \def\XINT_tmpa#1.#2.#3.#4.{% \def\XINT_Exp_series_a_ii##1\xint: @@ -647,8 +617,8 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-13\expandafter.% - \the\numexpr\XINTdigits-6.% + \the\numexpr\XINTdigitsormax-13\expandafter.% + \the\numexpr\XINTdigitsormax-6.% {5[-1]}.% {1[0]}.% \fi @@ -675,9 +645,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-19\expandafter.% - \the\numexpr\XINTdigits-13\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-13]{1/6[0]}.% + \the\numexpr\XINTdigitsormax-19\expandafter.% + \the\numexpr\XINTdigitsormax-13\expandafter.% + \romannumeral0\XINTinfloat[\XINTdigitsormax-13]{1/6[0]}.% {5[-1]}.% \fi \ifnum\XINTdigits>28 @@ -715,10 +685,10 @@ \csname XINT_Exp_series_c_\romannumeral\numexpr#1-2\expandafter\endcsname \csname XINT_Exp_series_c_\romannumeral\numexpr#1-3\endcsname \expandafter\XINT_tmpc - \the\numexpr\XINTdigits-#2\expandafter.% - \the\numexpr\XINTdigits-#3\expandafter.\expanded{% - \XINTinFloat[\XINTdigits-#3]{1/#6[0]}.% - \XINTinFloat[\XINTdigits-#4]{1/#7[0]}.% + \the\numexpr\XINTdigitsormax-#2\expandafter.% + \the\numexpr\XINTdigitsormax-#3\expandafter.\expanded{% + \XINTinFloat[\XINTdigitsormax-#3]{1/#6[0]}.% + \XINTinFloat[\XINTdigitsormax-#4]{1/#7[0]}.% }% }% \XINT_tmpa 5 26 19 13 120 24 6 %<-- keep space @@ -732,7 +702,7 @@ \def\XINTinfloatlog {% \expandafter\XINT_log_out - \romannumeral0\expandafter\XINT_logten_a + \romannumeral0\expandafter\XINT_logtenxdg_a \romannumeral0\XINTinfloat[#1]%{##1} }% \def\XINT_log_out ##1\xint:##2\xint: @@ -744,7 +714,7 @@ \def\XINTinfloatlogten {% \expandafter\XINT_logten_out - \romannumeral0\expandafter\XINT_logten_a + \romannumeral0\expandafter\XINT_logtenxdg_a \romannumeral0\XINTinfloat[#1]%{##1} }% \def\XINT_logten_out ##1\xint:##2\xint: @@ -752,75 +722,67 @@ \XINTinfloat[#1]% {\xintAdd{##1}{\xintMul{\XINT_c_oneoverlogten}{##2}}}% }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax.% \def\XINTinFloatLogTen_xdgout%#1[#2] {% - \romannumeral0\expandafter\XINT_logten_xdgout\romannumeral0\XINT_logten_a + \romannumeral0\expandafter\XINT_logten_xdgout\romannumeral0\XINT_logtenxdg_a }% \def\XINT_logten_xdgout #1\xint:#2\xint: {% \xintadd{#1}{\xintMul{\XINT_c_oneoverlogten_xx}{#2}}% }% -\def\XINT_logten_a#1[#2]% +\def\XINT_logtenxdg_a#1[#2]% {% - \expandafter\XINT_logten_b + \expandafter\XINT_logtenxdg_b \romannumeral0\XINTinfloat[9]{#1[#2]}#1[#2]% }% -\def\XINT_logten_b#1[#2]% +\def\XINT_logtenxdg_b#1[#2]% {% - \expandafter\XINT_logten_c + \expandafter\XINT_logtenxdg_c \romannumeral0\xintround{6}% {\xintiiAdd{\xintDSx{-9}{\the\numexpr#2+8\relax}}% {\the\numexpr\PML@#1.\relax}% [-9]}% \xint: }% -\def\XINT_logten_c #1#2% +\def\XINT_logtenxdg_c #1#2% {% \xint_gob_til_xint:#2\XINT_logten_IV\xint: - \XINT_logten_d #1#2% + \XINT_logtenxdg_d #1#2% }% -\def\XINT_logten_IV\xint:\XINT_logten_d0{\XINT_logten_f_III}% -\def\XINT_logten_d #1.#2\xint: +\def\XINT_logten_IV\xint:\XINT_logtenxdg_d0{\XINT_logten_f_III}% +\def\XINT_logtenxdg_d #1.#2\xint: {% \ifcase \ifnum#1=\xint_c_ - \ifnum #2>100000 \xint_c_i\else - \ifnum #2>\xint_c_ \xint_c_ii\else \xint_c_iii\fi\fi + \ifnum #2=\xint_c_ \xint_c_iii\else \xint_c_ii\fi \else - \ifnum#2>\xint_c_ \xint_c_i\else \xint_c_\fi + \ifnum#2>\xint_c_ \xint_c_ii\else \xint_c_\fi \fi \expandafter\XINT_logten_f_Isp - \or\expandafter\XINT_logten_f_I - \or\expandafter\XINT_logten_f_II + \or% never + \or\expandafter\XINT_logten_f_IorII \else\expandafter\XINT_logten_f_III \fi #1.#2\xint: }% -\def\XINT_logten_f_I#1% -{% - \xint_UDsignfork - #1\XINT_logten_f_I_neg - -\XINT_logten_f_I_pos - \krof #1% -}% -\def\XINT_logten_f_II#1% +\def\XINT_logten_f_IorII#1% {% \xint_UDsignfork - #1\XINT_logten_f_II_neg - -\XINT_logten_f_II_pos + #1\XINT_logten_f_IorII_neg + -\XINT_logten_f_IorII_pos \krof #1% }% \def\XINT_tmpa#1.{% \def\XINT_logten_f_Isp##1.000000\xint:##2[##3]% {% {##1[0]}\xint: - {\expandafter\XINT_LogTen_serI_a_i + {\expandafter\XINT_LogTen_serII_a_ii \romannumeral0\XINTinfloatS[#1]{\xintAdd{##2[##3-##1]}{-1[0]}}% \xint: }\xint: }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits-2.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax.% \def\XINT_tmpa#1.{% \def\XINT_logten_f_III##1\xint:##2[##3]% {% @@ -829,359 +791,56 @@ \romannumeral0\XINTinfloatS[#1]{\xintAdd{##2[##3]}{-1[0]}}% \xint: }\xint: -}}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+4.% +}}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+4.% \def\XINT_tmpa#1.#2.{% -\def\XINT_logten_f_I_pos##1.##2##3##4##5##6##7\xint:##8[##9]% +\def\XINT_logten_f_IorII_pos##1.##2##3##4##5##6##7\xint:##8[##9]% {% {\the\numexpr##1##2##3##4##5##6##7[-6]}\xint: - {\expandafter\XINT_LogTen_serI_a_i + {\expandafter\XINT_LogTen_serII_a_ii \romannumeral0\XINTinfloat[#2]% {\xintAdd{-1[0]}% - {\xintMul{\csname XINT_c_1_##2_inv\endcsname}{% + {\xintMul{\csname XINT_c_1_##2_inv_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_2_##3_inv\endcsname}{% + \xintMul{\csname XINT_c_2_##3_inv_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_3_##4_inv\endcsname}{% + \xintMul{\csname XINT_c_3_##4_inv_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_4_##5_inv\endcsname}{% + \xintMul{\csname XINT_c_4_##5_inv_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_5_##6_inv\endcsname}{% + \xintMul{\csname XINT_c_5_##6_inv_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_6_##7_inv\endcsname} + \xintMul{\csname XINT_c_6_##7_inv_x\endcsname} {##8[##9-##1]}% }}}}}}}}}}% }% }\xint: }\xint: }% -\def\XINT_logten_f_I_neg##1.##2##3##4##5##6##7\xint:##8[##9]% +\def\XINT_logten_f_IorII_neg##1.##2##3##4##5##6##7\xint:##8[##9]% {% {\the\numexpr##1##2##3##4##5##6##7[-6]}\xint: - {\expandafter\XINT_LogTen_serI_a_i - \romannumeral0\XINTinfloat[#2]% - {\xintAdd{-1[0]}% - {\xintMul{\csname XINT_c_1_##2\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_2_##3\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_3_##4\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_4_##5\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_5_##6\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_6_##7\endcsname} - {##8[##9-##1]}% - }}}}}}}}}}% - }% - }\xint: - }\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits+5\expandafter.\the\numexpr\XINTdigits-1.% -\def\XINT_tmpa#1.#2.{% -\def\XINT_logten_f_II_pos0.##1##2##3##4##5##6\xint:##7[##8]% -{% - {\the\numexpr##1##2##3##4##5##6[-6]}\xint: {\expandafter\XINT_LogTen_serII_a_ii \romannumeral0\XINTinfloat[#2]% {\xintAdd{-1[0]}% - {\xintMul{\csname XINT_c_1_##1_inv_x\endcsname}{% + {\xintMul{\csname XINT_c_1_##2_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_2_##2_inv_x\endcsname}{% + \xintMul{\csname XINT_c_2_##3_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_3_##3_inv_x\endcsname}{% + \xintMul{\csname XINT_c_3_##4_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_4_##4_inv_x\endcsname}{% + \xintMul{\csname XINT_c_4_##5_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_5_##5_inv_x\endcsname}{% + \xintMul{\csname XINT_c_5_##6_x\endcsname}{% \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_6_##6_inv_x\endcsname} - {##7[##8]}% - }}}}}}}}}}% - }% - }\xint: - }\xint: -}% -\def\XINT_logten_f_II_neg-0.##1##2##3##4##5##6\xint:##7[##8]% -{% - {\the\numexpr-##1##2##3##4##5##6[-6]}\xint: - {\expandafter\XINT_LogTen_serII_a_ii - \romannumeral0\XINTinfloat[#2]% - {\xintAdd{-1[0]}% - {\xintMul{\csname XINT_c_1_##1_x\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_2_##2_x\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_3_##3_x\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_4_##4_x\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_5_##5_x\endcsname}{% - \XINTinFloat[#1]{% - \xintMul{\csname XINT_c_6_##6_x\endcsname} - {##7[##8]}% + \xintMul{\csname XINT_c_6_##7_x\endcsname} + {##8[##9-##1]}% }}}}}}}}}}% }% }\xint: }\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits+10\expandafter.\the\numexpr\XINTdigits+4.% -\def\XINT_LogTen_serI_a_i#1\xint:{#1}% -\ifnum\XINTdigits>9 -\def\XINT_tmpa#1.#2.{% -\def\XINT_LogTen_serI_a_i##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_ii - \romannumeral0\XINTinfloatS[#2]{##1}\xint: -}% -\def\XINT_LogTen_serI_a_ii##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_ - \romannumeral0\xintadd{1}{\xintiiOpp\xintHalf{##10}[##2-1]}\xint: -}% -\def\XINT_LogTen_serI_c_##1\xint:##2\xint: -{% - \XINTinFloat[#2]{\xintMul{##1}{##2}}% -}% -}% -\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-7\expandafter.% - \the\numexpr\XINTdigits-1.% -\fi -\ifnum\XINTdigits>15 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_ii##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_iii - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_iii##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_i - \romannumeral0\xintadd{#3}{##1/3[##2]}\xint: -}% -\def\XINT_LogTen_serI_c_i##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_ - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-13\expandafter.% - \the\numexpr\XINTdigits-7.% - {-5[-1]}.% - {1[0]}.% -\fi -\ifnum\XINTdigits>21 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_iii##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_iv - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_iv##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_ii - \romannumeral0\xintadd{#3}{\xintiiMul{-25}{##1}[##2-2]}\xint: -}% -\def\XINT_LogTen_serI_c_ii##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_i - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-19\expandafter.% - \the\numexpr\XINTdigits-13\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-13]{1/3[0]}.% - {-5[-1]}.% -\fi -\ifnum\XINTdigits>27 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_iv##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_v - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_v##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_iii - \romannumeral0\xintadd{#3}{\xintDouble{##1}[##2-1]}\xint: -}% -\def\XINT_LogTen_serI_c_iii##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_ii - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-25\expandafter.% - \the\numexpr\XINTdigits-19\expandafter.\expanded{% - {-25[-2]}.% - \XINTinFloat[\XINTdigits-13]{1/3[0]}.% - }% -\fi -\ifnum\XINTdigits>33 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_v##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_vi - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_vi##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_iv - \romannumeral0\xintadd{#3}{\xintiiOpp##1/6[##2]}\xint: -}% -\def\XINT_LogTen_serI_c_iv##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_iii - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-31\expandafter.% - \the\numexpr\XINTdigits-25.% - {2[-1]}.% - {-25[-2]}.% -\fi -\ifnum\XINTdigits>39 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_vi##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_vii - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_vii##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_v - \romannumeral0\xintadd{#3}{##1/7[##2]}\xint: -}% -\def\XINT_LogTen_serI_c_v##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_iv - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-37\expandafter.% - \the\numexpr\XINTdigits-31\expandafter.% - \romannumeral0\XINTinfloatS[\XINTdigits-31]{-1/6[0]}.% - {2[-1]}.% -\fi -\ifnum\XINTdigits>45 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_vii##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_viii - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_viii##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_vi - \romannumeral0\xintadd{#3}{\xintiiMul{-125}{##1}[##2-3]}\xint: -}% -\def\XINT_LogTen_serI_c_vi##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_v - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-43\expandafter.% - \the\numexpr\XINTdigits-37\expandafter.\expanded{% - \XINTinFloat[\XINTdigits-37]{1/7[0]}.% - \XINTinFloat[\XINTdigits-31]{-1/6[0]}.% - }% -\fi -\ifnum\XINTdigits>51 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_viii##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_ix - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_ix##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_vii - \romannumeral0\xintadd{#3}{##1/9[##2]}\xint: -}% -\def\XINT_LogTen_serI_c_vii##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_vi - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-49\expandafter.% - \the\numexpr\XINTdigits-43\expandafter.\expanded{% - {-125[-3]}.% - \XINTinFloat[\XINTdigits-37]{1/7[0]}.% - }% -\fi -\ifnum\XINTdigits>57 -\def\XINT_tmpa#1.#2.#3.#4.{% -\def\XINT_LogTen_serI_a_ix##1\xint: -{% - \expandafter\XINT_LogTen_serI_a_x - \romannumeral0\XINTinfloatS[#2]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_a_x##1\xint: -{% - \expandafter\XINT_LogTen_serI_b - \romannumeral0\XINTinfloatS[#1]{##1}\xint:##1\xint: -}% -\def\XINT_LogTen_serI_b##1[##2]\xint: -{% - \expandafter\XINT_LogTen_serI_c_viii - \romannumeral0\xintadd{#3}{\xintiiOpp##1[##2-1]}\xint: -}% -\def\XINT_LogTen_serI_c_viii##1\xint:##2\xint: -{% - \expandafter\XINT_LogTen_serI_c_vii - \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: -}% -}\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-55\expandafter.% - \the\numexpr\XINTdigits-49\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-49]{1/9[0]}.% - {-125[-3]}.% -\fi + \the\numexpr\XINTdigitsormax+10\expandafter.\the\numexpr\XINTdigitsormax+4.% \def\XINT_tmpa#1.#2.{% \def\XINT_LogTen_serII_a_ii##1\xint: {% @@ -1199,8 +858,8 @@ }% }% \expandafter\XINT_tmpa - \the\numexpr\XINTdigits-2\expandafter.% - \the\numexpr\XINTdigits+4.% + \the\numexpr\XINTdigitsormax-2\expandafter.% + \the\numexpr\XINTdigitsormax+4.% \ifnum\XINTdigits>10 \def\XINT_tmpa#1.#2.#3.#4.{% \def\XINT_LogTen_serII_a_ii##1\xint: @@ -1224,8 +883,8 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-8\expandafter.% - \the\numexpr\XINTdigits-2.% + \the\numexpr\XINTdigitsormax-8\expandafter.% + \the\numexpr\XINTdigitsormax-2.% {-5[-1]}.% {1[0]}.% \fi @@ -1252,9 +911,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-14\expandafter.% - \the\numexpr\XINTdigits-8\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-8]{1/3[0]}.% + \the\numexpr\XINTdigitsormax-14\expandafter.% + \the\numexpr\XINTdigitsormax-8\expandafter.% + \romannumeral0\XINTinfloat[\XINTdigitsormax-8]{1/3[0]}.% {-5[-1]}.% \fi \ifnum\XINTdigits>22 @@ -1280,10 +939,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-20\expandafter.% - \the\numexpr\XINTdigits-14\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-20\expandafter.% + \the\numexpr\XINTdigitsormax-14\expandafter.\expanded{% {-25[-2]}.% - \XINTinFloat[\XINTdigits-8]{1/3[0]}.% + \XINTinFloat[\XINTdigitsormax-8]{1/3[0]}.% }% \fi \ifnum\XINTdigits>28 @@ -1309,8 +968,8 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-26\expandafter.% - \the\numexpr\XINTdigits-20.% + \the\numexpr\XINTdigitsormax-26\expandafter.% + \the\numexpr\XINTdigitsormax-20.% {2[-1]}.% {-25[-2]}.% \fi @@ -1337,9 +996,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-32\expandafter.% - \the\numexpr\XINTdigits-26\expandafter.% - \romannumeral0\XINTinfloatS[\XINTdigits-26]{-1/6[0]}.% + \the\numexpr\XINTdigitsormax-32\expandafter.% + \the\numexpr\XINTdigitsormax-26\expandafter.% + \romannumeral0\XINTinfloatS[\XINTdigitsormax-26]{-1/6[0]}.% {2[-1]}.% \fi \ifnum\XINTdigits>40 @@ -1365,10 +1024,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-38\expandafter.% - \the\numexpr\XINTdigits-32\expandafter.\expanded{% - \XINTinFloat[\XINTdigits-32]{1/7[0]}.% - \XINTinFloat[\XINTdigits-26]{-1/6[0]}.% + \the\numexpr\XINTdigitsormax-38\expandafter.% + \the\numexpr\XINTdigitsormax-32\expandafter.\expanded{% + \XINTinFloat[\XINTdigitsormax-32]{1/7[0]}.% + \XINTinFloat[\XINTdigitsormax-26]{-1/6[0]}.% }% \fi \ifnum\XINTdigits>46 @@ -1394,10 +1053,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-44\expandafter.% - \the\numexpr\XINTdigits-38\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-44\expandafter.% + \the\numexpr\XINTdigitsormax-38\expandafter.\expanded{% {-125[-3]}.% - \XINTinFloat[\XINTdigits-32]{1/7[0]}.% + \XINTinFloat[\XINTdigitsormax-32]{1/7[0]}.% }% \fi \ifnum\XINTdigits>52 @@ -1423,9 +1082,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-50\expandafter.% - \the\numexpr\XINTdigits-44\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-44]{1/9[0]}.% + \the\numexpr\XINTdigitsormax-50\expandafter.% + \the\numexpr\XINTdigitsormax-44\expandafter.% + \romannumeral0\XINTinfloat[\XINTdigitsormax-44]{1/9[0]}.% {-125[-3]}.% \fi \ifnum\XINTdigits>58 @@ -1451,10 +1110,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-56\expandafter.% - \the\numexpr\XINTdigits-50\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-56\expandafter.% + \the\numexpr\XINTdigitsormax-50\expandafter.\expanded{% {-1[-1]}.% - \XINTinFloat[\XINTdigits-44]{1/9[0]}.% + \XINTinFloat[\XINTdigitsormax-44]{1/9[0]}.% }% \fi \def\XINT_tmpa#1.#2.{% @@ -1474,8 +1133,8 @@ }% }% \expandafter\XINT_tmpa - \the\numexpr\XINTdigits-1\expandafter.% - \the\numexpr\XINTdigits+4.% + \the\numexpr\XINTdigitsormax-1\expandafter.% + \the\numexpr\XINTdigitsormax+4.% \ifnum\XINTdigits>9 \def\XINT_tmpa#1.#2.#3.#4.{% \def\XINT_LogTen_serIII_a_ii##1\xint: @@ -1499,8 +1158,8 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-7\expandafter.% - \the\numexpr\XINTdigits-1.% + \the\numexpr\XINTdigitsormax-7\expandafter.% + \the\numexpr\XINTdigitsormax-1.% {-5[-1]}.% {1[0]}.% \fi @@ -1527,9 +1186,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-13\expandafter.% - \the\numexpr\XINTdigits-7\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-7]{1/3[0]}.% + \the\numexpr\XINTdigitsormax-13\expandafter.% + \the\numexpr\XINTdigitsormax-7\expandafter.% + \romannumeral0\XINTinfloat[\XINTdigitsormax-7]{1/3[0]}.% {-5[-1]}.% \fi \ifnum\XINTdigits>21 @@ -1555,10 +1214,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-19\expandafter.% - \the\numexpr\XINTdigits-13\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-19\expandafter.% + \the\numexpr\XINTdigitsormax-13\expandafter.\expanded{% {-25[-2]}.% - \XINTinFloat[\XINTdigits-7]{1/3[0]}.% + \XINTinFloat[\XINTdigitsormax-7]{1/3[0]}.% }% \fi \ifnum\XINTdigits>27 @@ -1584,8 +1243,8 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-25\expandafter.% - \the\numexpr\XINTdigits-19.% + \the\numexpr\XINTdigitsormax-25\expandafter.% + \the\numexpr\XINTdigitsormax-19.% {2[-1]}.% {-25[-2]}.% \fi @@ -1612,9 +1271,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-31\expandafter.% - \the\numexpr\XINTdigits-25\expandafter.% - \romannumeral0\XINTinfloatS[\XINTdigits-25]{-1/6[0]}.% + \the\numexpr\XINTdigitsormax-31\expandafter.% + \the\numexpr\XINTdigitsormax-25\expandafter.% + \romannumeral0\XINTinfloatS[\XINTdigitsormax-25]{-1/6[0]}.% {2[-1]}.% \fi \ifnum\XINTdigits>39 @@ -1640,10 +1299,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-37\expandafter.% - \the\numexpr\XINTdigits-31\expandafter.\expanded{% - \XINTinFloat[\XINTdigits-31]{1/7[0]}.% - \XINTinFloat[\XINTdigits-25]{-1/6[0]}.% + \the\numexpr\XINTdigitsormax-37\expandafter.% + \the\numexpr\XINTdigitsormax-31\expandafter.\expanded{% + \XINTinFloat[\XINTdigitsormax-31]{1/7[0]}.% + \XINTinFloat[\XINTdigitsormax-25]{-1/6[0]}.% }% \fi \ifnum\XINTdigits>45 @@ -1669,10 +1328,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-43\expandafter.% - \the\numexpr\XINTdigits-37\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-43\expandafter.% + \the\numexpr\XINTdigitsormax-37\expandafter.\expanded{% {-125[-3]}.% - \XINTinFloat[\XINTdigits-31]{1/7[0]}.% + \XINTinFloat[\XINTdigitsormax-31]{1/7[0]}.% }% \fi \ifnum\XINTdigits>51 @@ -1698,9 +1357,9 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-49\expandafter.% - \the\numexpr\XINTdigits-43\expandafter.% - \romannumeral0\XINTinfloat[\XINTdigits-43]{1/9[0]}.% + \the\numexpr\XINTdigitsormax-49\expandafter.% + \the\numexpr\XINTdigitsormax-43\expandafter.% + \romannumeral0\XINTinfloat[\XINTdigitsormax-43]{1/9[0]}.% {-125[-3]}.% \fi \ifnum\XINTdigits>57 @@ -1726,10 +1385,10 @@ \romannumeral0\xintadd{#4}{\XINTinFloat[#2]{\xintMul{##1}{##2}}}\xint: }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits-55\expandafter.% - \the\numexpr\XINTdigits-49\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-55\expandafter.% + \the\numexpr\XINTdigitsormax-49\expandafter.\expanded{% {-1[-1]}.% - \XINTinFloat[\XINTdigits-43]{1/9[0]}.% + \XINTinFloat[\XINTdigitsormax-43]{1/9[0]}.% }% \fi \XINTendxintloginput% diff --git a/Master/texmf-dist/tex/generic/xint/xintseries.sty b/Master/texmf-dist/tex/generic/xint/xintseries.sty index 60b32512bf9..7570ffe4143 100644 --- a/Master/texmf-dist/tex/generic/xint/xintseries.sty +++ b/Master/texmf-dist/tex/generic/xint/xintseries.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xintseries: Expandable partial sums with xint package %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xintseries}% - [2021/05/05 v1.4e Expandable partial sums with xint package (JFB)]% + [2021/05/10 v1.4f Expandable partial sums with xint package (JFB)]% \def\xintSeries {\romannumeral0\xintseries }% \def\xintseries #1#2% {% diff --git a/Master/texmf-dist/tex/generic/xint/xinttools.sty b/Master/texmf-dist/tex/generic/xint/xinttools.sty index 4d92f76819c..c3716556353 100644 --- a/Master/texmf-dist/tex/generic/xint/xinttools.sty +++ b/Master/texmf-dist/tex/generic/xint/xinttools.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xinttools: Expandable and non-expandable utilities %% --------------------------------------------------------------- @@ -70,7 +70,7 @@ \XINTsetupcatcodes% defined in xintkernel.sty \XINT_providespackage \ProvidesPackage{xinttools}% - [2021/05/05 v1.4e Expandable and non-expandable utilities (JFB)]% + [2021/05/10 v1.4f Expandable and non-expandable utilities (JFB)]% \newtoks\XINT_toks \xint_firstofone{\let\XINT_sptoken= } %<- space here! \def\xintgodef {\global\xintodef }% diff --git a/Master/texmf-dist/tex/generic/xint/xinttrig.sty b/Master/texmf-dist/tex/generic/xint/xinttrig.sty index c10106cb894..0b23eaed1d7 100644 --- a/Master/texmf-dist/tex/generic/xint/xinttrig.sty +++ b/Master/texmf-dist/tex/generic/xint/xinttrig.sty @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% --------------------------------------------------------------- -%% The xint bundle 1.4e 2021/05/05 +%% The xint bundle 1.4f 2021/05/10 %% Copyright (C) 2013-2021 by Jean-Francois Burnol %% xinttrig: Trigonometry for the xintexpr package %% --------------------------------------------------------------- @@ -69,37 +69,37 @@ \expandafter\xint_secondoftwo \fi {\immediate\write-1{Reloading xinttrig library using Digits=\xinttheDigits.}}% -{\expandafter\gdef\csname xintlibver@trig\endcsname{2021/05/05 v1.4e}% +{\expandafter\gdef\csname xintlibver@trig\endcsname{2021/05/10 v1.4f}% \XINT_providespackage \ProvidesPackage{xinttrig}% -[2021/05/05 v1.4e Trigonometrical functions for xintexpr (JFB)]% +[2021/05/10 v1.4f Trigonometrical functions for xintexpr (JFB)]% }% \xintFor* #1 in {iDTVtuwxyzX}\do{\xintensuredummy{#1}}% \def\xintreloadxinttrig{\input xinttrig.sty }% \xintdefvar @twoPi := float( 6.2831853071795864769252867665590057683943387987502116419498891846156328125724180 - ,\xinttheDigits+4);% + ,\XINTdigitsormax+4);% \xintdefvar @threePiover2 := float( 4.7123889803846898576939650749192543262957540990626587314624168884617246094293135 - ,\xinttheDigits+4);% + ,\XINTdigitsormax+4);% \xintdefvar @Pi := float( 3.1415926535897932384626433832795028841971693993751058209749445923078164062862090 - ,\xinttheDigits+4);% + ,\XINTdigitsormax+4);% \xintdefvar @Piover2 := float( 1.5707963267948966192313216916397514420985846996875529104874722961539082031431045 - ,\xinttheDigits+4);% + ,\XINTdigitsormax+4);% \xintdefvar @oneDegree := float( 0.017453292519943295769236907684886127134428718885417254560971914401710091146034494 - ,\xinttheDigits+4);% + ,\XINTdigitsormax+4);% \xintdefvar @oneRadian := float( 57.295779513082320876798154814105170332405472466564321549160243861202847148321553 - ,\xinttheDigits+12);% + ,\XINTdigitsormax+12);% \catcode`~ 12 \def\XINT_tmpa#1#2#3.#4.% {% @@ -109,19 +109,19 @@ \expandafter\XINT_tmpa \csname XINT_flexpr_exec_+_\expandafter\endcsname \csname XINT_flexpr_exec_+\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatAdd_wopt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatAdd_wopt.% \expandafter\XINT_tmpa \csname XINT_flexpr_exec_-_\expandafter\endcsname \csname XINT_flexpr_exec_-\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatSub_wopt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatSub_wopt.% \expandafter\XINT_tmpa \csname XINT_flexpr_exec_*_\expandafter\endcsname \csname XINT_flexpr_exec_*\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatMul_wopt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatMul_wopt.% \expandafter\XINT_tmpa \csname XINT_flexpr_exec_/_\expandafter\endcsname \csname XINT_flexpr_exec_/\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatDiv_wopt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatDiv_wopt.% \def\XINT_tmpa#1#2#3.#4.% {% \let #1#2% @@ -130,23 +130,23 @@ \expandafter\XINT_tmpa \csname XINT_flexpr_sqrfunc\expandafter\endcsname \csname XINT_flexpr_func_sqr\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatSqr_wopt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatSqr_wopt.% \expandafter\XINT_tmpa \csname XINT_flexpr_sqrtfunc\expandafter\endcsname \csname XINT_flexpr_func_sqrt\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatSqrt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatSqrt.% \expandafter\XINT_tmpa \csname XINT_flexpr_invfunc\expandafter\endcsname \csname XINT_flexpr_func_inv\expandafter\endcsname - \the\numexpr\XINTdigits+4.~XINTinFloatInv_wopt.% + \the\numexpr\XINTdigitsormax+4.~XINTinFloatInv_wopt.% \catcode`~ 3 \ifnum\XINTdigits>8 \edef\XINT_tmpG % 1/3! - {1\xintReplicate{\XINTdigits+2}{6}7[\the\numexpr-\XINTdigits-4]}% + {1\xintReplicate{\XINTdigitsormax+2}{6}7[\the\numexpr-\XINTdigitsormax-4]}% \edef\XINT_tmpH % 1/5! - {8\xintReplicate{\XINTdigits+1}{3}[\the\numexpr-\XINTdigits-4]}% + {8\xintReplicate{\XINTdigitsormax+1}{3}[\the\numexpr-\XINTdigitsormax-4]}% \edef\XINT_tmpd % 1/5! - {8\xintReplicate{\XINTdigits+9}{3}[\the\numexpr-\XINTdigits-12]}% + {8\xintReplicate{\XINTdigitsormax+9}{3}[\the\numexpr-\XINTdigitsormax-12]}% \def\XINT_tmpe#1.#2.#3.#4.#5#6#7% {% \def#5##1\xint: @@ -163,8 +163,8 @@ }% }% \expandafter\XINT_tmpe - \the\numexpr\XINTdigits+4\expandafter.% - \the\numexpr\XINTdigits+2\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax+4\expandafter.% + \the\numexpr\XINTdigitsormax+2\expandafter.\expanded{% \XINT_tmpH.% 1/5! \XINT_tmpG.% 1/3! \expandafter}% @@ -206,13 +206,13 @@ \csname XINT_#8Aux_series_c_\romannumeral\numexpr#1-2\expandafter\endcsname \csname XINT_#8Aux_series_c_\romannumeral\numexpr#1-3\endcsname \edef\XINT_tmpd - {\XINTinFloat[\XINTdigits-#2+8]{\xintDiv{\XINT_tmpd}{\the\numexpr#5*(#5-1)\relax}}}% + {\XINTinFloat[\XINTdigitsormax-#2+8]{\xintDiv{\XINT_tmpd}{\the\numexpr#5*(#5-1)\relax}}}% \let\XINT_tmpF\XINT_tmpG \let\XINT_tmpG\XINT_tmpH - \edef\XINT_tmpH{\XINTinFloat[\XINTdigits-#2]{\XINT_tmpd}}% + \edef\XINT_tmpH{\XINTinFloat[\XINTdigitsormax-#2]{\XINT_tmpd}}% \expandafter\XINT_tmpc - \the\numexpr\XINTdigits-#3\expandafter.% - \the\numexpr\XINTdigits-#2\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax-#3\expandafter.% + \the\numexpr\XINTdigitsormax-#2\expandafter.\expanded{% \XINT_tmpH.% \XINT_tmpG.% \XINT_tmpF.% @@ -239,13 +239,13 @@ \ifnum\XINTdigits>55 \XINT_tmpa 22 53 49 45 43 41 39 Sin \fi \ifnum\XINTdigits>58 \XINT_tmpa 23 56 53 49 45 43 41 Sin \fi \edef\XINT_tmpd % 1/4! - {41\xintReplicate{\XINTdigits+8}{6}7[\the\numexpr-\XINTdigits-12]}% + {41\xintReplicate{\XINTdigitsormax+8}{6}7[\the\numexpr-\XINTdigitsormax-12]}% \edef\XINT_tmpH % 1/4! - {41\xintReplicate{\XINTdigits}{6}7[\the\numexpr-\XINTdigits-4]}% + {41\xintReplicate{\XINTdigitsormax}{6}7[\the\numexpr-\XINTdigitsormax-4]}% \def\XINT_tmpG{5[-1]}% 1/2! \expandafter\XINT_tmpe - \the\numexpr\XINTdigits+4\expandafter.% - \the\numexpr\XINTdigits+3\expandafter.\expanded{% + \the\numexpr\XINTdigitsormax+4\expandafter.% + \the\numexpr\XINTdigitsormax+3\expandafter.\expanded{% \XINT_tmpH.% \XINT_tmpG.% \expandafter}% @@ -278,12 +278,12 @@ \def\XINT_SinAux_series#1% {% \expandafter\XINT_SinAux_series_a_iii - \romannumeral0\XINTinfloatS[\XINTdigits+4]{#1}\xint: + \romannumeral0\XINTinfloatS[\XINTdigitsormax+4]{#1}\xint: }% \def\XINT_CosAux_series#1% {% \expandafter\XINT_CosAux_series_a_iii - \romannumeral0\XINTinfloatS[\XINTdigits+4]{#1}\xint: + \romannumeral0\XINTinfloatS[\XINTdigitsormax+4]{#1}\xint: }% \fi % end of \XINTdigits>8 \ifnum\XINTdigits<9 @@ -359,7 +359,7 @@ \def\xintSind##1% {% \romannumeral`&&@\expandafter\xintsind\romannumeral0\XINTinfloatS[#1]{##1}}% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+12.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+12.% \def\xintsind #1[#2#3]% {% \xint_UDsignfork @@ -373,7 +373,7 @@ \expandafter\XINT_sind_a \romannumeral0\xinttrunc{#1}{##2[##1]}% }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+5.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+5.% \def\XINT_sind_a{\expandafter\XINT_sind_i\the\numexpr\XINT_mod_ccclx_i0.}% \def\XINT_sind_int {% @@ -431,7 +431,7 @@ {\romannumeral0\XINTinfloat[#1]{\xintMul{\xintSub{##1[0]}{.##2}}#2}}% }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits+4\expandafter.% + \the\numexpr\XINTdigitsormax+4\expandafter.% \romannumeral`&&@\xintbarefloateval @oneDegree\relax.% \def\XINT_sind_B#1{\xint_UDsignfork#1\XINT_sind_B_n-\XINT_sind_B_p\krof #1}% \def\XINT_sind_C#1{\xint_UDsignfork#1\XINT_sind_C_n-\XINT_sind_C_p\krof #1}% @@ -445,7 +445,7 @@ \def\xintCosd##1% {% \romannumeral`&&@\expandafter\xintcosd\romannumeral0\XINTinfloatS[#1]{##1}}% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+12.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+12.% \def\xintcosd #1[#2#3]% {% \xint_UDsignfork @@ -459,7 +459,7 @@ \expandafter\XINT_cosd_a \romannumeral0\xinttrunc{#1}{##2[##1]}% }% -}\expandafter\XINT_tmpa\the\numexpr\XINTdigits+5.% +}\expandafter\XINT_tmpa\the\numexpr\XINTdigitsormax+5.% \def\XINT_cosd_a{\expandafter\XINT_cosd_i\the\numexpr\XINT_mod_ccclx_i0.}% \def\XINT_cosd_int {% @@ -517,7 +517,7 @@ {\romannumeral0\XINTinfloat[#1]{\xintMul{\xintSub{##1[0]}{.##2}}#2}}% }% }\expandafter\XINT_tmpa - \the\numexpr\XINTdigits+4\expandafter.% + \the\numexpr\XINTdigitsormax+4\expandafter.% \romannumeral`&&@\xintbarefloateval @oneDegree\relax.% \def\XINT_cosd_B#1{\xint_UDsignfork#1\XINT_cosd_B_n-\XINT_cosd_B_p\krof #1}% \def\XINT_cosd_C#1{\xint_UDsignfork#1\XINT_cosd_C_n-\XINT_cosd_C_p\krof #1}% @@ -578,7 +578,7 @@ {@cos(x)/@sin(x)} {(x)?? {-@tand(\xintexpr9e1+x*@oneRadian\relax)} - {0e0} + {0} {@tand(\xintexpr9e1-x*@oneRadian\relax)} };% \xintdeffloatfunc @sec(x) := inv(@cos(x));% @@ -607,7 +607,7 @@ \xintAdd{1/1[0]}{##1/6[##2]}% }% }% -\expandafter\XINT_tmpc\the\numexpr\XINTdigits-14.% +\expandafter\XINT_tmpc\the\numexpr\XINTdigitsormax-14.% \fi \ifnum\XINTdigits>34 \def\XINT_tmpc#1.#2.#3.#4.% @@ -630,10 +630,10 @@ }% }% \expandafter\XINT_tmpc - \the\numexpr\XINTdigits-14\expandafter.% - \the\numexpr\XINTdigits-32\expandafter.\expanded{% - \XINTinFloat[\XINTdigits-32]{3/40[0]}.% - \XINTinFloat[\XINTdigits-14]{1/6[0]}.% + \the\numexpr\XINTdigitsormax-14\expandafter.% + \the\numexpr\XINTdigitsormax-32\expandafter.\expanded{% + \XINTinFloat[\XINTdigitsormax-32]{3/40[0]}.% + \XINTinFloat[\XINTdigitsormax-14]{1/6[0]}.% }% \fi \ifnum\XINTdigits>52 @@ -659,11 +659,11 @@ }% }% \expandafter\XINT_tmpc - \the\numexpr\XINTdigits-32\expandafter.% - \the\numexpr\XINTdigits-50\expandafter.\expanded{% - \XINTinFloat[\XINTdigits-50]{5/112[0]}.% - \XINTinFloat[\XINTdigits-32]{3/40[0]}.% - \XINTinFloat[\XINTdigits-14]{1/6[0]}.% + \the\numexpr\XINTdigitsormax-32\expandafter.% + \the\numexpr\XINTdigitsormax-50\expandafter.\expanded{% + \XINTinFloat[\XINTdigitsormax-50]{5/112[0]}.% + \XINTinFloat[\XINTdigitsormax-32]{3/40[0]}.% + \XINTinFloat[\XINTdigitsormax-14]{1/6[0]}.% }% \fi \def\XINT_flexpr_func_@asin_I#1#2#3% @@ -838,33 +838,35 @@ \expandafter\let \csname XINT_flexpr_func_inv\expandafter\endcsname \csname XINT_flexpr_invfunc\endcsname +\edef\XINTinFloatdigitsormax{\noexpand\XINTinFloat[\the\numexpr\XINTdigitsormax]}% +\edef\XINTinFloatSdigitsormax{\noexpand\XINTinFloatS[\the\numexpr\XINTdigitsormax]}% \xintFor #1 in {sin, cos, tan, sec, csc, cot, asin, acos, atan}\do {% - \xintdeffloatfunc #1(x) := float_(@#1(x));% - \xintdeffloatfunc #1d(x) := float_(@#1d(x));% - \xintdeffunc #1(x) := float_(\xintfloatexpr @#1(sfloat(x))\relax);% - \xintdeffunc #1d(x):= float_(\xintfloatexpr @#1d(sfloat(x))\relax);% + \xintdeffloatfunc #1(x) := float_dgtormax(@#1(x));% + \xintdeffloatfunc #1d(x) := float_dgtormax(@#1d(x));% + \xintdeffunc #1(x) := float_dgtormax(\xintfloatexpr @#1(sfloat_dgtormax(x))\relax);% + \xintdeffunc #1d(x):= float_dgtormax(\xintfloatexpr @#1d(sfloat_dgtormax(x))\relax);% }% \xintFor #1 in {Arg, pArg, atan2}\do {% - \xintdeffloatfunc #1(x, y) := float_(@#1(x, y));% - \xintdeffloatfunc #1d(x, y) := float_(@#1d(x, y));% - \xintdeffunc #1(x, y) := float_(\xintfloatexpr @#1(sfloat(x), sfloat(y))\relax);% - \xintdeffunc #1d(x, y):= float_(\xintfloatexpr @#1d(sfloat(x), sfloat(y))\relax);% + \xintdeffloatfunc #1(x, y) := float_dgtormax(@#1(x, y));% + \xintdeffloatfunc #1d(x, y) := float_dgtormax(@#1d(x, y));% + \xintdeffunc #1(x, y) := float_dgtormax(\xintfloatexpr @#1(sfloat_dgtormax(x), sfloat_dgtormax(y))\relax);% + \xintdeffunc #1d(x, y):= float_dgtormax(\xintfloatexpr @#1d(sfloat_dgtormax(x), sfloat_dgtormax(y))\relax);% }% -\xintdeffloatfunc sinc(x):= float_(@sinc(x));% -\xintdeffunc sinc(x):= float_(\xintfloatexpr @sinc(sfloat(x))\relax);% +\xintdeffloatfunc sinc(x):= float_dgtormax(@sinc(x));% +\xintdeffunc sinc(x):= float_dgtormax(\xintfloatexpr @sinc(sfloat_dgtormax(x))\relax);% \expandafter\let\csname XINT_flexpr_func_tg\expandafter\endcsname \csname XINT_flexpr_func_tan\endcsname \expandafter\let\csname XINT_flexpr_func_cotg\expandafter\endcsname \csname XINT_flexpr_func_cot\endcsname -\xintdeffloatvar twoPi := @twoPi;% -\xintdeffloatvar threePiover2 := @threePiover2;% -\xintdeffloatvar Pi := @Pi;% -\xintdeffloatvar Piover2 := @Piover2;% -\xintdeffloatvar oneDegree := @oneDegree;% -\xintdeffloatvar oneRadian := @oneRadian;% +\xintdefvar twoPi := float_dgtormax(@twoPi);% +\xintdefvar threePiover2 := float_dgtormax(@threePiover2);% +\xintdefvar Pi := float_dgtormax(@Pi);% +\xintdefvar Piover2 := float_dgtormax(@Piover2);% +\xintdefvar oneDegree := float_dgtormax(@oneDegree);% +\xintdefvar oneRadian := float_dgtormax(@oneRadian);% \xintunassignvar{@twoPi}\xintunassignvar{@threePiover2}% \xintunassignvar{@Pi}\xintunassignvar{@Piover2}% \xintunassignvar{@oneRadian}\xintunassignvar{@oneDegree}% -- cgit v1.2.3