texlive[68009] Master/texmf-dist: lualinalg (21aug23)

commits+karl at tug.org commits+karl at tug.org
Mon Aug 21 22:21:43 CEST 2023


Revision: 68009
          http://tug.org/svn/texlive?view=revision&revision=68009
Author:   karl
Date:     2023-08-21 22:21:43 +0200 (Mon, 21 Aug 2023)
Log Message:
-----------
lualinalg (21aug23)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/lualatex/lualinalg/README.txt
    trunk/Master/texmf-dist/doc/lualatex/lualinalg/lualinalg.pdf
    trunk/Master/texmf-dist/doc/lualatex/lualinalg/lualinalg.tex
    trunk/Master/texmf-dist/tex/lualatex/lualinalg/lualinalg.sty

Modified: trunk/Master/texmf-dist/doc/lualatex/lualinalg/README.txt
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/lualinalg/README.txt	2023-08-21 20:21:35 UTC (rev 68008)
+++ trunk/Master/texmf-dist/doc/lualatex/lualinalg/README.txt	2023-08-21 20:21:43 UTC (rev 68009)
@@ -1,5 +1,5 @@
 # The lualinalg package
-# version 1.6
+# version 1.7
 # Authors: Chetan Shirore and Ajit Kumar
 # Email: mathsbeauty at gmail.com
 

Modified: trunk/Master/texmf-dist/doc/lualatex/lualinalg/lualinalg.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/lualatex/lualinalg/lualinalg.tex
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/lualinalg/lualinalg.tex	2023-08-21 20:21:35 UTC (rev 68008)
+++ trunk/Master/texmf-dist/doc/lualatex/lualinalg/lualinalg.tex	2023-08-21 20:21:43 UTC (rev 68009)
@@ -1172,14 +1172,6 @@
 
 The sum of matrices  \(m1,m2 \text{ and } m3  =\begin{bmatrix}	111 & 222 & 333 \\	444 & 555 & 666+666\mathrm{i} \end{bmatrix} \).
 \end{framed}
-\section{Known issues and limitations} 
-\begin{itemize}
-\item The package supports  small and big numbers. They can be input in the usual scientific notation. The math library in Lua defines constants with the maximum \verb|math.maxinteger| and the minimum \verb|math.mininteger| values for an integer. The result wraps around when there is a computational operation on integers that would result in a value smaller than  the \verb|mininteger| or larger than the \verb|maxinteger|. It means that the computed result is the only number between the \verb|miniinteger| and \verb|maxinteger|. 
 
-\item The package currently supports only numerical computations. The table in a Lua is a data type that implements an associative array. This feature is used in packages to define and store vectors and matrices. This approach is close to object-oriented programming. It will allow easy conversion of algorithms in packages for symbolic computations.  Future package updates will consider algorithm conversions to support symbolic calculations.
 
-\item The error handling mechanism in the tool is not robust. There are some custom errors included in the package. However the package mostly depends on error handling mechanism of Lua. The error handling can be strengthened in future updates of the package. 
-
-\end{itemize}
-
 \end{document}
\ No newline at end of file

Modified: trunk/Master/texmf-dist/tex/lualatex/lualinalg/lualinalg.sty
===================================================================
--- trunk/Master/texmf-dist/tex/lualatex/lualinalg/lualinalg.sty	2023-08-21 20:21:35 UTC (rev 68008)
+++ trunk/Master/texmf-dist/tex/lualatex/lualinalg/lualinalg.sty	2023-08-21 20:21:43 UTC (rev 68009)
@@ -1,9 +1,9 @@
 % The	lualinalg	package
 % Authors:  Chetan  Shirore  and  Ajit  Kumar
-% Version 1.6, Date=09-Aug-2023
+% Version 1.7, Date=21-Aug-2023
 % Licensed under LaTeX Project Public License v1.3c or later. The complete license text is available at http://www.latex-project.org/lppl.txt.
 
-\ProvidesPackage{lualinalg}[1.6]
+\ProvidesPackage{lualinalg}[1.7]
 \RequirePackage{xkeyval}
 \RequirePackage{amsmath}
 \RequirePackage{luamaths}
@@ -1132,7 +1132,7 @@
     local str = ""
     k = #inptTbl
 
-    if vector.euclidnorm(inptTbl[1]) ~= complex(0.0) then
+    if complex.round(vector.euclidnorm(inptTbl[1])) ~= complex("0.0") then
         tbl[1] = vector.mulnum(inptTbl[1], 1 / vector.euclidnorm(inptTbl[1]))
     else
         tbl[1] = vector.mulnum(inptTbl[1], 1)
@@ -1146,7 +1146,7 @@
             setmetatable(tbl[j], vector_meta)
             tbl[i] = vector.sub(tbl[i], vector.mulnum(tbl[j], vector.dot(tbl[i], tbl[j])))
         end
-        if vector.euclidnorm(tbl[i]) ~= complex(0.0) then
+        if complex.round(vector.euclidnorm(tbl[i])) ~= complex("0.0") then
             tbl[i] = vector.mulnum(tbl[i], 1 / vector.euclidnorm(tbl[i]))
         end
         tbl[i] = vector.mulnum(tbl[i], 1.0)
@@ -1179,7 +1179,7 @@
     k = #inptTbl
     str = str .. "\\ \\newline Take given vectors as $v_1,\\ldots, v_" .. k .. "$ in order."
 
-    if vector.euclidnorm(inptTbl[1]) ~= complex(0.0) then
+    if complex.round(vector.euclidnorm(inptTbl[1])) ~= complex("0.0") then
         tbl[1] = vector.mulnum(inptTbl[1], 1.0 / vector.euclidnorm(inptTbl[1]))
     else
         tbl[1] = vector.mulnum(inptTbl[1], 1.0)
@@ -1188,7 +1188,7 @@
     str = str .. "\\ \\newline Step " .. cnt .. ": $$ u_" .. cnt .. "=v_" .. cnt .. "="
     str = str .. brcktL .. vector.show(inptTbl[1], dignum) .. brcktR
     str = str .. " $$ e_" .. cnt .. "="
-    if vector.euclidnorm(tbl[1]) ~= complex(0.0) then
+    if complex.round(vector.euclidnorm(tbl[1])) ~= complex("0.0") then
         str = str .. "\\frac{u_{" .. cnt .. "}}" .. "{||u_{" .. cnt .. "}||} ="
     end
     str = str .. brcktL .. vector.show(tbl[1], dignum) .. brcktR
@@ -1200,7 +1200,7 @@
             tmpTbl[i] = vector.sub(tbl[i], vector.mulnum(tbl[j], vector.dot(tbl[i], tbl[j])))
             tbl[i] = vector.sub(tbl[i], vector.mulnum(tbl[j], vector.dot(tbl[i], tbl[j])))
         end
-        if vector.euclidnorm(tbl[i]) ~= complex(0.0) then
+        if complex.round(vector.euclidnorm(tbl[i])) ~= complex("0.0") then
             tbl[i] = vector.mulnum(tbl[i], 1 / vector.euclidnorm(tbl[i]))
         else
             tbl[i] = vector.mulnum(tbl[i], 1.0)



More information about the tex-live-commits mailing list.