summaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorjschauma <jschauma@pkgsrc.org>2002-10-16 15:40:33 +0000
committerjschauma <jschauma@pkgsrc.org>2002-10-16 15:40:33 +0000
commitc74a2992912c7d36c6f189b8ed196a6ed9bf6c64 (patch)
tree9e67fb4594693b25f53e87278902596fff9cfadc /math
parent53f2ac42463ef330fd4d98f8dab8e61b6f4e4727 (diff)
downloadpkgsrc-c74a2992912c7d36c6f189b8ed196a6ed9bf6c64.tar.gz
Initial import of math/newmat into pkgsrc:
This C++ library is intended for scientists and engineers who need to manipulate a variety of types of matrices using standard matrix operations. Emphasis is on the kind of operations needed in statistical calculations such as least squares, linear equation solve and eigenvalues. It supports matrix types: Matrix (rectangular matrix); UpperTriangularMatrix; LowerTriangularMatrix; DiagonalMatrix; SymmetricMatrix; BandMatrix; UpperBandMatrix; LowerBandMatrix; SymmetricBandMatrix; IdentityMatrix; RowVector; ColumnVector. The library includes the operations *, +, -, *=, +=, -=, Kronecker product, Schur product, concatenation, inverse, transpose, conversion between types, submatrix, determinant, Cholesky decomposition, QR triangularisation, singular value decomposition, eigenvalues of a symmetric matrix, sorting, fast Fourier and trig. transforms, printing and an interface with Numerical Recipes in C. It is intended for matrices in the range 10 x 10 to the maximum size your machine will accommodate in a single array. The package works for very small matrices but becomes rather inefficient. A lazy evaluation approach to evaluating matrix expressions is used to improve efficiency and reduce use of temporary storage.
Diffstat (limited to 'math')
-rw-r--r--math/newmat/DESCR21
-rw-r--r--math/newmat/Makefile31
-rw-r--r--math/newmat/PLIST17
-rw-r--r--math/newmat/buildlink2.mk19
-rw-r--r--math/newmat/distinfo5
-rw-r--r--math/newmat/patches/patch-aa10
6 files changed, 103 insertions, 0 deletions
diff --git a/math/newmat/DESCR b/math/newmat/DESCR
new file mode 100644
index 00000000000..fbdb92c3efc
--- /dev/null
+++ b/math/newmat/DESCR
@@ -0,0 +1,21 @@
+This C++ library is intended for scientists and engineers who need to
+manipulate a variety of types of matrices using standard matrix operations.
+Emphasis is on the kind of operations needed in statistical calculations such
+as least squares, linear equation solve and eigenvalues.
+
+It supports matrix types: Matrix (rectangular matrix); UpperTriangularMatrix;
+LowerTriangularMatrix; DiagonalMatrix; SymmetricMatrix; BandMatrix;
+UpperBandMatrix; LowerBandMatrix; SymmetricBandMatrix; IdentityMatrix;
+RowVector; ColumnVector.
+
+The library includes the operations *, +, -, *=, +=, -=, Kronecker product,
+Schur product, concatenation, inverse, transpose, conversion between types,
+submatrix, determinant, Cholesky decomposition, QR triangularisation, singular
+value decomposition, eigenvalues of a symmetric matrix, sorting, fast Fourier
+and trig. transforms, printing and an interface with Numerical Recipes in C.
+
+It is intended for matrices in the range 10 x 10 to the maximum size your
+machine will accommodate in a single array. The package works for very small
+matrices but becomes rather inefficient. A lazy evaluation approach to
+evaluating matrix expressions is used to improve efficiency and reduce use of
+temporary storage.
diff --git a/math/newmat/Makefile b/math/newmat/Makefile
new file mode 100644
index 00000000000..89c887d0e1d
--- /dev/null
+++ b/math/newmat/Makefile
@@ -0,0 +1,31 @@
+# $NetBSD: Makefile,v 1.1.1.1 2002/10/16 15:40:33 jschauma Exp $
+#
+
+DISTNAME= newmat10
+PKGNAME= ${DISTNAME:C/([0-9]+)$/-\1/}
+CATEGORIES= math devel
+MASTER_SITES= http://www.robertnz.net/ftp/
+
+MAINTAINER= jschauma@netbsd.org
+HOMEPAGE= http://www.robertnz.net/ol_doc.htm
+COMMENT= Newmat C++ Matrix Library
+
+WRKSRC= ${WRKDIR}
+MAKEFILE= nm_cc.mak
+ALL_TARGET= garch
+
+HEADERS= boolean.h controlw.h include.h myexcept.h newmat.h \
+ newmatap.h newmatio.h newmatnl.h newmatrc.h precisio.h
+
+DOCDIR= ${PREFIX}/share/doc/html/newmat
+
+do-install:
+ ${INSTALL_DATA_DIR} ${PREFIX}/include/newmat
+.for header in ${HEADERS}
+ ${INSTALL_DATA} ${WRKSRC}/${header} ${PREFIX}/include/newmat
+.endfor
+ ${INSTALL_DATA} ${WRKSRC}/libnewmat.a ${PREFIX}/lib
+ ${INSTALL_DATA_DIR} ${DOCDIR}
+ ${INSTALL_DATA} ${WRKSRC}/nm10.htm ${DOCDIR}/index.html
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/math/newmat/PLIST b/math/newmat/PLIST
new file mode 100644
index 00000000000..efb1e62ef00
--- /dev/null
+++ b/math/newmat/PLIST
@@ -0,0 +1,17 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2002/10/16 15:40:33 jschauma Exp $
+include/newmat/boolean.h
+include/newmat/controlw.h
+include/newmat/include.h
+include/newmat/myexcept.h
+include/newmat/newmat.h
+include/newmat/newmatap.h
+include/newmat/newmatio.h
+include/newmat/newmatnl.h
+include/newmat/newmatrc.h
+include/newmat/precisio.h
+lib/libnewmat.a
+share/doc/html/newmat/index.html
+@dirrm share/doc/html/newmat
+@unexec ${RMDIR} share/doc/html 2>/dev/null || ${TRUE}
+@unexec ${RMDIR} share/doc 2>/dev/null || ${TRUE}
+@dirrm include/newmat
diff --git a/math/newmat/buildlink2.mk b/math/newmat/buildlink2.mk
new file mode 100644
index 00000000000..8df213dba74
--- /dev/null
+++ b/math/newmat/buildlink2.mk
@@ -0,0 +1,19 @@
+# $NetBSD: buildlink2.mk,v 1.1.1.1 2002/10/16 15:40:33 jschauma Exp $
+
+.if !defined(NEWMAT_BUILDLINK2_MK)
+NEWMAT_BUILDLINK2_MK= # defined
+
+BUILDLINK_PACKAGES+= newmat
+BUILDLINK_DEPENDS.newmat?= newmat>=10
+BUILDLINK_PKGSRCDIR.newmat?= ../../math/newmat
+
+EVAL_PREFIX+= BUILDLINK_PREFIX.newmat=newmat
+BUILDLINK_PREFIX.newmat_DEFAULT= ${LOCALBASE}
+BUILDLINK_FILES.newmat= include/newmat/*
+BUILDLINK_FILES.newmat+= lib/libnewmat.*
+
+BUILDLINK_TARGETS+= newmat-buildlink
+
+newmat-buildlink: _BUILDLINK_USE
+
+.endif # NEWMAT_BUILDLINK2_MK
diff --git a/math/newmat/distinfo b/math/newmat/distinfo
new file mode 100644
index 00000000000..a2928ee7ee2
--- /dev/null
+++ b/math/newmat/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2002/10/16 15:40:33 jschauma Exp $
+
+SHA1 (newmat10.tar.gz) = 3ce22ec05ec8fcd89209c7be326cd047631bbca2
+Size (newmat10.tar.gz) = 204081 bytes
+SHA1 (patch-aa) = 6b8a51ad193d68defef00aa817ca2d9e9b3505cd
diff --git a/math/newmat/patches/patch-aa b/math/newmat/patches/patch-aa
new file mode 100644
index 00000000000..d15158e619d
--- /dev/null
+++ b/math/newmat/patches/patch-aa
@@ -0,0 +1,10 @@
+$NetBSD: patch-aa,v 1.1.1.1 2002/10/16 15:40:33 jschauma Exp $
+
+--- nm_cc.mak.orig Wed Oct 16 10:22:44 2002
++++ nm_cc.mak Wed Oct 16 10:22:56 2002
+@@ -1,5 +1,3 @@
+-CXX = CC
+-CXXFLAGS = -O2
+
+ DIFF = ./sdiff
+ PRE = ./