r43916 - in /packages/itsol/tags/1.0.0-2: ./ debian/ debian/patches/ debian/source/
domibel at users.alioth.debian.org
domibel at users.alioth.debian.org
Thu Sep 22 02:39:30 UTC 2011
Author: domibel
Date: Thu Sep 22 02:39:29 2011
New Revision: 43916
URL: http://svn.debian.org/wsvn/debian-science/?sc=1&rev=43916
Log:
tagging itsol 1.0.0-2
Added:
packages/itsol/tags/1.0.0-2/
packages/itsol/tags/1.0.0-2/debian/
packages/itsol/tags/1.0.0-2/debian/changelog
packages/itsol/tags/1.0.0-2/debian/compat
packages/itsol/tags/1.0.0-2/debian/control
packages/itsol/tags/1.0.0-2/debian/copyright
packages/itsol/tags/1.0.0-2/debian/get-orig-source
packages/itsol/tags/1.0.0-2/debian/patches/
packages/itsol/tags/1.0.0-2/debian/patches/20_preprocessor.diff
packages/itsol/tags/1.0.0-2/debian/patches/series
packages/itsol/tags/1.0.0-2/debian/rules (with props)
packages/itsol/tags/1.0.0-2/debian/source/
packages/itsol/tags/1.0.0-2/debian/source/format
Added: packages/itsol/tags/1.0.0-2/debian/changelog
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/changelog?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/changelog (added)
+++ packages/itsol/tags/1.0.0-2/debian/changelog Thu Sep 22 02:39:29 2011
@@ -1,0 +1,15 @@
+itsol (1.0.0-2) unstable; urgency=low
+
+ * Bump Standards-Version to 3.9.2 (no changes necessary)
+ * Bump compat level to 8
+ * Added vcs fields
+ * Updated email address
+
+ -- Dominique Belhachemi <domibel at debian.org> Wed, 21 Sep 2011 22:23:46 -0400
+
+itsol (1.0.0-1) unstable; urgency=low
+
+ * Switch to dpkg-source 3.0 (quilt) format
+ * Initial release (Closes: #498646)
+
+ -- Dominique Belhachemi <domibel at debian.org> Fri, 02 Apr 2010 14:25:29 -0400
Added: packages/itsol/tags/1.0.0-2/debian/compat
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/compat?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/compat (added)
+++ packages/itsol/tags/1.0.0-2/debian/compat Thu Sep 22 02:39:29 2011
@@ -1,0 +1,1 @@
+8
Added: packages/itsol/tags/1.0.0-2/debian/control
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/control?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/control (added)
+++ packages/itsol/tags/1.0.0-2/debian/control Thu Sep 22 02:39:29 2011
@@ -1,0 +1,63 @@
+Source: itsol
+Priority: optional
+Maintainer: Debian Science Team <debian-science-maintainers at lists.alioth.debian.org>
+DM-Upload-Allowed: yes
+Uploaders: Dominique Belhachemi <domibel at debian.org>
+Build-Depends: debhelper (>= 8), quilt, gfortran, liblapack-dev, cmake
+Standards-Version: 3.9.2
+Vcs-Browser: http://svn.debian.org/wsvn/debian-science/packages/itsol/trunk/
+Vcs-Svn: svn://svn.debian.org/svn/debian-science/packages/itsol/trunk/
+Section: libs
+Homepage: http://www-users.cs.umn.edu/~saad/software/ITSOL/
+
+
+Package: libitsol-dev
+Section: libdevel
+Architecture: any
+Depends: libitsol1 (= ${binary:Version}), ${misc:Depends}
+Description: ITerative SOLvers - devel
+ ITSOL is a library of iterative solvers for general sparse linear systems of
+ equations. ITSOL can be viewed as an extension of the itsol module in SPARSKIT.
+ It is written in C and offers a selection of recently developed
+ preconditioners. The preconditioner suite includes:
+ .
+ * ILUK (ILU preconditioner with level of fill)
+ * ILUT (ILU preconditioner with threshold)
+ * ILUC (Crout version of ILUT)
+ * VBILUK (variable block preconditioner with level of fill - with automatic
+ block detection)
+ * VBILUT (variable block preconditioner with threshold - with automatic
+ block detection)
+ * ARMS (Algebraic Recursive Multilevel Solvers -- includes actually several
+ methods - In particular the standard ARMS and the ddPQ version which uses
+ nonsymmetric permutations)
+ .
+ Note that ITSOL is a scalar package. You may find parallel implentations of
+ some of the preconditioners listed above in pARMS.
+ .
+ This package provides the itsol header files required to compile C/C++ programs
+ that use ITSOL.
+
+
+Package: libitsol1
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: ITerative SOLvers - runtime
+ ITSOL is a library of iterative solvers for general sparse linear systems of
+ equations. ITSOL can be viewed as an extension of the itsol module in SPARSKIT.
+ It is written in C and offers a selection of recently developed
+ preconditioners. The preconditioner suite includes:
+ .
+ * ILUK (ILU preconditioner with level of fill)
+ * ILUT (ILU preconditioner with threshold)
+ * ILUC (Crout version of ILUT)
+ * VBILUK (variable block preconditioner with level of fill - with automatic
+ block detection)
+ * VBILUT (variable block preconditioner with threshold - with automatic
+ block detection)
+ * ARMS (Algebraic Recursive Multilevel Solvers -- includes actually several
+ methods - In particular the standard ARMS and the ddPQ version which uses
+ nonsymmetric permutations)
+ .
+ Note that ITSOL is a scalar package. You may find parallel implentations of
+ some of the preconditioners listed above in pARMS.
Added: packages/itsol/tags/1.0.0-2/debian/copyright
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/copyright?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/copyright (added)
+++ packages/itsol/tags/1.0.0-2/debian/copyright Thu Sep 22 02:39:29 2011
@@ -1,0 +1,34 @@
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
+Debianized-By: Dominique Belhachemi <domibel at debian.org>
+Debianized-Date: Sat, 06 Sep 2008 22:36:05 +0200
+Original-Source: http://www-users.cs.umn.edu/~saad/software/ITSOL/
+
+
+Files: *
+Copyright:
+ Copyright (C) 2006, the University of Minnesota,
+ Yousef Saad, saad AT cs dot umn dot edu
+
+License: GPL-2+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-2'.
+
+
+Files: debian/*
+Copyright: Copyright 2008, Dominique Belhachemi <domibel at debian.org>
+License: GPL-2+
+ The Debian packaging is licensed under the GPL, see `/usr/share/common-licenses/GPL-2'
Added: packages/itsol/tags/1.0.0-2/debian/get-orig-source
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/get-orig-source?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/get-orig-source (added)
+++ packages/itsol/tags/1.0.0-2/debian/get-orig-source Thu Sep 22 02:39:29 2011
@@ -1,0 +1,6 @@
+wget http://www-users.cs.umn.edu/~saad/software/ITSOL/ITSOL_1.tar.gz
+
+tar xvzf ITSOL_1.tar.gz
+mv ITSOL_1 itsol-1.0.0
+tar cvzf itsol_1.0.0.orig.tar.gz itsol-1.0.0
+rm ITSOL_1.tar.gz
Added: packages/itsol/tags/1.0.0-2/debian/patches/20_preprocessor.diff
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/patches/20_preprocessor.diff?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/patches/20_preprocessor.diff (added)
+++ packages/itsol/tags/1.0.0-2/debian/patches/20_preprocessor.diff Thu Sep 22 02:39:29 2011
@@ -1,0 +1,712 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 20_preprocessor.dpatch by <domibel at sid1500>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+Index: itsol-1.0.0/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ itsol-1.0.0/CMakeLists.txt 2010-04-02 21:13:25.000000000 -0400
+@@ -0,0 +1,75 @@
++cmake_minimum_required(VERSION 2.6)
++
++project (ITSOL)
++
++
++set(STATIC_LIBRARY_FLAGS "-rcv")
++set(CMAKE_Fortran_FLAGS " -c -g -ffixed-line-length-none -ffree-line-length-none")
++#set(CMAKE_Fortran_FLAGS " -c -g -Wall -ffixed-line-length-none -ffree-line-length-none")
++
++enable_language(Fortran)
++
++#SET_TARGET_PROPERTIES( PROPERTIES LINKER_LANGUAGE CXX)
++
++
++# Create a library called "itsol".
++add_library (itsol
++ arms2.c
++ auxill.c
++ fgmr.c
++ iluk.c
++ ilut.c
++ vbiluk.c
++ vbilut.c
++ LIB/PQ.c
++ LIB/ilutpC.c
++ LIB/indsetC.c
++ LIB/MatOps.c
++ LIB/misc.c
++ LIB/piluNEW.c
++ LIB/PQ.c
++ LIB/setblks.c
++ LIB/sets.c
++ LIB/svdInvC.c
++ LIB/systimer.c
++ LIB/tools.f
++)
++
++SET_TARGET_PROPERTIES(itsol PROPERTIES
++ LINKER_LANGUAGE CXX
++ SOVERSION 1
++ VERSION 1.0.0
++)
++
++install(TARGETS itsol
++ RUNTIME DESTINATION bin COMPONENT RuntimeLibraries
++ LIBRARY DESTINATION lib COMPONENT RuntimeLibraries
++ ARCHIVE DESTINATION lib COMPONENT Development
++)
++
++install(DIRECTORY TESTS_COO/MATRICES TESTS_COO/OUT
++ DESTINATION share/itsol/tests/TESTS_COO
++)
++
++install(FILES TESTS_COO/inputs TESTS_COO/matfile_coo
++ DESTINATION share/itsol/tests/TESTS_COO/
++)
++
++
++
++install(DIRECTORY TESTS_HB/MATRICES TESTS_HB/OUT
++ DESTINATION share/itsol/tests/TESTS_HB
++)
++
++install(FILES TESTS_HB/inputs TESTS_HB/matfile_hb
++ DESTINATION share/itsol/tests/TESTS_HB/
++)
++
++
++
++#add_library (itsol LIB/tools.f)
++# ./LIB/indsetC.c ./LIB/sets.c ./LIB/tools.c ./LIB/systimer.c ./LIB/misc.c ./LIB/MatOps.c ./LIB/ilutpC.c ./LIB/setblks.c ./LIB/svdInvC.c)
++
++
++add_subdirectory (TESTS_HB)
++#add_subdirectory (TESTS_COO)
+Index: itsol-1.0.0/TESTS_COO/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ itsol-1.0.0/TESTS_COO/CMakeLists.txt 2010-04-02 21:13:25.000000000 -0400
+@@ -0,0 +1,28 @@
++cmake_minimum_required(VERSION 2.6)
++
++
++set(CMAKE_Fortran_FLAGS " -c -g -Wall -ffixed-line-length-none -ffree-line-length-none")
++
++
++# Make sure the linker can find the ITSOL library once it is built.
++link_directories (${ITSOL_BINARY_DIR}/LIB)
++
++
++add_executable (coo_iluk.exe mainILUKcoo.c)
++add_executable (coo_arms.exe mainARMScoo.c)
++add_executable (coo_ilut.exe mainILUTcoo.c)
++add_executable (coo_vbiluk.exe mainVBILUKcoo.c)
++add_executable (coo_vbilut.exe mainVBILUTcoo.c)
++
++
++# Link the executable to the ITSOL library.
++target_link_libraries (coo_iluk.exe itsol lapack blas m)
++target_link_libraries (coo_arms.exe itsol lapack blas m)
++target_link_libraries (coo_ilut.exe itsol lapack blas m)
++target_link_libraries (coo_vbiluk.exe itsol lapack blas m)
++target_link_libraries (coo_vbilut.exe itsol lapack blas m)
++
++
++install(TARGETS coo_iluk.exe coo_arms.exe coo_ilut.exe coo_vbiluk.exe coo_vbilut.exe
++ DESTINATION share/itsol/tests/TESTS_COO
++)
+Index: itsol-1.0.0/TESTS_HB/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ itsol-1.0.0/TESTS_HB/CMakeLists.txt 2010-04-02 21:21:04.000000000 -0400
+@@ -0,0 +1,27 @@
++cmake_minimum_required(VERSION 2.6)
++
++
++set(CMAKE_Fortran_FLAGS " -c -g -Wall -ffixed-line-length-none -ffree-line-length-none")
++
++
++# Make sure the linker can find the ITSOL library once it is built.
++link_directories (${ITSOL_BINARY_DIR}/LIB)
++
++
++add_executable (hb_iluk.exe mainILUKhb.c)
++add_executable (hb_arms.exe mainARMShb.c)
++add_executable (hb_ilut.exe mainILUThb.c)
++add_executable (hb_vbiluk.exe mainVBILUKhb.c)
++add_executable (hb_vbilut.exe mainVBILUThb.c)
++
++
++# Link the executable to the ITSOL library.
++target_link_libraries (hb_iluk.exe itsol lapack blas gfortran m)
++target_link_libraries (hb_arms.exe itsol lapack blas gfortran m)
++target_link_libraries (hb_ilut.exe itsol lapack blas gfortran m)
++target_link_libraries (hb_vbiluk.exe itsol lapack blas gfortran m)
++target_link_libraries (hb_vbilut.exe itsol lapack blas gfortran m)
++
++install(TARGETS hb_iluk.exe hb_arms.exe hb_ilut.exe hb_vbiluk.exe hb_vbilut.exe
++ DESTINATION share/itsol/tests/TESTS_HB
++)
+Index: itsol-1.0.0/TESTS_COO/makefile
+===================================================================
+--- itsol-1.0.0.orig/TESTS_COO/makefile 2010-04-02 21:13:25.000000000 -0400
++++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+@@ -1,49 +0,0 @@
+-# this makefile is for LINUX machines only
+-#
+-
+-LINKS = -L../ -litsol \
+- -L/project/scicom/scicom00/SOFT/lib/Linux32 -llapack \
+- -L/project/scicom/scicom00/SOFT/lib/linux32 -lblas
+-
+-##-L/project/scicom/scicom00/SOFT/lib/linux/linux32 -llapack_LINUX \
+-## -L/project/scicom/scicom00/SOFT/lib/linux/linux32 -lblas_LINUX
+-#
+-FC = f77
+-FCFLAGS = -c -g -Wall
+-CC = cc
+-CCFLAGS = -c -DLINUX -Wall -O3
+-LD = f77
+-LDFLAGS =
+-#
+-# clear list of default suffixes, and declare default suffixes
+-.SUFFIXES:
+-.SUFFIXES: .f .c .o
+-# default rule to make .o files from .f files
+-.f.o : ; $(FC) $(FCFLAGS) $*.f -o $*.o
+-.c.o : ; $(CC) $(CCFLAGS) $*.c -o $*.o
+-#
+-
+-#all: arms.ex iluk.ex ilut.ex iluc.ex vbiluk.ex vbilut.ex
+-
+-all: arms.ex iluk.ex ilut.ex vbiluk.ex vbilut.ex
+-
+-arms.ex: mainARMScoo.o
+- $(LD) $(LDFLAGS) mainARMScoo.o $(LINKS) -o arms.ex
+-
+-iluk.ex: mainILUKcoo.o
+- $(LD) $(LDFLAGS) mainILUKcoo.o $(LINKS) -o iluk.ex
+-
+-ilut.ex: mainILUTcoo.o
+- $(LD) $(LDFLAGS) mainILUTcoo.o $(LINKS) -o ilut.ex
+-
+-##iluc.ex: mainILUCcoo.o
+-## $(LD) $(LDFLAGS) mainILUCcoo.o $(LINKS) -o iluc.ex
+-
+-vbiluk.ex: mainVBILUKcoo.o
+- $(LD) $(LDFLAGS) mainVBILUKcoo.o $(LINKS) -o vbiluk.ex
+-
+-vbilut.ex: mainVBILUTcoo.o
+- $(LD) $(LDFLAGS) mainVBILUTcoo.o $(LINKS) -o vbilut.ex
+-#
+-clean :
+- rm -f *.o *.ex *~ core *.cache OUT/*
+Index: itsol-1.0.0/TESTS_HB/makefile
+===================================================================
+--- itsol-1.0.0.orig/TESTS_HB/makefile 2010-04-02 21:13:25.000000000 -0400
++++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+@@ -1,47 +0,0 @@
+-# this makefile is for LINUX machines only
+-#
+-
+-LINKS = -L../ -litsol \
+- -L/project/scicom/scicom00/SOFT/lib/Linux32 -llapack \
+- -L/project/scicom/scicom00/SOFT/lib/linux32 -lblas
+-
+-#
+-FC = f77
+-FCFLAGS = -c -g -Wall
+-CC = cc
+-CCFLAGS = -c -g -DLINUX -Wall -O3
+-LD = f77
+-LDFLAGS =
+-#
+-# clear list of default suffixes, and declare default suffixes
+-.SUFFIXES:
+-.SUFFIXES: .f .c .o
+-# default rule to make .o files from .f files
+-.f.o : ; $(FC) $(FCFLAGS) $*.f -o $*.o
+-.c.o : ; $(CC) $(CCFLAGS) $*.c -o $*.o
+-#
+-
+-#all: arms.ex iluk.ex ilut.ex iluc.ex vbiluk.ex vbilut.ex
+-
+-all: arms.ex iluk.ex ilut.ex vbiluk.ex vbilut.ex
+-
+-arms.ex: mainARMShb.o
+- $(LD) $(LDFLAGS) mainARMShb.o $(LINKS) -o arms.ex
+-
+-iluk.ex: mainILUKhb.o
+- $(LD) $(LDFLAGS) mainILUKhb.o $(LINKS) -o iluk.ex
+-
+-ilut.ex: mainILUThb.o
+- $(LD) $(LDFLAGS) mainILUThb.o $(LINKS) -o ilut.ex
+-
+-## iluc.ex: mainILUChb.o
+-## $(LD) $(LDFLAGS) mainILUChb.o $(LINKS) -o iluc.ex
+-
+-vbiluk.ex: mainVBILUKhb.o
+- $(LD) $(LDFLAGS) mainVBILUKhb.o $(LINKS) -o vbiluk.ex
+-
+-vbilut.ex: mainVBILUThb.o
+- $(LD) $(LDFLAGS) mainVBILUThb.o $(LINKS) -o vbilut.ex
+-#
+-clean :
+- rm -f *.o *.ex *~ core *.cache OUT/*
+\ No newline at end of file
+Index: itsol-1.0.0/makefile
+===================================================================
+--- itsol-1.0.0.orig/makefile 2010-04-02 21:13:25.000000000 -0400
++++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+@@ -1,38 +0,0 @@
+-# this makefile is for LINUX machines only
+-# ILUC removed..
+-OBJ = fgmr.o iluk.o ilut.o arms2.o vbiluk.o vbilut.o auxill.o
+-
+-LIB = ./LIB/PQ.o ./LIB/piluNEW.o ./LIB/indsetC.o \
+- ./LIB/sets.o ./LIB/tools.o ./LIB/systimer.o ./LIB/misc.o \
+- ./LIB/MatOps.o ./LIB/ilutpC.o ./LIB/setblks.o ./LIB/svdInvC.o
+-
+-AR = ar -rcv
+-
+-#
+-FC = f77
+-FCFLAGS = -c -g -Wall
+-CC = gcc
+-CCFLAGS = -c -g -DLINUX -Wall -O3
+-LD = f77
+-LDFLAGS =
+-#
+-# clear list of default suffixes, and declare default suffixes
+-.SUFFIXES:
+-.SUFFIXES: .f .c .o
+-# default rule to make .o files from .f files
+-.f.o : ; $(FC) $(FCFLAGS) $*.f -o $*.o
+-.c.o : ; $(CC) $(CCFLAGS) $*.c -o $*.o
+-#
+-
+-lib libitsol.a: $(OBJ) $(LIB)
+- $(AR) libitsol.a $(OBJ) $(LIB)
+-## ranlib libitsol.a
+-
+-#
+-clean :
+- rm -f ${OBJ} *.o *.ex *~ core *.cache ${LIB} LIB/*~ LIB/*.cache OUT/*
+-
+-cleanall :
+- rm -f ${OBJ} *.o *.ex *.a *.cache *~ core ${LIB} \
+- LIB/*~ LIB/*.cache OUT/* TESTS_COO/*.o TESTS_COO/*.ex \
+- TESTS_HB/*.o TESTS_HB/*.ex
+Index: itsol-1.0.0/LIB/PQ.c
+===================================================================
+--- itsol-1.0.0.orig/LIB/PQ.c 2010-04-02 21:13:25.000000000 -0400
++++ itsol-1.0.0/LIB/PQ.c 2010-04-02 21:13:25.000000000 -0400
+@@ -126,216 +126,6 @@
+ |-----end-of-indsetPQ--------------------------------------------------
+ |--------------------------------------------------------------------*/
+
+-int add2is(int *last, int nod, int *iord, int *riord)
+-{
+-/*----------------------------------------------------------------------
+-| adds element nod to independent set
+-|---------------------------------------------------------------------*/
+- (*last)++;
+- iord[nod] = *last;
+- riord[*last] = nod;
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|---- end of add2is ---------------------------------------------------
+-|--------------------------------------------------------------------*/
+-int add2com(int *nback, int nod, int *iord, int *riord)
+-{
+-/*----------------------------------------------------------------------
+-| adds element nod to independent set
+-|---------------------------------------------------------------------*/
+- iord[nod] = *nback;
+- riord[*nback] = nod;
+- (*nback)--;
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|---- end of add2com --------------------------------------------------
+-|--------------------------------------------------------------------*/
+-int indsetC(csptr mat, int bsize, int *iord, int *nnod, double tol)
+-{
+-/*---------------------------------------------------------------------
+-| greedy algorithm for independent set ordering --
+-|----------------------------------------------------------------------
+-| Input parameters:
+-| -----------------
+-| (mat) = matrix in SpaFmt format
+-|
+-| bsize = integer (input) the target size of each block.
+-| each block is of size >= bsize.
+-|
+-| w = weight factors for the selection of the elements in the
+-| independent set. If w(i) is small i will be left for the
+-| vertex cover set.
+-|
+-| tol = a tolerance for excluding a row from independent set.
+-|
+-| Output parameters:
+-| ------------------
+-| iord = permutation array corresponding to the independent set
+-| ordering. Row number i will become row number iord[i] in
+-| permuted matrix.
+-|
+-| nnod = (output) number of elements in the independent set.
+-|
+-|-----------------------------------------------------------------------
+-| the algorithm searches nodes in lexicographic order and groups
+-| the (BSIZE-1) nearest nodes of the current to form a block of
+-| size BSIZE. The current algorithm does not use values of the matrix.
+-|---------------------------------------------------------------------*/
+-/* local variables */
+- int nod, jcount, lastlev, begin, last0, last, nback, mid,
+- j1, j2, jcol, inod, jnod, j, k, jcount0, begin0, *rowj;
+- int prog, n=mat->n, *riord;
+- double *w;
+- csptr matT,gmat;
+-
+-/*-----------------------------------------------------------------------*/
+- riord = (int *) Malloc(n*sizeof(int), "indsetC:1" );
+- w = (double *) Malloc(n*sizeof(double), "indsetC:2" );
+- matT = (csptr) Malloc(sizeof(SparMat), "indsetC:3" );
+-/* call weights to compute the weights for input matrix.. */
+- setupCS(matT, mat->n,1);
+- SparTran(mat, matT, 1, 0);
+- SparTran(matT, mat, 1, 1);
+- weightsC(mat, w);
+-/*----------------------------------------------------------------------
+-| scan all nodes first to eliminate those not satisfying DD criterion
+-+----------------------------------------------------------------------*/
+- nback = n-1;
+- nod = 0;
+- for(j=0; j<n; j++)
+- iord[j] = -1;
+- for(j=0; j<n; j++) {
+- if (w[j] < tol) {
+- add2com(&nback, j, iord, riord);
+- nod++;
+- }
+- }
+- last = -1;
+- for (nod=0; nod<n; nod++) {
+- while (iord[nod] != -1) {
+- if (++nod >= mat->n) goto label50;
+- }
+-/*-------------------- initialize level-set - contains nod (only)*/
+- add2is(&last, nod, iord, riord);
+- begin = last;
+- begin0 = begin;
+- lastlev = begin;
+- jcount = 1;
+-/*----------------------------------------------------------------------
+-| put all the nearest neighbor nodes of the current node into
+-| the block until the number is BSIZE.
+-|---------------------------------------------------------------------*/
+- prog = 1;
+- while (jcount < bsize && prog) {
+-/*-------------------- traverse all the current level-set */
+- last0 = last;
+- jcount0 = jcount;
+- for (inod=begin; inod<=last0; inod++) {
+- jnod = riord[inod];
+-/*-------------------- This assumes A is not symmetric. */
+- gmat = mat;
+- for (k=0; k<2; k++) {
+- rowj = gmat->ja[jnod];
+- for (j=0; j<gmat->nzcount[jnod]; j++) {
+- jcol = rowj[j];
+- if (iord[jcol] == -1 ) {
+- add2is(&last, jcol, iord, riord);
+- jcount++;
+- }
+- }
+- gmat = matT;
+- }
+- }
+- prog = jcount > jcount0 ? 1 : 0;
+- lastlev = begin;
+- begin = last0+1;
+- }
+-/*-----------------------------------------------------------------------
+-| the neighbors of elements of last level go to the complement
+-| gmat loop over original matrix and its transpose
+-+-----------------------------------------------------------------------*/
+- gmat = mat;
+- for (k=0; k<2; k++) {
+- for (inod=lastlev; inod<=last; inod++) {
+- jnod = riord[inod];
+- rowj = gmat->ja[jnod];
+- for (j=0; j<gmat->nzcount[jnod]; j++){
+- jcol = rowj[j];
+- if (iord[jcol] == -1)
+- add2com(&nback, jcol, iord, riord);
+- }
+- }
+- gmat = matT;
+- }
+-/* reverse ordering for this level */
+- mid = (begin0+last) / 2;
+- for (inod=begin0; inod<=mid; inod++) {
+- j = last - inod + begin0;
+- jnod = riord[inod];
+- riord[inod] = riord[j];
+- riord[j] = jnod;
+- }
+- }
+-/*--------------------------------------------------
+-| end-main-loop
+-|-------------------------------------------------*/
+-/*-------------------- relabel nodes of vertex cover */
+-label50:
+- *nnod = last;
+- j1 = *nnod;
+- for (j2=*nnod+1; j2<n; j2++) {
+- if (iord[riord[j2]] > -1) {
+- if (++j1 != j2) {
+- j = riord[j2];
+- riord[j2] = riord[j1];
+- riord[j1] = j;
+- }
+- }
+- }
+-/*-------------------- obtain reverse permutation array */
+- for (j=0; j<n; j++)
+- iord[riord[j]] = j;
+- (*nnod)++;
+- cleanCS(matT);
+- free(riord);
+- free(w);
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|-----end-of-indsetC---------------------------------------------------
+-|--------------------------------------------------------------------*/
+-int weightsC(csptr mat, double *w)
+-{
+-/*---------------------------------------------------------------------
+-| defines weights based on diagonal dominance ratios
+-|--------------------------------------------------------------------*/
+- int irow, k, n=mat->n, *kj, kz;
+- double tdia, wmax=0.0, tnorm, *kr;
+- for (irow=0; irow<n; irow++) {
+- kz = mat->nzcount[irow];
+- kr = mat->ma[irow];
+- kj = mat->ja[irow];
+- tnorm = 0.0;
+- tdia = 0.0;
+- for (k=0; k<kz; k++) {
+- if (kj[k] == irow) tdia = fabs(kr[k]);
+- tnorm += fabs(kr[k]);
+- }
+- if (tnorm > 0.0)
+- tnorm = tdia / tnorm;
+- w[irow] = tnorm;
+- if (tnorm > wmax) wmax = tnorm;
+- }
+- for (irow=0; irow<n; irow++)
+- w[irow] = w[irow]/wmax;
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|---- end of weightsC -------------------------------------------------
+-|--------------------------------------------------------------------*/
+-
+ int preSel(csptr mat, int *icor, int *jcor, int job, double tol, int *count)
+ {
+ /*---------------------------------------------------------------------
+@@ -422,3 +212,48 @@
+ |---- end of preSel ---------------------------------------------------
+ |--------------------------------------------------------------------*/
+
++
++// adds element nod to independent set
++int add2is(int *last, int nod, int *iord, int *riord)
++{
++ (*last)++;
++ iord[nod] = *last;
++ riord[*last] = nod;
++ return 0;
++}
++
++// adds element nod to independent set
++int add2com(int *nback, int nod, int *iord, int *riord)
++{
++ iord[nod] = *nback;
++ riord[*nback] = nod;
++ (*nback)--;
++ return 0;
++}
++
++// defines weights based on diagonal dominance ratios
++int weightsC(csptr mat, double *w)
++{
++ int irow, k, n=mat->n, *kj, kz;
++ double tdia, wmax=0.0, tnorm, *kr;
++ for (irow=0; irow<n; irow++) {
++ kz = mat->nzcount[irow];
++ kr = mat->ma[irow];
++ kj = mat->ja[irow];
++ tnorm = 0.0;
++ tdia = 0.0;
++ for (k=0; k<kz; k++) {
++ if (kj[k] == irow) tdia = fabs(kr[k]);
++ tnorm += fabs(kr[k]);
++ }
++ if (tnorm > 0.0)
++ tnorm = tdia / tnorm;
++ w[irow] = tnorm;
++ if (tnorm > wmax) wmax = tnorm;
++ }
++ for (irow=0; irow<n; irow++)
++ w[irow] = w[irow]/wmax;
++ return 0;
++}
++
++
+Index: itsol-1.0.0/LIB/indsetC.c
+===================================================================
+--- itsol-1.0.0.orig/LIB/indsetC.c 2010-04-02 21:13:25.000000000 -0400
++++ itsol-1.0.0/LIB/indsetC.c 2010-04-02 21:13:25.000000000 -0400
+@@ -1,4 +1,4 @@
+-#include <stdio.h>
++ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <math.h>
+@@ -7,32 +7,7 @@
+
+ void *Malloc( int, char * );
+
+-int add2is(int *last, int nod, int *iord, int *riord)
+-{
+-/*----------------------------------------------------------------------
+-| adds element nod to independent set
+-|---------------------------------------------------------------------*/
+- (*last)++;
+- iord[nod] = *last;
+- riord[*last] = nod;
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|---- end of add2is ---------------------------------------------------
+-|--------------------------------------------------------------------*/
+-int add2com(int *nback, int nod, int *iord, int *riord)
+-{
+-/*----------------------------------------------------------------------
+-| adds element nod to independent set
+-|---------------------------------------------------------------------*/
+- iord[nod] = *nback;
+- riord[*nback] = nod;
+- (*nback)--;
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|---- end of add2com --------------------------------------------------
+-|--------------------------------------------------------------------*/
++
+ int indsetC(csptr mat, int bsize, int *iord, int *nnod, double tol)
+ {
+ /*---------------------------------------------------------------------
+@@ -70,7 +45,7 @@
+ int prog, n=mat->n, *riord;
+ double *w;
+ csptr matT,gmat;
+- int weightsC(csptr, double *);
++
+ /*-----------------------------------------------------------------------*/
+ riord = (int *) Malloc(n*sizeof(int), "indsetC:1" );
+ w = (double *) Malloc(n*sizeof(double), "indsetC:2" );
+@@ -187,32 +162,3 @@
+ /*---------------------------------------------------------------------
+ |-----end-of-indsetC---------------------------------------------------
+ |--------------------------------------------------------------------*/
+-int weightsC(csptr mat, double *w)
+-{
+-/*---------------------------------------------------------------------
+-| defines weights based on diagonal dominance ratios
+-|--------------------------------------------------------------------*/
+- int irow, k, n=mat->n, *kj, kz;
+- double tdia, wmax=0.0, tnorm, *kr;
+- for (irow=0; irow<n; irow++) {
+- kz = mat->nzcount[irow];
+- kr = mat->ma[irow];
+- kj = mat->ja[irow];
+- tnorm = 0.0;
+- tdia = 0.0;
+- for (k=0; k<kz; k++) {
+- if (kj[k] == irow) tdia = fabs(kr[k]);
+- tnorm += fabs(kr[k]);
+- }
+- if (tnorm > 0.0)
+- tnorm = tdia / tnorm;
+- w[irow] = tnorm;
+- if (tnorm > wmax) wmax = tnorm;
+- }
+- for (irow=0; irow<n; irow++)
+- w[irow] = w[irow]/wmax;
+- return 0;
+-}
+-/*---------------------------------------------------------------------
+-|---- end of weightsC -------------------------------------------------
+-|--------------------------------------------------------------------*/
+Index: itsol-1.0.0/vbiluk.c
+===================================================================
+--- itsol-1.0.0.orig/vbiluk.c 2010-04-02 21:13:25.000000000 -0400
++++ itsol-1.0.0/vbiluk.c 2010-04-02 21:13:25.000000000 -0400
+@@ -27,7 +27,6 @@
+ int lofC( int lofM, vbsptr vbmat, vbiluptr lu, FILE *fp );
+ int setupVBILU(vbiluptr lu, int n, int *bsz);
+ void copyBData(int m, int n, BData dst, BData src, int isig);
+-int lofC( int lofM, vbsptr vbmat, vbiluptr lu, FILE *fp );
+ /*-------------------- END of protos */
+
+
+Index: itsol-1.0.0/iluk.c
+===================================================================
+--- itsol-1.0.0.orig/iluk.c 2010-04-02 21:13:25.000000000 -0400
++++ itsol-1.0.0/iluk.c 2010-04-02 21:13:25.000000000 -0400
+@@ -14,7 +14,7 @@
+ #endif
+
+ /*--------------------protos */
+-int lofC( int lofM, csptr csmat, iluptr lu, FILE *fp );
++int iluk_lofC( int lofM, csptr csmat, iluptr lu, FILE *fp );
+ /*--------------------end protos */
+
+ int ilukC( int lofM, csptr csmat, iluptr lu, FILE *fp )
+@@ -62,7 +62,7 @@
+ D = lu->D;
+
+ /* symbolic factorization to calculate level of fill index arrays */
+- if( ( ierr = lofC( lofM, csmat, lu, fp ) ) != 0 ) {
++ if( ( ierr = iluk_lofC( lofM, csmat, lu, fp ) ) != 0 ) {
+ fprintf( fp, "Error: lofC\n" );
+ return -1;
+ }
+@@ -150,7 +150,7 @@
+ return 0;
+ }
+
+-int lofC( int lofM, csptr csmat, iluptr lu, FILE *fp )
++int iluk_lofC( int lofM, csptr csmat, iluptr lu, FILE *fp )
+ {
+ /*--------------------------------------------------------------------
+ * symbolic ilu factorization to calculate structure of ilu matrix
+Index: itsol-1.0.0/LIB/protos.h
+===================================================================
+--- itsol-1.0.0.orig/LIB/protos.h 2010-04-02 21:13:25.000000000 -0400
++++ itsol-1.0.0/LIB/protos.h 2010-04-02 21:13:25.000000000 -0400
+@@ -1,6 +1,7 @@
+ #ifndef __ITSOL_INCLUDED_PROTOS_H__
+ #define __ITSOL_INCLUDED_PROTOS_H__
+
++#include <math.h>
+ #include <stdio.h>
+ #include "globheads.h"
+
Added: packages/itsol/tags/1.0.0-2/debian/patches/series
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/patches/series?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/patches/series (added)
+++ packages/itsol/tags/1.0.0-2/debian/patches/series Thu Sep 22 02:39:29 2011
@@ -1,0 +1,1 @@
+20_preprocessor.diff
Added: packages/itsol/tags/1.0.0-2/debian/rules
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/rules?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/rules (added)
+++ packages/itsol/tags/1.0.0-2/debian/rules Thu Sep 22 02:39:29 2011
@@ -1,0 +1,128 @@
+#!/usr/bin/make -f
+
+PACKAGE=itsol
+
+DEB_SOURCE_PACKAGE:=$(PACKAGE)
+include /usr/share/quilt/quilt.make
+
+STATIC_BUILD_PATH = DEB_build_static
+SHARED_BUILD_PATH = DEB_build_shared
+
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+get-orig-source:
+ . debian/get-orig-source
+
+CMAKE_FLAGS = -DCMAKE_INSTALL_PREFIX:PATH=/usr \
+ -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" \
+ -DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed" \
+ -DCMAKE_SKIP_RPATH:BOOL=ON \
+ -DBUILD_TESTING:BOOL=OFF
+
+
+configure: configure-stamp
+configure-stamp: $(QUILT_STAMPFN)
+ dh_testdir
+
+ if [ ! -d $(STATIC_BUILD_PATH) ]; then mkdir $(STATIC_BUILD_PATH); fi
+ cd $(STATIC_BUILD_PATH) \
+ && cmake .. $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=OFF
+ cd $(STATIC_BUILD_PATH) \
+ && cmake .. $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=OFF
+
+ if [ ! -d $(SHARED_BUILD_PATH) ]; then mkdir $(SHARED_BUILD_PATH); fi
+ cd $(SHARED_BUILD_PATH) \
+ && cmake $(CURDIR) $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=ON
+ cd $(SHARED_BUILD_PATH) \
+ && cmake $(CURDIR) $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=ON
+
+ touch $@
+
+
+build: build-stamp
+build-stamp: configure-stamp
+ dh_testdir
+
+ # build static libs
+ $(MAKE) $(JOBS) -C $(STATIC_BUILD_PATH)
+
+ # build shared libs and binaries
+ $(MAKE) $(JOBS) -C $(SHARED_BUILD_PATH)
+
+ # build tests
+# cd TESTS_HB \
+# && make all
+# cd TESTS_COO \
+# && make all
+
+
+ # run tests
+# cd TESTS_HB \
+# && chmod 755 runall
+# cd TESTS_HB \
+# && ./runall
+# cd TESTS_COO \
+# && ./runall
+
+
+
+ touch $@
+
+clean: clean-patched unpatch
+
+clean-patched:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp configure-stamp
+
+ rm -rf $(STATIC_BUILD_PATH)
+ rm -rf $(SHARED_BUILD_PATH)
+
+ dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+
+ # Add here commands to install the package into debian/tmp
+ $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install -C $(STATIC_BUILD_PATH)
+ $(MAKE) DESTDIR=$(CURDIR)/debian/tmp/shared install -C $(SHARED_BUILD_PATH)
+ dh_install -plibitsol-dev usr/lib/libitsol.a usr/lib
+ dh_install -plibitsol-dev LIB/globheads.h usr/include/itsol
+ dh_install -plibitsol-dev LIB/defs.h usr/include/itsol
+ dh_install -plibitsol-dev LIB/protos.h usr/include/itsol
+ dh_install -plibitsol-dev ios.h usr/include/itsol
+ dh_install -plibitsol-dev shared/usr/lib/libitsol.so usr/lib
+ dh_install -plibitsol1 shared/usr/lib/libitsol.so.1 usr/lib
+ dh_install -plibitsol1 shared/usr/lib/libitsol.so.1.0.0 usr/lib
+
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+ dh_installman
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
Propchange: packages/itsol/tags/1.0.0-2/debian/rules
------------------------------------------------------------------------------
svn:executable = *
Added: packages/itsol/tags/1.0.0-2/debian/source/format
URL: http://svn.debian.org/wsvn/debian-science/packages/itsol/tags/1.0.0-2/debian/source/format?rev=43916&op=file
==============================================================================
--- packages/itsol/tags/1.0.0-2/debian/source/format (added)
+++ packages/itsol/tags/1.0.0-2/debian/source/format Thu Sep 22 02:39:29 2011
@@ -1,0 +1,1 @@
+3.0 (quilt)
More information about the debian-science-commits
mailing list