pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/math/arpack Import ARPACK 96 as math/arpack.
details: https://anonhg.NetBSD.org/pkgsrc/rev/d0e6e0671fcb
branches: trunk
changeset: 604353:d0e6e0671fcb
user: asau <asau%pkgsrc.org@localhost>
date: Tue May 29 16:38:01 2012 +0000
description:
Import ARPACK 96 as math/arpack.
Contributed to pkgsrc-wip by Jason Bacon.
ARPACK is a collection of Fortran77 subroutines designed to solve large
scale eigenvalue problems.
The package is designed to compute a few eigenvalues and corresponding
eigenvectors of a general n by n matrix A. It is most appropriate for large
sparse or structured matrices A where structured means that a matrix-vector
product w <- Av requires order n rather than the usual order n**2 floating
point operations. This software is based upon an algorithmic variant of the
Arnoldi process called the Implicitly Restarted Arnoldi Method (IRAM). When
the matrix A is symmetric it reduces to a variant of the Lanczos process
called the Implicitly Restarted Lanczos Method (IRLM). These variants may be
viewed as a synthesis of the Arnoldi/Lanczos process with the Implicitly
Shifted QR technique that is suitable for large scale problems. For many
standard problems, a matrix factorization is not required. Only the action
of the matrix on a vector is needed. ARPACK software is capable of solving
large scale symmetric, nonsymmetric, and generalized eigenproblems from
significant application areas. The software is designed to compute a few (k)
eigenvalues with user specified features such as those of largest real part
or largest magnitude. Storage requirements are on the order of n*k locations.
No auxiliary storage is required. A set of Schur basis vectors for the desired
k-dimensional eigen-space is computed which is numerically orthogonal to working
precision. Numerically accurate eigenvectors are available on request.
Important Features:
o Reverse Communication Interface.
o Single and Double Precision Real Arithmetic Versions for Symmetric,
Non-symmetric, Standard or Generalized Problems.
o Single and Double Precision Complex Arithmetic Versions for Standard
or Generalized Problems.
o Routines for Banded Matrices - Standard or Generalized Problems.
o Routines for The Singular Value Decomposition.
o Example driver routines that may be used as templates to implement
numerous Shift-Invert strategies for all problem types, data types
and precision.
diffstat:
math/arpack/DESCR | 35 ++++++++++++++++++++++
math/arpack/Makefile | 29 ++++++++++++++++++
math/arpack/PLIST | 2 +
math/arpack/buildlink3.mk | 14 +++++++++
math/arpack/distinfo | 10 ++++++
math/arpack/patches/patch-ARmake.inc | 51 +++++++++++++++++++++++++++++++++
math/arpack/patches/patch-UTIL_second.f | 16 ++++++++++
7 files changed, 157 insertions(+), 0 deletions(-)
diffs (185 lines):
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/DESCR
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/DESCR Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,35 @@
+ARPACK is a collection of Fortran77 subroutines designed to solve large
+scale eigenvalue problems.
+
+The package is designed to compute a few eigenvalues and corresponding
+eigenvectors of a general n by n matrix A. It is most appropriate for large
+sparse or structured matrices A where structured means that a matrix-vector
+product w <- Av requires order n rather than the usual order n**2 floating
+point operations. This software is based upon an algorithmic variant of the
+Arnoldi process called the Implicitly Restarted Arnoldi Method (IRAM). When
+the matrix A is symmetric it reduces to a variant of the Lanczos process
+called the Implicitly Restarted Lanczos Method (IRLM). These variants may be
+viewed as a synthesis of the Arnoldi/Lanczos process with the Implicitly
+Shifted QR technique that is suitable for large scale problems. For many
+standard problems, a matrix factorization is not required. Only the action
+of the matrix on a vector is needed. ARPACK software is capable of solving
+large scale symmetric, nonsymmetric, and generalized eigenproblems from
+significant application areas. The software is designed to compute a few (k)
+eigenvalues with user specified features such as those of largest real part
+or largest magnitude. Storage requirements are on the order of n*k locations.
+No auxiliary storage is required. A set of Schur basis vectors for the desired
+k-dimensional eigen-space is computed which is numerically orthogonal to working
+precision. Numerically accurate eigenvectors are available on request.
+
+Important Features:
+
+ o Reverse Communication Interface.
+ o Single and Double Precision Real Arithmetic Versions for Symmetric,
+ Non-symmetric, Standard or Generalized Problems.
+ o Single and Double Precision Complex Arithmetic Versions for Standard
+ or Generalized Problems.
+ o Routines for Banded Matrices - Standard or Generalized Problems.
+ o Routines for The Singular Value Decomposition.
+ o Example driver routines that may be used as templates to implement
+ numerous Shift-Invert strategies for all problem types, data types
+ and precision.
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/Makefile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/Makefile Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,29 @@
+# $NetBSD: Makefile,v 1.1.1.1 2012/05/29 16:38:01 asau Exp $
+
+DISTNAME= arpack96
+PKGNAME= arpack-96
+CATEGORIES= math
+MASTER_SITES= http://www.caam.rice.edu/software/ARPACK/SRC/
+DISTFILES= arpack96.tar.gz patch.tar.gz
+
+MAINTAINER= jwbacon%tds.net@localhost
+HOMEPAGE= http://www.caam.rice.edu/software/ARPACK/SRC/
+COMMENT= Library of subroutines to solve eigenvalue problems
+LICENSE= original-bsd
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+WRKSRC= ${WRKDIR}/ARPACK
+USE_LANGUAGES= fortran77
+MAKE_ENV+= WRKSRC=${WRKSRC}
+
+INSTALLATION_DIRS= lib
+
+# Patches must be extracted AFTER the main dist to overwrite files
+post-extract:
+ cd ${WRKDIR} && ${TAR} -zxf ${DISTDIR}/patch.tar.gz
+
+do-install:
+ ${INSTALL_DATA} ${WRKSRC}/libarpack.a ${DESTDIR}${PREFIX}/lib
+
+.include "../../mk/bsd.pkg.mk"
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/PLIST
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/PLIST Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2012/05/29 16:38:01 asau Exp $
+lib/libarpack.a
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/buildlink3.mk
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/buildlink3.mk Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,14 @@
+# $NetBSD: buildlink3.mk,v 1.1.1.1 2012/05/29 16:38:01 asau Exp $
+
+BUILDLINK_DEPMETHOD.arpack?= build
+
+BUILDLINK_TREE+= arpack
+
+.if !defined(ARPACK_BUILDLINK3_MK)
+ARPACK_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.arpack+= arpack>=96
+BUILDLINK_PKGSRCDIR.arpack?= ../../math/arpack
+.endif # ARPACK_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -arpack
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/distinfo
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/distinfo Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.1.1.1 2012/05/29 16:38:01 asau Exp $
+
+SHA1 (arpack96.tar.gz) = 3f91de2b39b484bc8365f8048c9eb109e0306e1c
+RMD160 (arpack96.tar.gz) = 3d1c1c307223961506066f895b7ab291861e73fe
+Size (arpack96.tar.gz) = 636865 bytes
+SHA1 (patch.tar.gz) = 9fc6db4180d516d834d959a5f079e63f174f98fa
+RMD160 (patch.tar.gz) = 4ccda2de8dc04c9ecb0ea722f230f5dd5c981154
+Size (patch.tar.gz) = 226473 bytes
+SHA1 (patch-ARmake.inc) = f3e11d5ef8f11c8c253a487baec5e0b18aa07a8c
+SHA1 (patch-UTIL_second.f) = 6a9d03f815b6d73669e637f5bfae6e8d38df90fd
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/patches/patch-ARmake.inc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/patches/patch-ARmake.inc Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,51 @@
+$NetBSD: patch-ARmake.inc,v 1.1.1.1 2012/05/29 16:38:01 asau Exp $
+
+--- ARmake.inc.orig 1996-04-26 19:12:57.000000000 +0000
++++ ARmake.inc
+@@ -25,14 +25,14 @@
+ # | other than your home directory. |
+ # %--------------------------------------%
+ #
+-home = $(HOME)/ARPACK
++home = ${WRKSRC}
+ #
+ # %--------------------------------------%
+ # | The platform identifier to suffix to |
+ # | the end of library names |
+ # %--------------------------------------%
+ #
+-PLAT = SUN4
++# PLAT = SUN4
+ #
+ # %------------------------------------------------------%
+ # | The directories to find the various pieces of ARPACK |
+@@ -57,7 +57,7 @@ DIRS = $(BLASdir) $(LAPACKdir) $(
+ # | The name of the libraries to be created/linked to |
+ # %---------------------------------------------------%
+ #
+-ARPACKLIB = $(home)/libarpack_$(PLAT).a
++ARPACKLIB = $(home)/libarpack.a
+ LAPACKLIB =
+ BLASLIB =
+ #
+@@ -101,8 +101,9 @@ ALIBS = $(ARPACKLIB) $(LAPACKLIB) $(BLA
+ # | for your system. |
+ # %-----------------------------------------%
+ #
+-FC = f77
+-FFLAGS = -O -cg89
++# Provided by pkgsrc
++# FC = gfortran
++FFLAGS = -O -fPIC
+
+ LDFLAGS =
+ CD = cd
+@@ -112,7 +113,7 @@ ECHO = echo
+ LN = ln
+ LNFLAGS = -s
+
+-MAKE = /bin/make
++# MAKE = /bin/make
+
+ RM = rm
+ RMFLAGS = -f
diff -r 4dc40cf5db9e -r d0e6e0671fcb math/arpack/patches/patch-UTIL_second.f
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/math/arpack/patches/patch-UTIL_second.f Tue May 29 16:38:01 2012 +0000
@@ -0,0 +1,16 @@
+$NetBSD: patch-UTIL_second.f,v 1.1.1.1 2012/05/29 16:38:01 asau Exp $
+
+--- UTIL/second.f.orig 1995-10-02 18:56:44.000000000 +0000
++++ UTIL/second.f
+@@ -20,8 +20,9 @@
+ REAL TARRAY( 2 )
+ * ..
+ * .. External Functions ..
+- REAL ETIME
+- EXTERNAL ETIME
++* ETIME is intrinsic, so this causes undefined reference errors in newer gcc
++* REAL ETIME
++* EXTERNAL ETIME
+ * ..
+ * .. Executable Statements ..
+ *
Home |
Main Index |
Thread Index |
Old Index