update docs and packaging
parent
611c5f5066
commit
58790b6b7c
|
@ -13,9 +13,9 @@ install_lua_module ( matrix lua/matrix.lua )
|
||||||
install_data ( README.txt LICENSE.txt )
|
install_data ( README.txt LICENSE.txt )
|
||||||
install_doc ( doc/complex_changelog.txt doc/fit_changelog.txt doc/matrix_changelog.txt )
|
install_doc ( doc/complex_changelog.txt doc/fit_changelog.txt doc/matrix_changelog.txt )
|
||||||
install_example ( samples/fit.lua )
|
install_example ( samples/fit.lua )
|
||||||
install_test ( tests/test_complex.lua )
|
install_test ( test/test_complex.lua )
|
||||||
install_test ( tests/test_fit.lua )
|
install_test ( test/test_fit.lua )
|
||||||
install_test ( tests/test.lua )
|
install_test ( test/test.lua )
|
||||||
install_test ( tests/test_matrix.lua )
|
install_test ( test/test_matrix.lua )
|
||||||
|
|
||||||
add_lua_test ( tests/test.lua )
|
add_lua_test ( test/test.lua )
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
README.txt
|
||||||
|
LICENSE.txt
|
||||||
|
dist.info
|
||||||
|
rockspec.in
|
||||||
|
MANIFEST
|
||||||
|
CMakeLists.txt
|
||||||
|
dist.cmake
|
||||||
|
util.mk
|
||||||
|
lua/matrix.lua
|
||||||
|
lua/complex.lua
|
||||||
|
test/test.lua
|
||||||
|
test/test_matrix.lua
|
||||||
|
test/test_fit.lua
|
||||||
|
test/test_complex.lua
|
||||||
|
doc/complex_changelog.txt
|
||||||
|
doc/fit_changelog.txt
|
||||||
|
doc/matrix_changelog.txt
|
||||||
|
samples/fit.lua
|
|
@ -1,14 +1,15 @@
|
||||||
--- This file is part of LuaDist project
|
--- This file is part of LuaDist project
|
||||||
|
|
||||||
name = "lua-matrix"
|
name = "lua-matrix"
|
||||||
version = "0.2.8"
|
version = "0.2.10"
|
||||||
|
|
||||||
desc = "'LuaMatrix' provides a good selection of matrix functions."
|
desc = "'LuaMatrix' provides a good selection of matrix functions."
|
||||||
author = "Michael Lutz, David Manura"
|
author = "Michael Lutz, David Manura"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
url = "http://luaforge.net/projects/luamatrix/"
|
url = "http://luaforge.net/projects/luamatrix/"
|
||||||
maintainer = "Peter Kapec"
|
-- lua-users.org/wiki/LuaMatrix
|
||||||
|
maintainer = "David Manura"
|
||||||
|
|
||||||
depends = {
|
depends = {
|
||||||
"lua ~> 5.1"
|
"lua ~> 5.1" -- including 5.2
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
complex changelog
|
complex changelog
|
||||||
|
|
||||||
|
v 0.3.2: 2011-12-03
|
||||||
|
- Add _VERSION
|
||||||
|
|
||||||
v 0.3.1: 2007-11-12
|
v 0.3.1: 2007-11-12
|
||||||
[ David Manura ]
|
[ David Manura ]
|
||||||
rename mulconjugate to norm2
|
rename mulconjugate to norm2
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
matrix changelog
|
matrix changelog
|
||||||
|
|
||||||
|
v 0.2.10
|
||||||
|
- Add _VERSION to modules.
|
||||||
|
|
||||||
v 0.2.9: 2008-08-26
|
v 0.2.9: 2008-08-26
|
||||||
[ David Manura ]
|
[ David Manura ]
|
||||||
- decoupled symbol class from matrix class:
|
- decoupled symbol class from matrix class:
|
||||||
|
|
|
@ -1,30 +1,65 @@
|
||||||
-- complex 0.3.1
|
--[[
|
||||||
-- Lua 5.1
|
|
||||||
|
LUA MODULE
|
||||||
|
|
||||||
|
complex v$(_VERSION) - complex numbers implemented as Lua tables
|
||||||
|
|
||||||
|
SYNOPSIS
|
||||||
|
|
||||||
-- 'complex' provides common tasks with complex numbers
|
local complex = require 'complex'
|
||||||
|
local cx1 = complex "2+3i" -- or complex.new(2, 3)
|
||||||
|
local cx2 = complex "3+2i"
|
||||||
|
assert( complex.add(cx1,cx2) == complex "5+5i" )
|
||||||
|
assert( tostring(cx1) == "2+3i" )
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
|
||||||
|
'complex' provides common tasks with complex numbers
|
||||||
|
|
||||||
-- function complex.to( arg ); complex( arg )
|
function complex.to( arg ); complex( arg )
|
||||||
-- returns a complex number on success, nil on failure
|
returns a complex number on success, nil on failure
|
||||||
-- arg := number or { number,number } or ( "(-)<number>" and/or "(+/-)<number>i" )
|
arg := number or { number,number } or ( "(-)<number>" and/or "(+/-)<number>i" )
|
||||||
-- e.g. 5; {2,3}; "2", "2+i", "-2i", "2^2*3+1/3i"
|
e.g. 5; {2,3}; "2", "2+i", "-2i", "2^2*3+1/3i"
|
||||||
-- note: 'i' is always in the numerator, spaces are not allowed
|
note: 'i' is always in the numerator, spaces are not allowed
|
||||||
|
|
||||||
-- a complex number is defined as carthesic complex number
|
A complex number is defined as Cartesian complex number
|
||||||
-- complex number := { real_part, imaginary_part }
|
complex number := { real_part, imaginary_part } .
|
||||||
-- this gives fast access to both parts of the number for calculation
|
This gives fast access to both parts of the number for calculation.
|
||||||
-- the access is faster than in a hash table
|
The access is faster than in a hash table
|
||||||
-- the metatable is just a add on, when it comes to speed, one is faster using a direct function call
|
The metatable is just an add on. When it comes to speed, one is faster using a direct function call.
|
||||||
|
|
||||||
-- http://luamatrix.luaforge.net
|
API
|
||||||
|
|
||||||
-- Licensed under the same terms as Lua itself.
|
See code and test_complex.lua.
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
|
||||||
|
None (other than Lua 5.1 or 5.2).
|
||||||
|
|
||||||
|
HOME PAGE
|
||||||
|
|
||||||
|
http://luamatrix.luaforge.net
|
||||||
|
http://lua-users.org/wiki/LuaMatrix
|
||||||
|
|
||||||
|
DOWNLOAD/INSTALL
|
||||||
|
|
||||||
|
./util.mk
|
||||||
|
cd tmp/*
|
||||||
|
luarocks make
|
||||||
|
|
||||||
|
Licensed under the same terms as Lua itself.
|
||||||
|
|
||||||
|
Developers:
|
||||||
|
Michael Lutz (chillcode)
|
||||||
|
David Manura http://lua-users.org/wiki/DavidManura (maintainer)
|
||||||
|
--]]
|
||||||
|
|
||||||
--/////////////--
|
--/////////////--
|
||||||
--// complex //--
|
--// complex //--
|
||||||
--/////////////--
|
--/////////////--
|
||||||
|
|
||||||
-- link to complex table
|
-- link to complex table
|
||||||
local complex = {}
|
local complex = {_TYPE='module', _NAME='complex', _VERSION='0.3.2.20111203'}
|
||||||
|
|
||||||
-- link to complex metatable
|
-- link to complex metatable
|
||||||
local complex_meta = {}
|
local complex_meta = {}
|
||||||
|
|
|
@ -1,17 +1,25 @@
|
||||||
--[[
|
--[[
|
||||||
matrix v 0.2.9
|
|
||||||
|
|
||||||
Lua 5.1 compatible
|
|
||||||
|
|
||||||
'matrix' provides a good selection of matrix functions.
|
|
||||||
|
|
||||||
With simple matrices this script is quite useful, though for more
|
LUA MODULE
|
||||||
exact calculations, one would probably use a program like Matlab instead.
|
|
||||||
Matrices of size 100x100 can still be handled very well.
|
matrix v$(_VERSION) - matrix functions implemented with Lua tables
|
||||||
The error for the determinant and the inverted matrix is around 10^-9
|
|
||||||
with a 100x100 matrix and an element range from -100 to 100.
|
SYNOPSIS
|
||||||
|
|
||||||
|
local matrix = require 'matrix'
|
||||||
|
m1 = matrix{{8,4,1},{6,8,3}}
|
||||||
|
m2 = matrix{{-8,1,3},{5,2,1}}
|
||||||
|
assert(m1 + m2 == matrix{{0,5,4},{11,10,4}})
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
|
||||||
|
With simple matrices this script is quite useful, though for more
|
||||||
|
exact calculations, one would probably use a program like Matlab instead.
|
||||||
|
Matrices of size 100x100 can still be handled very well.
|
||||||
|
The error for the determinant and the inverted matrix is around 10^-9
|
||||||
|
with a 100x100 matrix and an element range from -100 to 100.
|
||||||
|
|
||||||
Characteristics:
|
Characteristics:
|
||||||
|
|
||||||
- functions called via matrix.<function> should be able to handle
|
- functions called via matrix.<function> should be able to handle
|
||||||
any table matrix of structure t[i][j] = value
|
any table matrix of structure t[i][j] = value
|
||||||
|
@ -24,14 +32,14 @@
|
||||||
since one gets a Lua error on incorrect use anyways
|
since one gets a Lua error on incorrect use anyways
|
||||||
- uses mainly Gauss-Jordan elimination
|
- uses mainly Gauss-Jordan elimination
|
||||||
- for Lua tables optimised determinant calculation (fast)
|
- for Lua tables optimised determinant calculation (fast)
|
||||||
but not invoking any checks for special types of matrices
|
but not invoking any checks for special types of matrices
|
||||||
- vectors can be set up via vec1 = matrix{{ 1,2,3 }}^'T' or matrix{1,2,3}
|
- vectors can be set up via vec1 = matrix{{ 1,2,3 }}^'T' or matrix{1,2,3}
|
||||||
- vectors can be multiplied scalar via num = vec1^'T' * vec2
|
- vectors can be multiplied to a scalar via num = vec1^'T' * vec2
|
||||||
where num will be a matrix with the result in mtx[1][1],
|
where num will be a matrix with the result in mtx[1][1],
|
||||||
or use num = vec1:scalar( vec2 ), where num is a number
|
or use num = vec1:scalar( vec2 ), where num is a number
|
||||||
|
|
||||||
Site: http://luamatrix.luaforge.net
|
|
||||||
|
|
||||||
|
API
|
||||||
|
|
||||||
matrix function list:
|
matrix function list:
|
||||||
|
|
||||||
matrix.add
|
matrix.add
|
||||||
|
@ -75,20 +83,38 @@
|
||||||
matrix.tostring
|
matrix.tostring
|
||||||
matrix.transpose
|
matrix.transpose
|
||||||
matrix.type
|
matrix.type
|
||||||
|
|
||||||
|
See code and test_matrix.lua.
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
|
||||||
|
None (other than Lua 5.1 or 5.2). May be used with complex.lua.
|
||||||
|
|
||||||
|
HOME PAGE
|
||||||
|
|
||||||
|
http://luamatrix.luaforge.net
|
||||||
|
http://lua-users.org/wiki/LuaMatrix
|
||||||
|
|
||||||
|
DOWNLOAD/INSTALL
|
||||||
|
|
||||||
|
./util.mk
|
||||||
|
cd tmp/*
|
||||||
|
luarocks make
|
||||||
|
|
||||||
|
LICENSE
|
||||||
|
|
||||||
|
Licensed under the same terms as Lua itself.
|
||||||
|
|
||||||
Licensed under the same terms as Lua itself.
|
Developers:
|
||||||
|
Michael Lutz (chillcode) - original author
|
||||||
Developers:
|
David Manura http://lua-users.org/wiki/DavidManura
|
||||||
Michael Lutz (chillcode)
|
--]]
|
||||||
David Manura http://lua-users.org/wiki/DavidManura
|
|
||||||
]]--
|
|
||||||
|
|
||||||
--////////////
|
--////////////
|
||||||
--// matrix //
|
--// matrix //
|
||||||
--////////////
|
--////////////
|
||||||
|
|
||||||
local matrix = {}
|
local matrix = {_TYPE='module', _NAME='matrix', _VERSION='0.2.10.20111203'}
|
||||||
|
|
||||||
-- access to the metatable we set at the end of the file
|
-- access to the metatable we set at the end of the file
|
||||||
local matrix_meta = {}
|
local matrix_meta = {}
|
||||||
|
@ -1228,4 +1254,4 @@ return matrix
|
||||||
|
|
||||||
--///////////////--
|
--///////////////--
|
||||||
--// chillcode //--
|
--// chillcode //--
|
||||||
--///////////////--
|
--///////////////--
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
package = "LuaMatrix"
|
package = "lua-matrix"
|
||||||
version = "[VERSION]"
|
version = "$(_VERSION)"
|
||||||
source = {
|
source = {
|
||||||
url = "[URL]",
|
url = "git://github.com/davidm/lua-matrix.git",
|
||||||
|
tag='v$(_VERSION)'
|
||||||
}
|
}
|
||||||
description = {
|
description = {
|
||||||
summary = "Matrices and matrix operations implemented in pure Lua.",
|
summary = "Matrices and matrix operations implemented in pure Lua.",
|
||||||
|
@ -11,11 +12,11 @@ description = {
|
||||||
Includes a complex number data type too.
|
Includes a complex number data type too.
|
||||||
]],
|
]],
|
||||||
license = "MIT/X11",
|
license = "MIT/X11",
|
||||||
homepage = "http://luamatrix.luaforge.net/",
|
homepage = "http://lua-users.org/wiki/LuaMatrix",
|
||||||
maintainer = "David Manura <http://lua-users.org/wiki/DavidManura>",
|
maintainer = "David Manura <http://lua-users.org/wiki/DavidManura>",
|
||||||
}
|
}
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"lua >= 5.1",
|
"lua >= 5.1", -- including 5.2
|
||||||
}
|
}
|
||||||
build = {
|
build = {
|
||||||
type = "none",
|
type = "none",
|
||||||
|
@ -28,4 +29,4 @@ build = {
|
||||||
copy_directories = {"doc", "samples", "tests"},
|
copy_directories = {"doc", "samples", "tests"},
|
||||||
}
|
}
|
||||||
-- test: tests/test.lua
|
-- test: tests/test.lua
|
||||||
|
-- _VERSION from lua/matrix.lua
|
|
@ -0,0 +1,27 @@
|
||||||
|
#!/usr/bin/make -f
|
||||||
|
# utility commands for package maintainers
|
||||||
|
|
||||||
|
VERSIONFROM:=$(shell sed -n 's,.*_VERSION \+from \+\([^ ]\+\).*,\1,p' rockspec.in)
|
||||||
|
VERSION:=$(shell sed -n "s,.*_VERSION='\([^']*\)'.*,\1,p" $(VERSIONFROM))-1
|
||||||
|
NAME=$(shell lua -e 'dofile"rockspec.in"; print(package)')
|
||||||
|
|
||||||
|
dist :
|
||||||
|
rm -fr tmp/$(NAME)-$(VERSION) tmp/$(NAME)-$(VERSION).zip
|
||||||
|
for x in `cat MANIFEST`; do install -D $$x tmp/$(NAME)-$(VERSION)/$$x || exit; done
|
||||||
|
sed 's,$$(_VERSION),$(VERSION),g' tmp/$(NAME)-$(VERSION)/rockspec.in > tmp/$(NAME)-$(VERSION)/$(NAME)-$(VERSION).rockspec
|
||||||
|
cd tmp && zip -r $(NAME)-$(VERSION).zip $(NAME)-$(VERSION)
|
||||||
|
|
||||||
|
install : dist
|
||||||
|
cd tmp/$(NAME)-$(VERSION) && luarocks make
|
||||||
|
|
||||||
|
test :
|
||||||
|
@if [ -e test.lua ]; then lua test.lua; fi
|
||||||
|
@if [ -e test/test.lua ]; then lua test/test.lua; fi
|
||||||
|
|
||||||
|
tag :
|
||||||
|
git tag -f v$(VERSION)
|
||||||
|
|
||||||
|
version :
|
||||||
|
@echo $(NAME)-$(VERSION)
|
||||||
|
|
||||||
|
.PHONY : dist install test tag version
|
Loading…
Reference in New Issue