r38660 - in /packages/minpack: ./ trunk/ trunk/debian/

sylvestre at users.alioth.debian.org sylvestre at users.alioth.debian.org
Wed Aug 3 20:35:38 UTC 2011


Author: sylvestre
Date: Wed Aug  3 20:35:37 2011
New Revision: 38660

URL: http://svn.debian.org/wsvn/debian-science/?sc=1&rev=38660
Log:
adopt of minpack in debian science

Added:
    packages/minpack/
    packages/minpack/trunk/
    packages/minpack/trunk/debian/   (with props)
    packages/minpack/trunk/debian/Makefile
    packages/minpack/trunk/debian/README.Debian
    packages/minpack/trunk/debian/changelog
    packages/minpack/trunk/debian/compat
    packages/minpack/trunk/debian/control
    packages/minpack/trunk/debian/copyright
    packages/minpack/trunk/debian/dirs
    packages/minpack/trunk/debian/doc-base.minpack-dev
    packages/minpack/trunk/debian/docs
    packages/minpack/trunk/debian/extract
    packages/minpack/trunk/debian/hybrd1_.3
    packages/minpack/trunk/debian/hybrd_.3
    packages/minpack/trunk/debian/hybrj1_.3
    packages/minpack/trunk/debian/hybrj_.3
    packages/minpack/trunk/debian/libminpack1.dirs
    packages/minpack/trunk/debian/libminpack1.files
    packages/minpack/trunk/debian/lmder1_.3
    packages/minpack/trunk/debian/lmder_.3
    packages/minpack/trunk/debian/lmdif1_.3
    packages/minpack/trunk/debian/lmdif_.3
    packages/minpack/trunk/debian/lmstr1_.3
    packages/minpack/trunk/debian/lmstr_.3
    packages/minpack/trunk/debian/minpack-dev.dirs
    packages/minpack/trunk/debian/minpack-dev.files
    packages/minpack/trunk/debian/patch
    packages/minpack/trunk/debian/rules   (with props)
    packages/minpack/trunk/debian/tchkder.c
    packages/minpack/trunk/debian/thybrd.c
    packages/minpack/trunk/debian/thybrd1.c
    packages/minpack/trunk/debian/thybrj.c
    packages/minpack/trunk/debian/thybrj1.c
    packages/minpack/trunk/debian/tlmder.c
    packages/minpack/trunk/debian/tlmder1.c
    packages/minpack/trunk/debian/tlmdif.c
    packages/minpack/trunk/debian/tlmdif1.c
    packages/minpack/trunk/debian/tlmstr.c
    packages/minpack/trunk/debian/tlmstr1.c

Propchange: packages/minpack/trunk/debian/
------------------------------------------------------------------------------
    mergeWithUpstream = 1

Added: packages/minpack/trunk/debian/Makefile
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/Makefile?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/Makefile (added)
+++ packages/minpack/trunk/debian/Makefile Wed Aug  3 20:35:37 2011
@@ -1,0 +1,95 @@
+#!/usr/bin/make 
+
+# Execute this script to extract the examples from the MINPACK
+# documentation
+# (/usr/share/doc/minpack-dev/minpack-documentation.txt.gz) and
+# compile and run them.  It also extracts the numerical results from
+# the documentation and writes them to the file "documented".  You may
+# compare those results with those printed by this script.
+
+PGM= thybrd1 thybrd thybrj1 thybrj tlmder1 tlmder tlmstr1 tlmstr \
+	tlmdif1 tlmdif tchkder
+CPGM=$(patsubst t%,tc%,$(PGM))	# tchybrd1 ...
+SRC=$(addsuffix .f,$(PGM))	# thybrd1.f ...
+CSRC=$(addsuffix .c,$(PGM))	# thybrd1.c ...
+
+all: ctest ftest documented
+
+ctest: ${CPGM}
+	echo "---  C driver programs  ---"
+	for x in ${CPGM}; do echo $$x; ./$$x; done
+
+ftest: ${PGM} 
+	echo "---  FORTRAN driver programs  ---"
+	for x in ${PGM}; do echo $$x; ./$$x; done
+
+${SRC} documented: /usr/share/doc/minpack-dev/minpack-documentation.txt.gz
+	rm -f documented
+	zcat $< | awk  '						\
+	/DRIVER FOR [A-Z1]+ EXAMPLE/{					\
+	    pgm=tolower($$4);						\
+	    oname="t" pgm ".f";						\
+	    $$0 = substr($$0,3);					\
+	    print >oname;						\
+	    do {							\
+		getline; $$0 = substr($$0,3);				\
+		if (!/^ +Page$$/) print >>oname;			\
+	    }								\
+	    while (!/LAST CARD OF SUBROUTINE FCN/);			\
+	    getline; $$0 = substr($$0,3); print >>oname;		\
+	    getline; $$0 = substr($$0,3); print >>oname;		\
+	}								\
+	/may be slightly different/||/machine dependent/{		\
+	    print pgm >>"documented";					\
+	    while (getline) {						\
+		$$0 = substr($$0,3);					\
+		if (/Documentation/) break;				\
+		if (!/^ +Page$$/ && !/^ *$$/) print >>"documented";	\
+	    }								\
+	}'
+
+tchkder: tchkder.f
+	gfortran -o $@ $< -lminpack
+thybrd: thybrd.f
+	gfortran -o $@ $< -lminpack
+thybrd1: thybrd1.f
+	gfortran -o $@ $< -lminpack
+thybrj: thybrj.f
+	gfortran -o $@ $< -lminpack
+thybrj1: thybrj1.f
+	gfortran -o $@ $< -lminpack
+tlmder: tlmder.f
+	gfortran -o $@ $< -lminpack
+tlmder1: tlmder1.f
+	gfortran -o $@ $< -lminpack
+tlmdif: tlmdif.f
+	gfortran -o $@ $< -lminpack
+tlmdif1: tlmdif1.f
+	gfortran -o $@ $< -lminpack
+tlmstr: tlmstr.f
+	gfortran -o $@ $< -lminpack
+tlmstr1: tlmstr1.f
+	gfortran -o $@ $< -lminpack
+
+tcchkder: tchkder.c					
+	gfortran -o $@ $< -lminpack -lm
+tchybrd: thybrd.c					
+	gfortran -o $@ $< -lminpack -lm
+tchybrd1: thybrd1.c					
+	gfortran -o $@ $< -lminpack -lm
+tchybrj: thybrj.c					
+	gfortran -o $@ $< -lminpack -lm
+tchybrj1: thybrj1.c					
+	gfortran -o $@ $< -lminpack -lm
+tclmder: tlmder.c					
+	gfortran -o $@ $< -lminpack -lm
+tclmder1: tlmder1.c					
+	gfortran -o $@ $< -lminpack -lm
+tclmdif: tlmdif.c
+	gfortran -o $@ $< -lminpack -lm
+tclmdif1: tlmdif1.c
+	gfortran -o $@ $< -lminpack -lm
+tclmstr: tlmstr.c
+	gfortran -o $@ $< -lminpack -lm
+tclmstr1: tlmstr1.c
+	gfortran -o $@ $< -lminpack -lm

Added: packages/minpack/trunk/debian/README.Debian
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/README.Debian?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/README.Debian (added)
+++ packages/minpack/trunk/debian/README.Debian Wed Aug  3 20:35:37 2011
@@ -1,0 +1,20 @@
+minpack for Debian
+------------------
+
+These libraries are compiled from unchanged FORTRAN files downloaded
+from netlib.
+
+Since these are from FORTRAN files:
+
+ - Use g77 to compile programs to be linked against the library, even
+if only C files are being compiled.  (Otherwise the linker will not be
+able to find the needed functions from the FORTRAN library).
+
+ - When calling from C, all parameters must be pointers.
+
+ - Two dimensional arrays are stored by column rather than by row.
+
+For an explanation of how the programs work, see 
+/usr/share/doc/minpack-dev/minpack-documentation.txt
+
+ -- Jim Van Zandt <jrv at debian.org>, Fri, 22 Feb 2002 20:29:59 -0500

Added: packages/minpack/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/changelog?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/changelog (added)
+++ packages/minpack/trunk/debian/changelog Wed Aug  3 20:35:37 2011
@@ -1,0 +1,154 @@
+minpack (19961126+dfsg1-1) unstable; urgency=low
+
+  * Team upload.
+  * Correct repack of the archive
+  * Adopt package in the Debian Science team (Closes: #636413)
+  * Standards-Version updated to version 3.9.2
+  * Switch to dpkg-source 3.0 (quilt) format
+
+ -- Sylvestre Ledru <sylvestre at debian.org>  Wed, 03 Aug 2011 22:10:31 +0200
+
+minpack (19961126-16) unstable; urgency=low
+
+  * minpack.h: add guards for C++ compilers (thanks to Rene Wagner
+    <rw at nelianur.org>, Closes:Bug#527627)
+  * debian/control: bump version to 3.8.1 (no changes needed)
+
+ -- James R. Van Zandt <jrv at debian.org>  Sat, 23 May 2009 16:06:41 -0400
+
+minpack (19961126-15) unstable; urgency=low
+
+  * revise man page (thanks to Jörgen Tegner, jorgen.tegner at telia.com,
+    Closes:#510510)
+
+  * debian/Makefile: update selftest script to extract numerical results
+    from documentation.
+
+ -- James R. Van Zandt <jrv at debian.org>  Sat, 03 Jan 2009 09:58:26 -0500
+
+minpack (19961126-14) unstable; urgency=low
+
+  * recompile with gfortran 4.3.2 (Closes:#509278).  Update "missing"
+    script.
+
+  * debian/doc-base: move documentation to section Science/Mathematics, to
+    comply with new policy.
+  
+  * debian/rules: parse DEB_BUILD_OPTIONS
+  
+  * debian/control: bump policy version to 3.8.0
+
+ -- James R. Van Zandt <jrv at debian.org>  Sat, 20 Dec 2008 12:49:38 -0500
+
+minpack (19961126-13) unstable; urgency=low
+
+  * Replace copyright notice (thanks to Bernd Zeimetz <bzed at debian.org>,
+    closes:Bug#488299)
+    
+  * bumped policy version to 3.7.3 (no changes needed).
+  
+ -- James R. Van Zandt <jrv at debian.org>  Mon, 07 Jul 2008 09:23:08 -0400
+
+minpack (19961126-12) unstable; urgency=low
+
+  * switch to gfortran (thanks to Aurelien Jarno <aurel32 at debian.org>,
+    closes:Bug#430181)
+
+  * debian/rules: set DH_COMPAT in debian/compat, not in debian/rules
+
+  * debian/rules: catch errors in "make distclean"
+
+  * debian/control: Source-Version -> binary:Version
+
+ -- James R. Van Zandt <jrv at debian.org>  Mon, 16 Jul 2007 21:12:58 -0400
+
+minpack (19961126-11) unstable; urgency=low
+
+  * configure.in: don't require automake or autoconf (thanks to Emanuele
+    Rocca <ema at debian.org>, closes:bug#394475,#395984)
+
+ -- James R. Van Zandt <jrv at debian.org>  Mon, 30 Oct 2006 20:10:10 -0500
+
+minpack (19961126-10) unstable; urgency=low
+
+  * debian/control: don't depend on automake or autoconf (not needed for
+    building, closes:bug#394475)
+  * debian/Makefile: Note that the minpack documentation includes sample
+    numerical results.
+  * config.guess, config.sub: update to version of 2006-07-02
+
+ -- James R. Van Zandt <jrv at debian.org>  Sat, 28 Oct 2006 10:05:31 -0400
+
+minpack (19961126-9) unstable; urgency=low
+
+  * minpack.h: fix spelling fjac->fjec to match the code.
+  * lmstr_.3: fix parameter list to match the code (thanks to Dennis Furey
+    <dennis at basis.uklinux.net>, closes:Bug#385632)
+  * debian/rules: bumped debhelper compat level to 5
+  * debian/control: bumped debhelper depends version 5, added
+    ${misc:Depends}, bumped policy version to 3.7.2 (no changes needed).
+
+ -- James R. Van Zandt <jrv at debian.org>  Mon,  4 Sep 2006 10:35:53 -0400
+
+minpack (19961126-8) unstable; urgency=low
+
+  * rebuild with updated libtool (thanks to Aurelien Jarno
+    <aurel32 at debian.org>, closes:Bug#331450)
+
+ -- James R. Van Zandt <jrv at debian.org>  Sun, 16 Oct 2005 16:31:45 -0400
+
+minpack (19961126-7) unstable; urgency=low
+
+  * Fix package renaming (thanks to Aurelien Jarno <aurel32 at debian.org>,
+    closes:Bug#331449)
+
+ -- James R. Van Zandt <jrv at debian.org>  Sun, 16 Oct 2005 16:20:26 -0400
+
+minpack (19961126-6) unstable; urgency=low
+
+  * Move doc-base registration from math to Apps/Math (closes:Bug#329962)
+  * Makefile.am: Add to link flags: -D_REENTRANT,Wl,-z,defs per policy 10.2.
+  * debian/control: Policy version 3.6.2.  Changed runtime library
+    package name from "minpack1" to "libminpack1".
+
+ -- James R. Van Zandt <jrv at debian.org>  Sat, 24 Sep 2005 22:44:08 -0400
+
+minpack (19961126-5) unstable; urgency=low
+
+  * debian/copyright: add upstream author email (with his permission).
+  * /usr/share/doc/minpack-dev/examples/Makefile: C test programs generate
+    binaries with names starting "tc".
+
+ -- James R. Van Zandt <jrv at debian.org>  Wed, 17 Apr 2002 19:52:42 -0400
+
+minpack (19961126-4) unstable; urgency=low
+
+  * debian/control: build-depend on autoconf and automake
+    time. (closes:Bug#140689) 
+
+ -- James R. Van Zandt <jrv at debian.org>  Fri, 12 Apr 2002 20:41:46 -0400
+
+minpack (19961126-3) unstable; urgency=low
+
+  * debian/rules: upload the fixed version this time (closes:Bug#139552)
+
+ -- James R. Van Zandt <jrv at debian.org>  Fri, 29 Mar 2002 22:05:44 -0500
+
+minpack (19961126-2) unstable; urgency=low
+
+  * debian/rules: since configure is added by the patch, we have to
+    specifically give it execute permissions (closes:Bug#139552)
+
+ -- James R. Van Zandt <jrv at debian.org>  Sat, 23 Mar 2002 12:19:52 -0500
+
+minpack (19961126-1) unstable; urgency=low
+
+  * Initial Release.
+  * autoconfiscated, automakified, and libtoolized the sources.
+  * Added man pages for primary routines.
+  * Added C header files for primary routines.
+  * Reconstructed column 72 of ex/file06 from context.
+
+ -- James R. Van Zandt <jrv at debian.org>  Fri, 22 Feb 2002 20:29:59 -0500
+
+

Added: packages/minpack/trunk/debian/compat
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/compat?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/compat (added)
+++ packages/minpack/trunk/debian/compat Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+5

Added: packages/minpack/trunk/debian/control
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/control?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/control (added)
+++ packages/minpack/trunk/debian/control Wed Aug  3 20:35:37 2011
@@ -1,0 +1,41 @@
+Source: minpack
+Section: devel
+Priority: optional
+Maintainer: Debian Science Team <debian-science-maintainers at lists.alioth.debian.org>
+Build-Depends: debhelper (>> 5.0.0), gfortran, libtool
+Standards-Version: 3.9.2
+Homepage: http://www.netlib.org/minpack/
+Vcs-Svn: svn://svn.debian.org/svn/debian-science/packages/minpack/trunk/
+Vcs-Browser: http://svn.debian.org/viewsvn/debian-science/packages/minpack/trunk/
+
+Package: minpack-dev
+Architecture: any
+Depends: libminpack1 (= ${binary:Version}), libc6-dev,${misc:Depends}
+Description: nonlinear equations and nonlinear least squares static library
+ Minpack includes software for solving nonlinear equations and
+ nonlinear least squares problems.  Five algorithmic paths each include
+ a core subroutine and an easy-to-use driver.  The algorithms proceed
+ either from an analytic specification of the Jacobian matrix or
+ directly from the problem functions.  The paths include facilities for
+ systems of equations with a banded Jacobian matrix, for least squares
+ problems with a large amount of data, and for checking the consistency
+ of the Jacobian matrix with the functions.
+ .
+ This package provides the headers, man pages, examples, and static library.
+
+Package: libminpack1
+Architecture: any
+Depends: ${shlibs:Depends},${misc:Depends}
+Replaces: minpack1
+Conflicts: minpack1
+Description: nonlinear equations and nonlinear least squares shared library
+ Minpack includes software for solving nonlinear equations and
+ nonlinear least squares problems.  Five algorithmic paths each include
+ a core subroutine and an easy-to-use driver.  The algorithms proceed
+ either from an analytic specification of the Jacobian matrix or
+ directly from the problem functions.  The paths include facilities for
+ systems of equations with a banded Jacobian matrix, for least squares
+ problems with a large amount of data, and for checking the consistency
+ of the Jacobian matrix with the functions.
+ .
+ This package provides the shared library.

Added: packages/minpack/trunk/debian/copyright
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/copyright?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/copyright (added)
+++ packages/minpack/trunk/debian/copyright Wed Aug  3 20:35:37 2011
@@ -1,0 +1,69 @@
+This package was debianized by Jim Van Zandt <jrv at debian.org> on
+Fri, 22 Feb 2002.
+
+The source code was downloaded from http://ftp.netlib.org/minpack
+
+The copyright notice was downloaded from
+http://ftp.netlib.org/minpack/disclaimer
+
+Upstream Authors: 
+
+Jorge More' <more at mcs.anl.gov>, Burt Garbow, and Ken Hillstrom at
+Argonne National Laboratory.
+
+Copyright:
+
+Minpack Copyright Notice (1999) University of Chicago.  All rights reserved
+
+Redistribution and use in source and binary forms, with or
+without modification, are permitted provided that the
+following conditions are met:
+
+1. Redistributions of source code must retain the above
+copyright notice, this list of conditions and the following
+disclaimer.
+
+2. Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following
+disclaimer in the documentation and/or other materials
+provided with the distribution.
+
+3. The end-user documentation included with the
+redistribution, if any, must include the following
+acknowledgment:
+
+   "This product includes software developed by the
+   University of Chicago, as Operator of Argonne National
+   Laboratory.
+
+Alternately, this acknowledgment may appear in the software
+itself, if and wherever such third-party acknowledgments
+normally appear.
+
+4. WARRANTY DISCLAIMER. THE SOFTWARE IS SUPPLIED "AS IS"
+WITHOUT WARRANTY OF ANY KIND. THE COPYRIGHT HOLDER, THE
+UNITED STATES, THE UNITED STATES DEPARTMENT OF ENERGY, AND
+THEIR EMPLOYEES: (1) DISCLAIM ANY WARRANTIES, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE
+OR NON-INFRINGEMENT, (2) DO NOT ASSUME ANY LEGAL LIABILITY
+OR RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR
+USEFULNESS OF THE SOFTWARE, (3) DO NOT REPRESENT THAT USE OF
+THE SOFTWARE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS, (4)
+DO NOT WARRANT THAT THE SOFTWARE WILL FUNCTION
+UNINTERRUPTED, THAT IT IS ERROR-FREE OR THAT ANY ERRORS WILL
+BE CORRECTED.
+
+5. LIMITATION OF LIABILITY. IN NO EVENT WILL THE COPYRIGHT
+HOLDER, THE UNITED STATES, THE UNITED STATES DEPARTMENT OF
+ENERGY, OR THEIR EMPLOYEES: BE LIABLE FOR ANY INDIRECT,
+INCIDENTAL, CONSEQUENTIAL, SPECIAL OR PUNITIVE DAMAGES OF
+ANY KIND OR NATURE, INCLUDING BUT NOT LIMITED TO LOSS OF
+PROFITS OR LOSS OF DATA, FOR ANY REASON WHATSOEVER, WHETHER
+SUCH LIABILITY IS ASSERTED ON THE BASIS OF CONTRACT, TORT
+(INCLUDING NEGLIGENCE OR STRICT LIABILITY), OR OTHERWISE,
+EVEN IF ANY OF SAID PARTIES HAS BEEN WARNED OF THE
+POSSIBILITY OF SUCH LOSS OR DAMAGES.
+
+
+

Added: packages/minpack/trunk/debian/dirs
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/dirs?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/dirs (added)
+++ packages/minpack/trunk/debian/dirs Wed Aug  3 20:35:37 2011
@@ -1,0 +1,2 @@
+usr/bin
+usr/sbin

Added: packages/minpack/trunk/debian/doc-base.minpack-dev
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/doc-base.minpack-dev?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/doc-base.minpack-dev (added)
+++ packages/minpack/trunk/debian/doc-base.minpack-dev Wed Aug  3 20:35:37 2011
@@ -1,0 +1,10 @@
+Document: minpack
+Title: Documentation for MINPACK
+Author: Burton S. Garbow, Kenneth E. Hillstrom, Jorge J. More
+Abstract: This file documents MINPACK.  For each routine, it supplies
+ the calling sequence, a simple example and its expected output, and an
+ explanation of the numerical methods used.
+Section: Science/Mathematics
+
+Format: text
+Files: /usr/share/doc/minpack-dev/minpack-documentation.txt.gz

Added: packages/minpack/trunk/debian/docs
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/docs?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/docs (added)
+++ packages/minpack/trunk/debian/docs Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+readme

Added: packages/minpack/trunk/debian/extract
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/extract?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/extract (added)
+++ packages/minpack/trunk/debian/extract Wed Aug  3 20:35:37 2011
@@ -1,0 +1,17 @@
+#!/usr/bin/awk -f
+
+#	extract - extract example drivers from minpack documentation file
+
+/DRIVER FOR [A-Z1]+ EXAMPLE/{
+    pgm=tolower($4);
+    oname="t" pgm ".f";
+    $0 = substr($0,3);
+    print >oname;
+    do {
+	getline; $0 = substr($0,3);
+	if (!/^ +Page$/) print >>oname;
+    }	
+    while (!/LAST CARD OF SUBROUTINE FCN/);
+    getline; $0 = substr($0,3); print >>oname;
+    getline; $0 = substr($0,3); print >>oname;
+}

Added: packages/minpack/trunk/debian/hybrd1_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/hybrd1_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/hybrd1_.3 (added)
+++ packages/minpack/trunk/debian/hybrd1_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+.so man3/hybrd_.3

Added: packages/minpack/trunk/debian/hybrd_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/hybrd_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/hybrd_.3 (added)
+++ packages/minpack/trunk/debian/hybrd_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,292 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH HYBRD_ 3 "March 8, 2002" Minpack
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+hybrd_, hybrd1_ \- find a zero of a system of nonlinear function
+.SH SYNOPSIS
+.B #include <minpack.h>
+.sp
+.nh
+.ad l
+.HP 28
+.BI "void hybrd1_ ( "
+.BI "void (*" fcn ")("
+.BI "int *" n ,
+.BI "double *" x ,
+.br
+.BI "double *" fvec , 
+.BI "int *" iflag  ), 
+.RS 15
+.BI "int *" n , 
+.BI "double *" x , 
+.BI "double *" fvec , 
+.br
+.BI "double *" tol , 
+.BI "int *" info , 
+.BI "double *" wa , 
+.br
+.BI "int *" lwa );
+.RE
+.HP 27
+.BI "void hybrd_" 
+.BI "( void (*" fcn ")("
+.BI "int * " n , 
+.BI "double *" x , 
+.br
+.BI "double *" fvec , 
+.BI "int *" iflag ), 
+.RS 14
+.BI "int *" n , 
+.BI "double *" x , 
+.BI "double *" fvec , 
+.br
+.BI "double *" xtol , 
+.BI "int *" maxfev ,
+.BI "int *" ml , 
+.BI "int *" mu , 
+.br
+.BI "double *" epsfcn , 
+.BI "double *" diag , 
+.BI "int *" mode ,
+.BI "double *" factor , 
+.BI "int *" nprint , 
+.BI "int *" info , 
+.br
+.BI "int *" nfev ,
+.BI "double *" fjac , 
+.BI "int *" ldfjac , 
+.br
+.BI "double *" r , 
+.BI "int *" lr , 
+.BI "double *" qtf ,
+.br
+.BI "double *" wa1 , 
+.BI "double *" wa2 , 
+.BI "double *" wa3 , 
+.BI "double *" wa4 );
+.RE
+.hy
+.ad b
+.br
+.SH DESCRIPTION
+The purpose of \fBhybrd_\fP is to find a zero of a system of
+\fIn\fP nonlinear functions in \fIn\fP variables by a modification
+of the Powell hybrid method. The user must provide a
+subroutine which calculates the functions. The Jacobian is
+then calculated by a forward-difference approximation.
+.PP
+\fBhybrd1_\fP serves the same function but has a simplified calling
+sequence.
+.br
+.SS Language notes
+\fBhybrd_\fP and \fBhybrd1_\fP are written in FORTRAN. If calling from
+C, keep these points in mind:
+.TP
+Name mangling.
+With \fBg77\fP version 2.95 or 3.0, all the function names end in an
+underscore.  This may change with future versions of \fBg77\fP.
+.TP
+Compile with \fBg77\fP.
+Even if your program is all C code, you should link with \fBg77\fP
+so it will pull in the FORTRAN libraries automatically.  It's easiest
+just to use \fBg77\fP to do all the compiling.  (It handles C just fine.)
+.TP
+Call by reference.
+All function parameters must be pointers.
+.TP
+Column-major arrays.
+Suppose a function returns an array with 5 rows and 3 columns in an
+array \fIz\fP and in the call you have declared a leading dimension of
+7.  The FORTRAN and equivalent C references are:
+.sp
+.nf
+	z(1,1)		z[0]
+	z(2,1)		z[1]
+	z(5,1)		z[4]
+	z(1,2)		z[7]
+	z(1,3)		z[14]
+	z(i,j)		z[(i-1) + (j-1)*7]
+.fi
+.SS Parameters for both functions
+\fIfcn\fP is the name of the user-supplied subroutine which calculates
+the functions. In FORTRAN, \fIfcn\fP must be declared in an external
+statement in the user calling program, and should be written as
+follows:
+.sp
+.nf
+subroutine fcn(n,x,fvec,iflag)
+integer n,iflag
+double precision x(n),fvec(n)
+----------
+calculate the functions at x and
+return this vector in fvec.
+---------
+return
+end
+.fi
+.sp
+.sp
+In C, \fIfcn\fP should be written as follows:
+.sp
+.nf
+  void fcn(int n, double *x, double *fvec, int *iflag)
+  {
+    /* calculate the functions at x and
+       return this vector in fvec. */
+  }
+.fi
+.sp
+The value of \fIiflag\fP should not be changed by \fIfcn\fP unless
+the user wants to terminate execution of \fBhybrd_\fP.
+In this case set \fIiflag\fP to a negative integer.
+
+\fIn\fP is a positive integer input variable set to the number
+of functions and variables.
+
+\fIx\fP is an array of length \fIn\fP. On input \fIx\fP must contain
+an initial estimate of the solution vector. On output \fIx\fP
+contains the final estimate of the solution vector.
+
+\fIfvec\fP is an output array of length \fIn\fP which contains
+the functions evaluated at the output \fIx\fP.
+.br
+.SS Parameters for \fBhybrd1_\fP
+
+\fItol\fP is a nonnegative input variable. Termination occurs
+when the algorithm estimates that the relative error
+between \fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of \fIiflag\fP. See description of \fIfcn\fP. Otherwise,
+\fIinfo\fP is set as follows.
+
+\fIinfo\fP = 0   improper input parameters.
+
+\fIinfo\fP = 1   algorithm estimates that the relative error
+           between \fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP = 2   number of calls to fcn has reached or exceeded
+           200*(\fIn\fP+1).
+
+\fIinfo\fP = 3   \fItol\fP is too small. No further improvement in
+           the approximate solution \fIx\fP is possible.
+
+\fIinfo\fP = 4   iteration is not making good progress.
+
+\fIwa\fP is a work array of length \fIlwa\fP.
+
+\fIlwa\fP is a positive integer input variable not less than
+(\fIn\fP*(3*\fIn\fP+13))/2.
+.br
+.SS Parameters for \fBhybrd_\fP
+
+\fIxtol\fP is a nonnegative input variable. Termination
+occurs when the relative error between two consecutive
+iterates is at most \fIxtol\fP.
+
+\fImaxfev\fP is a positive integer input variable. Termination
+occurs when the number of calls to \fIfcn\fP is at least \fImaxfev\fP
+by the end of an iteration.
+
+\fIml\fP is a nonnegative integer input variable which specifies
+the number of subdiagonals within the band of the
+jacobian matrix. If the Jacobian is not banded, set
+\fIml\fP to at least \fIn\fP - 1.
+
+\fImu\fP is a nonnegative integer input variable which specifies
+the number of superdiagonals within the band of the
+jacobian matrix. If the jacobian is not banded, set
+mu to at least \fIn\fP - 1.
+
+\fIepsfcn\fP is an input variable used in determining a suitable
+step length for the forward-difference approximation. This
+approximation assumes that the relative errors in the
+functions are of the order of \fIepsfcn\fP. If \fIepsfcn\fP is less
+than the machine precision, it is assumed that the relative
+errors in the functions are of the order of the machine
+precision.
+
+\fIdiag\fP is an array of length \fIn\fP. If \fImode\fP = 1 (see
+below), \fIdiag\fP is internally set. If \fImode\fP = 2, \fIdiag\fP
+must contain positive entries that serve as
+multiplicative scale factors for the variables.
+
+\fImode\fP is an integer input variable. If \fImode\fP = 1, the
+variables will be scaled internally. If \fImode\fP = 2,
+the scaling is specified by the input \fIdiag\fP. Other
+values of mode are equivalent to \fImode\fP = 1.
+
+\fIfactor\fP is a positive input variable used in determining the
+initial step bound. This bound is set to the product of
+\fIfactor\fP and the euclidean norm of diag*x if nonzero, or else
+to \fIfactor\fP itself. In most cases factor should lie in the
+interval (.1,100.). 100. Is a generally recommended value.
+
+\fInprint\fP is an integer input variable that enables controlled
+printing of iterates if it is positive. In this case,
+\fIfcn\fP is called with \fIiflag\fP = 0 at the beginning of the first
+iteration and every nprint iterations thereafter and
+immediately prior to return, with \fIx\fP and \fIfvec\fP available
+for printing. If \fInprint\fP is not positive, no special calls
+of \fIfcn\fP with \fIiflag\fP = 0 are made.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of \fIiflag\fP. See description of \fIfcn\fP. Otherwise,
+\fIinfo\fP is set as follows.
+
+\fIinfo\fP = 0   improper input parameters.
+
+\fIinfo\fP = 1   relative error between two consecutive iterates
+           is at most \fIxtol\fP.
+
+\fIinfo\fP = 2   number of calls to \fIfcn\fP has reached or exceeded
+           \fImaxfev\fP.
+
+\fIinfo\fP = 3   \fIxtol\fP is too small. No further improvement in
+           the approximate solution \fIx\fP is possible.
+
+\fIinfo\fP = 4   iteration is not making good progress, as
+           measured by the improvement from the last
+           five jacobian evaluations.
+
+\fIinfo\fP = 5   iteration is not making good progress, as
+           measured by the improvement from the last
+           ten iterations.
+
+\fInfev\fP is an integer output variable set to the number of
+calls to \fIfcn\fP.
+
+\fIfjac\fP is an output \fIn\fP by \fIn\fP array which contains the
+orthogonal matrix \fIq\fP produced by the \fIqr\fP factorization
+of the final approximate jacobian.
+
+\fIldfjac\fP is a positive integer input variable not less than \fIn\fP
+which specifies the leading dimension of the array \fIfjac\fP.
+
+\fIr\fP is an output array of length \fIlr\fP which contains the
+upper triangular matrix produced by the \fIqr\fP factorization
+of the final approximate Jacobian, stored rowwise.
+
+\fIlr\fP is a positive integer input variable not less than
+(\fIn\fP*(\fIn\fP+1))/2.
+
+\fIqtf\fP is an output array of length \fIn\fP which contains
+the vector (q transpose)*\fIfvec\fP.
+
+\fIwa1\fP, \fIwa2\fP, \fIwa3\fP, and \fIwa4\fP are work arrays of length \fIn\fP.
+
+.SH SEE ALSO
+.BR hybrj (3),
+.BR hybrj1 (3).
+.br
+
+.SH AUTHORS
+Burton S. Garbow, Kenneth E. Hillstrom, Jorge J. More.
+.br
+This manual page was written by Jim Van Zandt <jrv at debian.org>,
+for the Debian GNU/Linux system (but may be used by others).

Added: packages/minpack/trunk/debian/hybrj1_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/hybrj1_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/hybrj1_.3 (added)
+++ packages/minpack/trunk/debian/hybrj1_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+.so man3/hybrj_.3

Added: packages/minpack/trunk/debian/hybrj_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/hybrj_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/hybrj_.3 (added)
+++ packages/minpack/trunk/debian/hybrj_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,283 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH HYBRJ_ 3 "March 8, 2002" Minpack
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+hybrj_, hybrj1_ \- find a zero of a system of nonlinear function
+.SH SYNOPSIS
+.B #include <minpack.h>
+.nh
+.ad l
+.HP 14
+.BI "void hybrj1_ (void (*" fcn ")(int *" n  , 
+.BI "double *" x , 
+.BI "double *" fvec , 
+.BI "double *" fjac , 
+.BI "int *" ldfjac , 
+.BI "int *" iflag ), 
+.RS 4
+.BI "int *" n , 
+.BI "double *" x , 
+.BI "double *" fvec , 
+.BI "double *" fjac , 
+.br
+.BI "int *" ldfjac , 
+.br
+.BI "double *" tol , 
+.BI "int *" info , 
+.BI "double *" wa , 
+.BI "int *" lwa );
+.RE          
+
+.HP 13
+.BI "void hybrj_ (void (*" fcn ")(int *" n , 
+.BI "double *" x , 
+.BI "double *" fvec , 
+.BI "double *" fjac ,
+.BI "int *" ldfjac , 
+.BI "int *" iflag ), 
+.RS 4
+.BI "int *" n , 
+.BI "double *" x ,
+.BI "double *" fvec , 
+.BI "double *" fjac , 
+.br
+.BI "int *" ldfjac , 
+.br
+.BI "double *" xtol ,
+.BI "int *" maxfev , 
+.BI "double *" diag , 
+.BI "int *" mode , 
+.BI "double *" factor ,
+.BI "int *" nprint , 
+.BI "int *" info , 
+.BI "int *" nfev , 
+.br
+.BI "int *" njev , 
+.BI "double *" r ,
+.BI "int *" lr , 
+.BI "double *" qtf , 
+.br
+.BI "double *" wa1 , 
+.BI "double *" wa2 ,
+.BI "double *" wa3 , 
+.BI "double *" wa4 );
+.RE
+.hy
+.ad b
+.br
+.SH DESCRIPTION
+The purpose of \fBhybrj_\fP is to find a zero of a system of
+\fIn\fP nonlinear functions in \fIn\fP variables by a modification
+of the Powell hybrid method. The user must provide a
+subroutine which calculates the functions and a subroutine which calculates
+the Jacobian.
+.PP
+\fBhybrj1_\fP serves the same function but has a simplified calling
+sequence.
+.br
+.SS Language notes
+\fBhybrj_\fP and \fBhybrj1_\fP are written in FORTRAN. If calling from
+C, keep these points in mind:
+.TP
+Name mangling.
+With \fBg77\fP version 2.95 or 3.0, all the function names end in an
+underscore.  This may change with future versions of \fBg77\fP.
+.TP
+Compile with \fBg77\fP.
+Even if your program is all C code, you should link with \fBg77\fP
+so it will pull in the FORTRAN libraries automatically.  It's easiest
+just to use \fBg77\fP to do all the compiling.  (It handles C just fine.)
+.TP
+Call by reference.
+All function parameters must be pointers.
+.TP
+Column-major arrays.
+Suppose a function returns an array with 5 rows and 3 columns in an
+array \fIz\fP and in the call you have declared a leading dimension of
+7.  The FORTRAN and equivalent C references are:
+.sp
+.nf
+	z(1,1)		z[0]
+	z(2,1)		z[1]
+	z(5,1)		z[4]
+	z(1,2)		z[7]
+	z(1,3)		z[14]
+	z(i,j)		z[(i-1) + (j-1)*7]
+.fi
+.SS Parameters for both functions
+\fIfcn\fP is the name of the user-supplied subroutine which calculates
+the functions. In FORTRAN, \fIfcn\fP must be declared in an external
+statement in the user calling program, and should be written as
+follows:
+.sp
+.nf
+subroutine fcn(n,x,fvec,fjac,ldfjac,iflag)
+integer n,ldfjac,iflag
+double precision x(n),fvec(n),fjac(ldfjac,n)
+----------
+if iflag = 1 calculate the functions at x and
+return this vector in fvec. do not alter fjac.
+if iflag = 2 calculate the jacobian at x and
+return this matrix in fjac. do not alter fvec.
+---------
+return
+end
+.fi
+.sp
+.sp
+In C, \fIfcn\fP should be written as follows:
+.sp
+.nf
+  void fcn(int n, double *x, double *fvec, double *fjac, 
+           int *ldfjac, int *iflag)
+  {
+  /* if iflag = 1 calculate the functions at x and
+     return this vector in fvec. do not alter fjac.
+     if iflag = 2 calculate the jacobian at x and
+     return this matrix in fjac. do not alter fvec. */
+  }
+.fi
+.sp
+The value of \fIiflag\fP should not be changed by \fIfcn\fP unless
+the user wants to terminate execution of hybrj_.
+In this case set \fIiflag\fP to a negative integer.
+
+\fIn\fP is a positive integer input variable set to the number
+of functions and variables.
+
+\fIx\fP is an array of length \fIn\fP. On input \fIx\fP must contain
+an initial estimate of the solution vector. On output \fIx\fP
+contains the final estimate of the solution vector.
+
+\fIfjac\fP is an output \fIn\fP by \fIn\fP array which contains the
+orthogonal matrix q produced by the qr factorization
+of the final approximate jacobian.
+
+\fIldfjac\fP is a positive integer input variable not less than \fIn\fP
+which specifies the leading dimension of the array \fIfjac\fP.
+
+\fIfvec\fP is an output array of length \fIn\fP which contains
+the functions evaluated at the output \fIx\fP.
+.br
+.SS Parameters for \fBhybrj1_\fP
+
+\fItol\fP is a nonnegative input variable. Termination occurs
+when the algorithm estimates that the relative error
+between \fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of \fIiflag\fP. See description of \fIfcn\fP. Otherwise,
+\fIinfo\fP is set as follows.
+
+\fIinfo\fP = 0   improper input parameters.
+
+\fIinfo\fP = 1   algorithm estimates that the relative error
+           between \fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP = 2   number of calls to fcn has reached or exceeded
+           200*(\fIn\fP+1).
+
+\fIinfo\fP = 3   \fItol\fP is too small. No further improvement in
+           the approximate solution \fIx\fP is possible.
+
+\fIinfo\fP = 4   iteration is not making good progress.
+
+\fIwa\fP is a work array of length \fIlwa\fP.
+
+\fIlwa\fP is a positive integer input variable not less than
+(\fIn\fP*(3*\fIn\fP+13))/2.
+.br
+.SS Parameters for \fBhybrj_\fP
+
+\fIxtol\fP is a nonnegative input variable. Termination
+occurs when the relative error between two consecutive
+iterates is at most \fIxtol\fP.
+
+\fImaxfev\fP is a positive integer input variable. Termination
+occurs when the number of calls to \fIfcn\fP is at least \fImaxfev\fP
+by the end of an iteration.
+
+\fIdiag\fP is an array of length \fIn\fP. If \fImode\fP = 1 (see
+below), \fIdiag\fP is internally set. If \fImode\fP = 2, \fIdiag\fP
+must contain positive entries that serve as
+multiplicative scale factors for the variables.
+
+\fImode\fP is an integer input variable. If \fImode\fP = 1, the
+variables will be scaled internally. If \fImode\fP = 2,
+the scaling is specified by the input \fIdiag\fP. Other
+values of mode are equivalent to \fImode\fP = 1.
+
+\fIfactor\fP is a positive input variable used in determining the
+initial step bound. This bound is set to the product of
+\fIfactor\fP and the euclidean norm of diag*x if nonzero, or else
+to \fIfactor\fP itself. In most cases factor should lie in the
+interval (.1,100.). 100. Is a generally recommended value.
+
+\fInprint\fP is an integer input variable that enables controlled
+printing of iterates if it is positive. In this case,
+\fIfcn\fP is called with \fIiflag\fP = 0 at the beginning of the first
+iteration and every nprint iterations thereafter and
+immediately prior to return, with \fIx\fP and \fIfvec\fP available
+for printing. If \fInprint\fP is not positive, no special calls
+of \fIfcn\fP with \fIiflag\fP = 0 are made.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of \fIiflag\fP. See description of \fIfcn\fP. Otherwise,
+\fIinfo\fP is set as follows.
+
+\fIinfo\fP = 0   improper input parameters.
+
+\fIinfo\fP = 1   relative error between two consecutive iterates
+           is at most \fIxtol\fP.
+
+\fIinfo\fP = 2   number of calls to \fIfcn\fP has reached or exceeded
+           \fImaxfev\fP.
+
+\fIinfo\fP = 3   \fIxtol\fP is too small. No further improvement in
+           the approximate solution \fIx\fP is possible.
+
+\fIinfo\fP = 4   iteration is not making good progress, as
+           measured by the improvement from the last
+           five jacobian evaluations.
+
+\fIinfo\fP = 5   iteration is not making good progress, as
+           measured by the improvement from the last
+           ten iterations.
+
+\fInfev\fP is an integer output variable set to the number of
+calls to \fIfcn\fP.
+
+\fIfjac\fP is an output \fIn\fP by \fIn\fP array which contains the
+orthogonal matrix \fIq\fP produced by the \fIqr\fP factorization
+of the final approximate jacobian.
+
+\fIldfjac\fP is a positive integer input variable not less than \fIn\fP
+which specifies the leading dimension of the array \fIfjac\fP.
+
+\fIr\fP is an output array of length \fIlr\fP which contains the
+upper triangular matrix produced by the \fIqr\fP factorization
+of the final approximate Jacobian, stored rowwise.
+
+\fIlr\fP is a positive integer input variable not less than
+(\fIn\fP*(\fIn\fP+1))/2.
+
+\fIqtf\fP is an output array of length \fIn\fP which contains
+the vector (q transpose)*\fIfvec\fP.
+
+\fIwa1\fP, \fIwa2\fP, \fIwa3\fP, and \fIwa4\fP are work arrays of length \fIn\fP.
+
+.SH SEE ALSO
+.BR hybrd (3),
+.BR hybrd1 (3).
+.br
+
+.SH AUTHORS
+Burton S. Garbow, Kenneth E. Hillstrom, Jorge J. More.
+.br
+This manual page was written by Jim Van Zandt <jrv at debian.org>,
+for the Debian GNU/Linux system (but may be used by others).

Added: packages/minpack/trunk/debian/libminpack1.dirs
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/libminpack1.dirs?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/libminpack1.dirs (added)
+++ packages/minpack/trunk/debian/libminpack1.dirs Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+usr/lib

Added: packages/minpack/trunk/debian/libminpack1.files
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/libminpack1.files?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/libminpack1.files (added)
+++ packages/minpack/trunk/debian/libminpack1.files Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+usr/lib/lib*.so*

Added: packages/minpack/trunk/debian/lmder1_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/lmder1_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/lmder1_.3 (added)
+++ packages/minpack/trunk/debian/lmder1_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+.so man3/lmder_.3

Added: packages/minpack/trunk/debian/lmder_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/lmder_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/lmder_.3 (added)
+++ packages/minpack/trunk/debian/lmder_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,340 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH LMDER_ 3 "March 8, 2002" Minpack
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+lmder_, lmder1_ \- minimize the sum of squares of m nonlinear functions, with user supplied Jacobian 
+.SH SYNOPSIS
+.B include <minpack.h>
+.nh
+.ad l
+.HP 28
+.BI "void lmder1_ ( "
+.BI "void (*" fcn         )
+.BI "(int *"     m        , 
+.BI "int *"      n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.BI "double *"   fjac     ,
+.br
+.BI "int *"      ldfjac   ,
+.BI "int *"      iflag    ),
+.RS 15
+.BI "int *"      m        ,
+.BI "int * "     n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.BI "double *"   fjac     ,
+.BI "int *"      ldfjac   ,
+.br
+.BI "double *"   tol      , 
+.BI "int *"      info     ,
+.BI "int *"      iwa      ,
+.BI "double *"   wa       ,
+.BI "int *"      lwa      );
+.RE
+.HP 27
+.BI "void lmder_"
+.BI "( void (*" fcn )(
+.BI "int *"      m        , 
+.BI "int *"      n        ,
+.BI "double *"   x        , 
+.BI "double *"   fvec     , 
+.BI "double *"   fjac     ,
+.br
+.BI "int *"      ldfjac   ,
+.BI "int *"      iflag    ),
+.RS 14
+.BI "int *"      m        ,
+.BI "int *"      n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.BI "double *"   fjac     ,
+.BI "int *"      ldfjac   ,
+.br
+.BI "double *"   ftol     ,
+.BI "double *"   xtol     ,
+.BI "double *"   gtol     ,
+.BI "int *"      maxfev   ,
+.BI "double *"   diag     ,
+.BI "int *"      mode     ,
+.br
+.BI "double *"   factor   ,
+.BI "int *"      nprint   ,
+.BI "int *"      info     ,
+.br
+.BI "int *"      nfev     ,
+.BI "int *"      njev     ,
+.BI "int *"      ipvt     ,
+.br
+.BI "double *"   qtf      ,
+.BI "double *"   wa1      ,
+.BI "double *"   wa2      ,
+.BI "double *"   wa3      ,
+.BI "double *"   wa4      " );"
+.RE
+.hy
+.ad b
+.br
+.SH DESCRIPTION
+
+The purpose of \fBlmder_\fP is to minimize the sum of the squares of
+\fIm\fP nonlinear functions in \fIn\fP variables by a modification of
+the Levenberg-Marquardt algorithm. The user must provide a function 
+which calculates the functions and the Jacobian.
+.PP
+\fBlmder1_\fP performs the same function
+as \fBlmder_\fP but has a simplified calling sequence.  
+.PP
+\fBlmstr\fP and \fBlmstr1\fP also perform the same function but use
+minimal storage.
+.br
+.SS Language notes
+These functions are written in FORTRAN. If calling from
+C, keep these points in mind:
+.TP
+Name mangling.
+With \fBg77\fP version 2.95 or 3.0, all the function names end in an
+underscore.  This may change with future versions of \fBg77\fP.
+.TP
+Compile with \fBg77\fP.
+Even if your program is all C code, you should link with \fBg77\fP
+so it will pull in the FORTRAN libraries automatically.  It's easiest
+just to use \fBg77\fP to do all the compiling.  (It handles C just fine.)
+.TP
+Call by reference.
+All function parameters must be pointers.
+.TP
+Column-major arrays.
+Suppose a function returns an array with 5 rows and 3 columns in an
+array \fIz\fP and in the call you have declared a leading dimension of
+7.  The FORTRAN and equivalent C references are:
+.sp
+.nf
+	z(1,1)		z[0]
+	z(2,1)		z[1]
+	z(5,1)		z[4]
+	z(1,2)		z[7]
+	z(1,3)		z[14]
+	z(i,j)		z[(i-1) + (j-1)*7]
+.fi
+.br
+.SS User-supplied Function
+
+\fIfcn\fP is the name of the user-supplied subroutine which calculates
+the functions. In FORTRAN, \fIfcn\fP must be declared in an external
+statement in the user calling program, and should be written as
+follows:
+.sp
+.nf
+  subroutine fcn(m,n,x,fvec,fjac,ldfjac,iflag)
+  integer m,n,iflag
+  double precision x(n),fvec(m),fjac(ldfjac,n)
+  ----------
+  if iflag = 1 calculate the functions at x and
+  return this vector in fvec. do not alter fjac.
+  if iflag = 2 calculate the jacobian at x and
+  return this matrix in fjac. do not alter fvec.
+  ----------
+  return
+  end
+.fi
+.sp
+In C, \fIfcn\fP should be written as follows:
+.sp
+.nf
+  void fcn(int m, int n, double *x, double *fvec, double *fjac,
+           int *ldfjac, int *iflag)
+  {
+    /* if iflag = 1 calculate the functions at x and return this
+       vector in fvec[0] through fvec[m-1]. do not alter fjac.
+       if iflag = 2 calculate the jacobian at x and return this
+       matrix in fjac. do not alter fvec. */
+  }
+.fi
+.sp
+The value of \fIiflag\fP should not be changed by \fIfcn\fP unless the
+user wants to terminate execution of \fBlmder_\fP (or \fBlmder1_\fP). In
+this case set \fIiflag\fP to a negative integer.
+.br
+.SS Parameters for both \fBlmder_\fP and \fBlmder1_\fP
+
+\fIm\fP is a positive integer input variable set to the number
+of functions.
+
+\fIn\fP is a positive integer input variable set to the number
+of variables. \fIn\fP must not exceed \fIm\fP.
+
+\fIx\fP is an array of length \fIn\fP. On input \fIx\fP must contain
+an initial estimate of the solution vector. On output \fIx\fP
+contains the final estimate of the solution vector.
+
+\fIfvec\fP is an output array of length \fIm\fP which contains
+the functions evaluated at the output \fIx\fP.
+
+\fIfjac\fP is an output \fIm\fP by \fIn\fP array. The upper \fIn\fP by
+\fIn\fP submatrix of \fIfjac\fP contains an upper triangular matrix
+\fIr\fP with diagonal elements of nonincreasing magnitude such that
+
+         t     t           t
+        p *(jac *jac)*p = r *r,
+
+where \fIp\fP is a permutation matrix and \fIjac\fP is the final
+calculated Jacobian. column \fBj\fP of \fIp\fP is column
+\fIipvt\fP(\fBj\fP) (see below) of the identity matrix. The lower
+trapezoidal part of \fIfjac\fP contains information generated during
+the computation of \fIr\fP.
+
+\fIldfjac\fP is a positive integer input variable not less than
+\fIm\fP which specifies the leading dimension of the array
+\fIfjac\fP.
+.br
+.SS Parameters for \fBlmder1_\fP
+
+\fItol\fP is a nonnegative input variable.  Termination occurs when
+the algorithm estimates either that the relative error in the sum of
+squares is at most \fItol\fP or that the relative error between
+\fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP is an integer output variable. if the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of iflag. see description of \fIfcn\fP. otherwise,
+\fIinfo\fP is set as follows.
+
+  \fIinfo\fP = 0  improper input parameters.
+
+  \fIinfo\fP = 1  algorithm estimates that the relative error
+in the sum of squares is at most \fItol\fP.
+
+  \fIinfo\fP = 2  algorithm estimates that the relative error
+between x and the solution is at most \fItol\fP.
+
+  \fIinfo\fP = 3  conditions for \fIinfo\fP = 1 and \fIinfo\fP = 2 both hold.
+
+  \fIinfo\fP = 4  \fIfvec\fP is orthogonal to the columns of the
+Jacobian to machine precision.
+
+  \fIinfo\fP = 5  number of calls to \fIfcn\fP has reached or
+exceeded 200*(\fIn\fP+1).
+
+  \fIinfo\fP = 6  \fItol\fP is too small. no further reduction in
+the sum of squares is possible.
+
+  \fIinfo\fP = 7  \fItol\fP is too small. no further improvement in
+the approximate solution x is possible.
+
+\fIiwa\fP is an integer work array of length \fIn\fP.
+
+\fIwa\fP is a work array of length \fIlwa\fP.
+
+\fIlwa\fP is an integer input variable not less than \fIm\fP*\fIn\fP +
+5*\fIn\fP + \fIm\fP for \fBlmder1_\fP.
+.br
+.SS Parameters for \fBlmder_\fP
+
+\fIftol\fP is a nonnegative input variable. Termination
+occurs when both the actual and predicted relative
+reductions in the sum of squares are at most \fIftol\fP.
+Therefore, \fIftol\fP measures the relative error desired
+in the sum of squares.
+
+\fIxtol\fP is a nonnegative input variable. Termination
+occurs when the relative error between two consecutive
+iterates is at most \fIxtol\fP. Therefore, \fIxtol\fP measures the
+relative error desired in the approximate solution.
+
+\fIgtol\fP is a nonnegative input variable. Termination
+occurs when the cosine of the angle between \fIfvec\fP and
+any column of the Jacobian is at most \fIgtol\fP in absolute
+value. Therefore, \fIgtol\fP measures the orthogonality
+desired between the function vector and the columns
+of the Jacobian.
+
+\fImaxfev\fP is a positive integer input variable. Termination
+occurs when the number of calls to \fIfcn\fP is at least
+\fImaxfev\fP by the end of an iteration.
+
+\fIdiag\fP is an array of length \fIn\fP. If \fImode\fP = 1 (see
+below), \fIdiag\fP is internally set. If \fImode\fP = 2, \fIdiag\fP
+must contain positive entries that serve as
+multiplicative scale factors for the variables.
+
+\fImode\fP is an integer input variable. If \fImode\fP = 1, the
+variables will be scaled internally. If \fImode\fP = 2,
+the scaling is specified by the input \fIdiag\fP. Other
+values of mode are equivalent to \fImode\fP = 1.
+
+\fIfactor\fP is a positive input variable used in determining the
+initial step bound. This bound is set to the product of \fIfactor\fP
+and the euclidean norm of \fIdiag\fP*\fIx\fP if the latter is
+nonzero, or else to \fIfactor\fP itself. In most cases factor should
+lie in the interval (.1,100.). 100. is a generally recommended
+value.
+
+\fInprint\fP is an integer input variable that enables controlled
+printing of iterates if it is positive. In this case, fcn is called
+with \fIiflag\fP = 0 at the beginning of the first iteration and
+every \fInprint\fP iterations thereafter and immediately prior to
+return, with \fIx\fP and \fIfvec\fP available for printing. If
+\fInprint\fP is not positive, no special calls of fcn with
+\fIiflag\fP = 0 are made.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, info is set to the (negative)
+value of iflag. See description of fcn. Otherwise,
+info is set as follows.
+
+  \fIinfo\fP = 0  improper input parameters.
+
+  \fIinfo\fP = 1  both actual and predicted relative reductions
+in the sum of squares are at most \fIftol\fP.
+
+  \fIinfo\fP = 2  relative error between two consecutive iterates
+is at most \fIxtol\fP.
+
+  \fIinfo\fP = 3  conditions for \fIinfo\fP = 1 and \fIinfo\fP = 2 both hold.
+
+  \fIinfo\fP = 4  the cosine of the angle between fvec and any
+column of the Jacobian is at most gtol in absolute value.
+
+  \fIinfo\fP = 5  number of calls to \fIfcn\fP has reached or
+exceeded maxfev.
+
+  \fIinfo\fP = 6  \fIftol\fP is too small. No further reduction in
+the sum of squares is possible.
+
+  \fIinfo\fP = 7  \fIxtol\fP is too small. No further improvement in
+the approximate solution x is possible.
+
+  \fIinfo\fP = 8 \fIgtol\fP is too small. \fIfvec\fP is orthogonal to
+the columns of the Jacobian to machine precision.
+
+\fInfev\fP is an integer output variable set to the number of
+calls to \fIfcn\fP with \fIiflag\fP = 1.
+
+\fInjev\fP is an integer output variable set to the number of
+calls to fcn with \fIiflag\fP = 2.
+
+\fIipvt\fP is an integer output array of length \fIn\fP. \fIipvt\fP
+defines a permutation matrix \fIp\fP such that \fIjac\fP*\fIp\fP =
+\fIq\fP*\fIr\fP, where \fIjac\fP is the final calculated Jacobian,
+\fIq\fP is orthogonal (not stored), and \fIr\fP is upper triangular
+with diagonal elements of nonincreasing magnitude.  Column \fBj\fP
+of \fIp\fP is column \fIipvt\fP(\fBj\fP) of the identity matrix.
+
+\fIqtf\fP is an output array of length \fIn\fP which contains
+the first \fIn\fP elements of the vector (\fIq\fP transpose)*\fIfvec\fP.
+
+\fIwa1\fP, \fIwa2\fP, and \fIwa3\fP are work arrays of length \fIn\fP.
+
+\fIwa4\fP is a work array of length \fIm\fP.
+.br
+.SH SEE ALSO
+.BR lmdif (3),
+.BR lmdif1 (3),
+.BR lmstr (3),
+.BR lmstr1 (3).
+.br
+.SH AUTHORS
+Jorge More', Burt Garbow, and Ken Hillstrom at Argonne National Laboratory.
+This manual page was written by Jim Van Zandt <jrv at debian.org>,
+for the Debian GNU/Linux system (but may be used by others).

Added: packages/minpack/trunk/debian/lmdif1_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/lmdif1_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/lmdif1_.3 (added)
+++ packages/minpack/trunk/debian/lmdif1_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+.so man3/lmdif_.3

Added: packages/minpack/trunk/debian/lmdif_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/lmdif_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/lmdif_.3 (added)
+++ packages/minpack/trunk/debian/lmdif_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,319 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH LMDIF_ 3 "March 8, 2002" Minpack
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+lmdif_, lmdif1_ \- minimize the sum of squares of m nonlinear functions 
+.SH SYNOPSIS
+.B include <minpack.h>
+.nh
+.ad l
+.HP 15
+.BI "void lmdif1_ ( "
+.BI "void (*" fcn ")(int *" m ", int *" n ", double *" x ,
+.BI "double *" fvec ", int *" iflag ),
+.RS 2
+.BI "int *"      m        ,
+.BI "int * "     n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.br
+.BI "double *"   tol      , 
+.BI "int *"      info     ,
+.BI "int *"      iwa      ,
+.BI "double *"   wa       ,
+.BI "int *"      lwa      );
+.RE
+.HP 14
+.BI "void lmdif_"
+.BI "( void (*" fcn ")(int *" m ", int *" n ", double *" x , 
+.BI "double *" fvec ", int *" iflag ),
+.RS 2
+.BI "int *"      m        ,
+.BI "int *"      n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.br
+.BI "double *"   ftol     ,
+.BI "double *"   xtol     ,
+.BI "double *"   gtol     ,
+.BI "int *"      maxfev   ,
+.BI "double *"   epsfcn   ,
+.BI "double *"   diag     ,
+.BI "int *"      mode     ,
+.BI "double *"   factor   ,
+.BI "int *"      nprint   ,
+.BI "int *"      info     ,
+.BI "int *"      nfev     ,
+.BI "double *"   fjac     ,
+.br
+.BI "int *"      ldfjac   ,
+.BI "int *"      ipvt     ,
+.BI "double *"   qtf      ,
+.br
+.BI "double *"   wa1      ,
+.BI "double *"   wa2      ,
+.BI "double *"   wa3      ,
+.BI "double *"   wa4      " );"
+.RE
+.hy
+.ad b
+.br
+.SH DESCRIPTION
+
+The purpose of \fBlmdif_\fP is to minimize the sum of the squares of
+\fIm\fP nonlinear functions in \fIn\fP variables by a modification of
+the Levenberg-Marquardt algorithm. The user must provide a subroutine
+which calculates the functions. The Jacobian is then calculated by a
+forward-difference approximation.
+
+\fBlmdif1_\fP serves the same purpose but has a simplified calling
+sequence.
+.br
+.SS Language notes
+These functions are written in FORTRAN. If calling from
+C, keep these points in mind:
+.TP
+Name mangling.
+With \fBg77\fP version 2.95 or 3.0, all the function names end in an
+underscore.  This may change with future versions of \fBg77\fP.
+.TP
+Compile with \fBg77\fP.
+Even if your program is all C code, you should link with \fBg77\fP
+so it will pull in the FORTRAN libraries automatically.  It's easiest
+just to use \fBg77\fP to do all the compiling.  (It handles C just fine.)
+.TP
+Call by reference.
+All function parameters must be pointers.
+.TP
+Column-major arrays.
+Suppose a function returns an array with 5 rows and 3 columns in an
+array \fIz\fP and in the call you have declared a leading dimension of
+7.  The FORTRAN and equivalent C references are:
+.sp
+.nf
+	z(1,1)		z[0]
+	z(2,1)		z[1]
+	z(5,1)		z[4]
+	z(1,2)		z[7]
+	z(1,3)		z[14]
+	z(i,j)		z[(i-1) + (j-1)*7]
+.fi
+.br
+\fIfcn\fP is the name of the user-supplied subroutine which
+calculates the functions. In FORTRAN, \fIfcn\fP must be declared
+in an external statement in the user calling
+program, and should be written as follows:
+.sp
+.nf
+  subroutine fcn(m,n,x,fvec,iflag)
+  integer m,n,iflag
+  double precision x(n),fvec(m)
+  ----------
+  calculate the functions at x and
+  return this vector in fvec.
+  ----------
+  return
+  end
+.fi
+.sp
+In C, \fIfcn\fP should be written as follows:
+.sp
+.nf
+  void fcn(int m, int n, double *x, double *fvec, int *iflag)
+  {
+  	  /* calculate the functions at x and return 
+  	     the values in fvec[0] through fvec[m-1] */
+  }
+.fi
+.sp
+The value of \fIiflag\fP should not be changed by \fIfcn\fP unless the
+user wants to terminate execution of \fBlmdif_\fP (or \fBlmdif1_\fP). In
+this case set \fIiflag\fP to a negative integer.
+.br
+.SS Parameters for both \fBlmdif_\fP and \fBlmdif1_\fP
+
+\fIm\fP is a positive integer input variable set to the number
+of functions.
+
+\fIn\fP is a positive integer input variable set to the number
+of variables. \fIn\fP must not exceed \fIm\fP.
+
+\fIx\fP is an array of length \fIn\fP. On input \fIx\fP must contain
+an initial estimate of the solution vector. On output \fIx\fP
+contains the final estimate of the solution vector.
+
+\fIfvec\fP is an output array of length \fIm\fP which contains
+the functions evaluated at the output \fIx\fP.
+.br
+.SS Parameters for \fBlmdif1_\fP 
+
+\fItol\fP is a nonnegative input variable.  Termination occurs when
+the algorithm estimates either that the relative error in the sum of
+squares is at most \fItol\fP or that the relative error between
+\fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP is an integer output variable. if the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of iflag. see description of \fIfcn\fP. otherwise,
+\fIinfo\fP is set as follows.
+
+  \fIinfo\fP = 0  improper input parameters.
+
+  \fIinfo\fP = 1  algorithm estimates that the relative error
+in the sum of squares is at most \fItol\fP.
+
+  \fIinfo\fP = 2  algorithm estimates that the relative error
+between x and the solution is at most \fItol\fP.
+
+  \fIinfo\fP = 3  conditions for \fIinfo\fP = 1 and \fIinfo\fP = 2 both hold.
+
+  \fIinfo\fP = 4  \fIfvec\fP is orthogonal to the columns of the
+Jacobian to machine precision.
+
+  \fIinfo\fP = 5  number of calls to \fIfcn\fP has reached or
+exceeded 200*(\fIn\fP+1).
+
+  \fIinfo\fP = 6  \fItol\fP is too small. no further reduction in
+the sum of squares is possible.
+
+  \fIinfo\fP = 7  \fItol\fP is too small. no further improvement in
+the approximate solution x is possible.
+
+\fIiwa\fP is an integer work array of length \fIn\fP.
+
+\fIwa\fP is a work array of length \fIlwa\fP.
+
+\fIlwa\fP is an integer input variable not less than \fIm\fP*\fIn\fP +
+5*\fIn\fP + \fIm\fP.
+.br
+.SS Parameters for \fBlmdif_\fP
+
+\fIftol\fP is a nonnegative input variable. Termination
+occurs when both the actual and predicted relative
+reductions in the sum of squares are at most \fIftol\fP.
+Therefore, \fIftol\fP measures the relative error desired
+in the sum of squares.
+
+\fIxtol\fP is a nonnegative input variable. Termination
+occurs when the relative error between two consecutive
+iterates is at most \fIxtol\fP. Therefore, \fIxtol\fP measures the
+relative error desired in the approximate solution.
+
+\fIgtol\fP is a nonnegative input variable. Termination
+occurs when the cosine of the angle between \fIfvec\fP and
+any column of the Jacobian is at most \fIgtol\fP in absolute
+value. Therefore, \fIgtol\fP measures the orthogonality
+desired between the function vector and the columns
+of the Jacobian.
+
+\fImaxfev\fP is a positive integer input variable. Termination
+occurs when the number of calls to \fIfcn\fP is at least
+\fImaxfev\fP by the end of an iteration.
+
+\fIepsfcn\fP is an input variable used in determining a suitable
+step length for the forward-difference approximation. This
+approximation assumes that the relative errors in the
+functions are of the order of \fIepsfcn\fP. If \fIepsfcn\fP is less
+than the machine precision, it is assumed that the relative
+errors in the functions are of the order of the machine
+precision.
+
+\fIdiag\fP is an array of length \fIn\fP. If \fImode\fP = 1 (see
+below), \fIdiag\fP is internally set. If \fImode\fP = 2, \fIdiag\fP
+must contain positive entries that serve as
+multiplicative scale factors for the variables.
+
+\fImode\fP is an integer input variable. If \fImode\fP = 1, the
+variables will be scaled internally. If \fImode\fP = 2,
+the scaling is specified by the input \fIdiag\fP. Other
+values of mode are equivalent to \fImode\fP = 1.
+
+\fIfactor\fP is a positive input variable used in determining the
+initial step bound. This bound is set to the product of \fIfactor\fP
+and the euclidean norm of \fIdiag\fP*\fIx\fP if the latter is
+nonzero, or else to \fIfactor\fP itself. In most cases factor should
+lie in the interval (.1,100.). 100. is a generally recommended
+value.
+
+\fInprint\fP is an integer input variable that enables controlled
+printing of iterates if it is positive. In this case, fcn is called
+with \fIiflag\fP = 0 at the beginning of the first iteration and
+every \fInprint\fP iterations thereafter and immediately prior to
+return, with \fIx\fP and \fIfvec\fP available for printing. If
+\fInprint\fP is not positive, no special calls of fcn with
+\fIiflag\fP = 0 are made.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, info is set to the (negative)
+value of iflag. See description of fcn. Otherwise,
+info is set as follows.
+
+  \fIinfo\fP = 0  improper input parameters.
+
+  \fIinfo\fP = 1  both actual and predicted relative reductions
+in the sum of squares are at most \fIftol\fP.
+
+  \fIinfo\fP = 2  relative error between two consecutive iterates
+is at most \fIxtol\fP.
+
+  \fIinfo\fP = 3  conditions for \fIinfo\fP = 1 and \fIinfo\fP = 2 both hold.
+
+  \fIinfo\fP = 4  the cosine of the angle between fvec and any
+column of the Jacobian is at most gtol in absolute value.
+
+  \fIinfo\fP = 5  number of calls to \fIfcn\fP has reached or
+exceeded maxfev.
+
+  \fIinfo\fP = 6  \fIftol\fP is too small. No further reduction in
+the sum of squares is possible.
+
+  \fIinfo\fP = 7  \fIxtol\fP is too small. No further improvement in
+the approximate solution x is possible.
+
+  \fIinfo\fP = 8 \fIgtol\fP is too small. \fIfvec\fP is orthogonal to
+the columns of the Jacobian to machine precision.
+
+\fInfev\fP is an integer output variable set to the number of
+calls to \fIfcn\fP.
+
+\fIfjac\fP is an output \fIm\fP by \fIn\fP array. The upper \fIn\fP by
+\fIn\fP submatrix of \fIfjac\fP contains an upper triangular matrix
+\fIr\fP with diagonal elements of nonincreasing magnitude such that
+
+         t     t           t
+        p *(jac *jac)*p = r *r,
+
+where \fIp\fP is a permutation matrix and \fIjac\fP is the final
+calculated Jacobian. column \fBj\fP of \fIp\fP is column
+\fIipvt\fP(\fBj\fP) (see below) of the identity matrix. The lower
+trapezoidal part of \fIfjac\fP contains information generated during
+the computation of \fIr\fP.
+
+\fIldfjac\fP is a positive integer input variable not less than
+\fIm\fP which specifies the leading dimension of the array
+\fIfjac\fP.
+
+\fIipvt\fP is an integer output array of length \fIn\fP. \fIipvt\fP
+defines a permutation matrix \fIp\fP such that \fIjac\fP*\fIp\fP =
+\fIq\fP*\fIr\fP, where \fIjac\fP is the final calculated Jacobian,
+\fIq\fP is orthogonal (not stored), and \fIr\fP is upper triangular
+with diagonal elements of nonincreasing magnitude.  Column \fBj\fP
+of \fIp\fP is column \fIipvt\fP(\fBj\fP) of the identity matrix.
+
+\fIqtf\fP is an output array of length \fIn\fP which contains
+the first \fIn\fP elements of the vector (\fIq\fP transpose)*\fIfvec\fP.
+
+\fIwa1\fP, \fIwa2\fP, and \fIwa3\fP are work arrays of length \fIn\fP.
+
+\fIwa4\fP is a work array of length \fIm\fP.
+.br
+.SH SEE ALSO
+.BR lmder (3),
+.BR lmder1 (3),
+.BR lmstr (3),
+.BR lmstr1 (3).
+.br
+.SH AUTHORS
+Jorge More', Burt Garbow, and Ken Hillstrom at Argonne National Laboratory.
+This manual page was written by Jim Van Zandt <jrv at debian.org>,
+for the Debian GNU/Linux system (but may be used by others).

Added: packages/minpack/trunk/debian/lmstr1_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/lmstr1_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/lmstr1_.3 (added)
+++ packages/minpack/trunk/debian/lmstr1_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,1 @@
+.so man3/lmstr_.3

Added: packages/minpack/trunk/debian/lmstr_.3
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/lmstr_.3?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/lmstr_.3 (added)
+++ packages/minpack/trunk/debian/lmstr_.3 Wed Aug  3 20:35:37 2011
@@ -1,0 +1,340 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.TH LMSTR_ 3 "March 8, 2002" Minpack
+.\" Please adjust this date whenever revising the manpage.
+.SH NAME
+lmstr_, lmstr1_ \- minimize the sum of squares of m nonlinear functions, with user supplied Jacobian and minimal storage
+.SH SYNOPSIS
+.B include <minpack.h>
+.nh
+.ad l
+.HP 28
+.BI "void lmstr1_ ( "
+.BI "void (*" fcn         )
+.BI "(int *"     m        , 
+.BI "int *"      n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.BI "double *"   fjrow    ,
+.BI "int *"      iflag    ),
+.RS 15
+.BI "int *"      m        ,
+.BI "int * "     n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.BI "double *"   fjac     ,
+.BI "int *"      ldfjac   ,
+.br
+.BI "double *"   tol      , 
+.BI "int *"      info     ,
+.BI "int *"      iwa      ,
+.br
+.BI "double *"   wa       ,
+.BI "int *"      kwa      );
+.RE
+.HP 27
+.BI "void lmstr_"
+.BI "( void (*" fcn )(
+.BI "int *"      m        , 
+.BI "int *"      n        ,
+.BI "double *"   x        , 
+.BI "double *"   fvec     , 
+.BI "double *"   fjrow    ,
+.BI "int *"      iflag    ),
+.RS 14
+.BI "int *"      m        ,
+.BI "int *"      n        ,
+.BI "double *"   x        ,
+.BI "double *"   fvec     ,
+.BI "double *"   fjac     ,
+.BI "int *"      ldfjac   ,
+.br
+.BI "double *"   ftol     ,
+.BI "double *"   xtol     ,
+.BI "double *"   gtol     ,
+.br
+.BI "int *"      maxfev   ,
+.BI "double *"   diag     ,
+.BI "int *"      mode     ,
+.BI "double *"   factor   ,
+.br
+.BI "int *"      nprint   ,
+.BI "int *"      info     ,
+.BI "int *"      nfev     ,
+.BI "int *"      njev     ,
+.br
+.BI "int *"      ipvt     ,
+.BI "double *"   qtf      ,
+.br
+.BI "double *"   wa1      ,
+.BI "double *"   wa2      ,
+.BI "double *"   wa3      ,
+.BI "double *"   wa4      " );"
+.RE
+.hy
+.ad b
+.br
+.SH DESCRIPTION
+
+The purpose of \fBlmstr_\fP is to minimize the sum of the squares of
+\fIm\fP nonlinear functions in \fIn\fP variables by a modification of
+the Levenberg-Marquardt algorithm. The user must provide a function 
+which calculates the functions and the rows of the Jacobian.
+.PP
+\fBlmstr1_\fP performs the same function but has a simplified calling sequence.
+.PP
+\fBlmder\fP(3) and \fBlmder1\fP(3) perform the same function but do
+not attempt to minimize storage.
+.br
+.SS Language notes
+These functions are written in FORTRAN. If calling from
+C, keep these points in mind:
+.TP
+Name mangling.
+With \fBg77\fP version 2.95 or 3.0, all the function names end in an
+underscore.  This may change with future versions of \fBg77\fP.
+.TP
+Compile with \fBg77\fP.
+Even if your program is all C code, you should link with \fBg77\fP
+so it will pull in the FORTRAN libraries automatically.  It's easiest
+just to use \fBg77\fP to do all the compiling.  (It handles C just fine.)
+.TP
+Call by reference.
+All function parameters must be pointers.
+.TP
+Column-major arrays.
+Suppose a function returns an array with 5 rows and 3 columns in an
+array \fIz\fP and in the call you have declared a leading dimension of
+7.  The FORTRAN and equivalent C references are:
+.sp
+.nf
+	z(1,1)		z[0]
+	z(2,1)		z[1]
+	z(5,1)		z[4]
+	z(1,2)		z[7]
+	z(1,3)		z[14]
+	z(i,j)		z[(i-1) + (j-1)*7]
+.fi
+.br
+.SS User-supplied Function
+
+\fIfcn\fP is the name of the user-supplied subroutine which calculates
+the functions. In FORTRAN, \fIfcn\fP must be declared in an external
+statement in the user calling program, and should be written as
+follows:
+.sp
+.nf
+  subroutine fcn(m,n,x,fvec,fjrow,iflag)
+  integer m,n,iflag
+  double precision x(n),fvec(m),fjrow(n)
+  ----------
+  if iflag = 1 calculate the functions at x and
+  return this vector in fvec. Do not alter fjac.
+  if iflag = i calculate row (i-1) of the
+  Jacobian at x and return this vector in fjrow.
+  ----------
+  return
+  end
+.fi
+.sp
+In C, \fIfcn\fP should be written as follows:
+.sp
+.nf
+  void fcn(int m, int n, double *x, double *fvec, double *fjrow,
+           int *iflag)
+  {
+    /* If iflag = 1 calculate the functions at x and return the
+       values in fvec[0] through fvec[m-1].  Do not alter fjac.
+       If iflag = i calculate row (i-1) of the Jacobian
+       at x and return the vector in fjrow. */
+  }
+.fi
+.sp
+\fIiflag\fP is an input integer which specifies whether a function
+value or Jacobian row is to be calculated.
+The value of \fIiflag\fP should not be changed by \fIfcn\fP unless the
+user wants to terminate execution of \fBlmstr_\fP (or \fBlmstr1_\fP). In
+this case set \fIiflag\fP to a negative integer.
+.br
+.SS Parameters for both \fBlmstr_\fP and \fBlmstr1_\fP
+
+\fIm\fP is a positive integer input variable set to the number
+of functions.
+
+\fIn\fP is a positive integer input variable set to the number
+of variables. \fIn\fP must not exceed \fIm\fP.
+
+\fIx\fP is an array of length \fIn\fP. On input \fIx\fP must contain
+an initial estimate of the solution vector. On output \fIx\fP
+contains the final estimate of the solution vector.
+
+\fIfvec\fP is an output array of length \fIm\fP which contains
+the functions evaluated at the output \fIx\fP.
+
+\fIfjrow\fP is an output array of length \fIn\fP which is set to one
+row of the Jacobian evaluated at \fIx\fP.
+
+\fIfjac\fP is an output \fIm\fP by \fIn\fP array. The upper \fIn\fP by
+\fIn\fP submatrix of \fIfjac\fP contains an upper triangular matrix
+\fBr\fP with diagonal elements of nonincreasing magnitude such that
+
+         t     t           t
+        p *(jac *jac)*p = r *r,
+
+where \fIp\fP is a permutation matrix and \fBjac\fP is the final
+calculated Jacobian. Column \fBj\fP of \fIp\fP is column
+\fIipvt\fP(\fBj\fP) (see below) of the identity matrix. The lower
+trapezoidal part of \fIfjac\fP contains information generated during
+the computation of \fBr\fP.
+
+\fIldfjac\fP is a positive integer input variable not less than
+\fIm\fP which specifies the leading dimension of the array
+\fIfjac\fP.
+.br
+.SS Parameters for \fBlmstr1_\fP
+
+\fItol\fP is a nonnegative input variable.  Termination occurs when
+the algorithm estimates either that the relative error in the sum of
+squares is at most \fItol\fP or that the relative error between
+\fIx\fP and the solution is at most \fItol\fP.
+
+\fIinfo\fP is an integer output variable. if the user has
+terminated execution, \fIinfo\fP is set to the (negative)
+value of iflag. see description of \fIfcn\fP. otherwise,
+\fIinfo\fP is set as follows.
+
+  \fIinfo\fP = 0  improper input parameters.
+
+  \fIinfo\fP = 1  algorithm estimates that the relative error
+in the sum of squares is at most \fItol\fP.
+
+  \fIinfo\fP = 2  algorithm estimates that the relative error
+between x and the solution is at most \fItol\fP.
+
+  \fIinfo\fP = 3  conditions for \fIinfo\fP = 1 and \fIinfo\fP = 2 both hold.
+
+  \fIinfo\fP = 4  \fIfvec\fP is orthogonal to the columns of the
+Jacobian to machine precision.
+
+  \fIinfo\fP = 5  number of calls to \fIfcn\fP has reached or
+exceeded 100*(\fIn\fP+1).
+
+  \fIinfo\fP = 6  \fItol\fP is too small. no further reduction in
+the sum of squares is possible.
+
+  \fIinfo\fP = 7  \fItol\fP is too small. no further improvement in
+the approximate solution x is possible.
+
+\fIwa\fP is a work array of length \fIlwa\fP.
+
+\fIlwa\fP is an integer input variable not less than \fIm\fP*\fIn\fP +
+5*\fIn\fP + \fIm\fP for \fBlmder1\fP, or 5*\fIn\fP+\fIm\fP for \fBlmstr1_\fP.
+.br
+.SS Parameters for \fBlmstr_\fP
+
+\fIftol\fP is a nonnegative input variable. Termination
+occurs when both the actual and predicted relative
+reductions in the sum of squares are at most \fIftol\fP.
+Therefore, \fIftol\fP measures the relative error desired
+in the sum of squares.
+
+\fIxtol\fP is a nonnegative input variable. Termination
+occurs when the relative error between two consecutive
+iterates is at most \fIxtol\fP. Therefore, \fIxtol\fP measures the
+relative error desired in the approximate solution.
+
+\fIgtol\fP is a nonnegative input variable. Termination
+occurs when the cosine of the angle between \fIfvec\fP and
+any column of the Jacobian is at most \fIgtol\fP in absolute
+value. Therefore, \fIgtol\fP measures the orthogonality
+desired between the function vector and the columns
+of the Jacobian.
+
+\fImaxfev\fP is a positive integer input variable. Termination
+occurs when the number of calls to \fIfcn\fP is at least
+\fImaxfev\fP by the end of an iteration.
+
+\fIdiag\fP is an array of length \fIn\fP. If \fImode\fP = 1 (see
+below), \fIdiag\fP is internally set. If \fImode\fP = 2, \fIdiag\fP
+must contain positive entries that serve as
+multiplicative scale factors for the variables.
+
+\fImode\fP is an integer input variable. If \fImode\fP = 1, the
+variables will be scaled internally. If \fImode\fP = 2,
+the scaling is specified by the input \fIdiag\fP. Other
+values of mode are equivalent to \fImode\fP = 1.
+
+\fIfactor\fP is a positive input variable used in determining the
+initial step bound. This bound is set to the product of \fIfactor\fP
+and the euclidean norm of \fIdiag\fP*\fIx\fP if the latter is
+nonzero, or else to \fIfactor\fP itself. In most cases factor should
+lie in the interval (.1,100.). 100. is a generally recommended
+value.
+
+\fInprint\fP is an integer input variable that enables controlled
+printing of iterates if it is positive. In this case, fcn is called
+with \fIiflag\fP = 0 at the beginning of the first iteration and
+every \fInprint\fP iterations thereafter and immediately prior to
+return, with \fIx\fP and \fIfvec\fP available for printing. If
+\fInprint\fP is not positive, no special calls of fcn with
+\fIiflag\fP = 0 are made.
+
+\fIinfo\fP is an integer output variable. If the user has
+terminated execution, info is set to the (negative)
+value of iflag. See description of fcn. Otherwise,
+info is set as follows.
+
+  \fIinfo\fP = 0  improper input parameters.
+
+  \fIinfo\fP = 1  both actual and predicted relative reductions
+in the sum of squares are at most \fIftol\fP.
+
+  \fIinfo\fP = 2  relative error between two consecutive iterates
+is at most \fIxtol\fP.
+
+  \fIinfo\fP = 3  conditions for \fIinfo\fP = 1 and \fIinfo\fP = 2 both hold.
+
+  \fIinfo\fP = 4  the cosine of the angle between fvec and any
+column of the Jacobian is at most gtol in absolute value.
+
+  \fIinfo\fP = 5  number of calls to \fIfcn\fP has reached or
+exceeded maxfev.
+
+  \fIinfo\fP = 6  \fIftol\fP is too small. No further reduction in
+the sum of squares is possible.
+
+  \fIinfo\fP = 7  \fIxtol\fP is too small. No further improvement in
+the approximate solution x is possible.
+
+  \fIinfo\fP = 8 \fIgtol\fP is too small. \fIfvec\fP is orthogonal to
+the columns of the Jacobian to machine precision.
+
+\fInfev\fP is an integer output variable set to the number of
+calls to \fIfcn\fP with \fIiflag\fP = 1.
+
+\fInjev\fP is an integer output variable set to the number of
+calls to fcn with \fIiflag\fP = 2.
+
+\fIipvt\fP is an integer output array of length \fIn\fP. \fIipvt\fP
+defines a permutation matrix \fIp\fP such that \fIjac\fP*\fIp\fP =
+\fIq\fP*\fIr\fP, where \fIjac\fP is the final calculated Jacobian,
+\fIq\fP is orthogonal (not stored), and \fIr\fP is upper triangular
+with diagonal elements of nonincreasing magnitude.  Column \fBj\fP
+of \fIp\fP is column \fIipvt\fP(\fBj\fP) of the identity matrix.
+
+\fIqtf\fP is an output array of length \fIn\fP which contains
+the first \fIn\fP elements of the vector (\fIq\fP transpose)*\fIfvec\fP.
+
+\fIwa1\fP, \fIwa2\fP, and \fIwa3\fP are work arrays of length \fIn\fP.
+
+\fIwa4\fP is a work array of length \fIm\fP.
+.br
+.SH SEE ALSO
+.BR lmdif (3),
+.BR lmdif1 (3),
+.BR lmder (3),
+.BR lmder1 (3).
+.br
+.SH AUTHORS
+Jorge More', Burt Garbow, and Ken Hillstrom at Argonne National Laboratory.
+This manual page was written by Jim Van Zandt <jrv at debian.org>,
+for the Debian GNU/Linux system (but may be used by others).

Added: packages/minpack/trunk/debian/minpack-dev.dirs
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/minpack-dev.dirs?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/minpack-dev.dirs (added)
+++ packages/minpack/trunk/debian/minpack-dev.dirs Wed Aug  3 20:35:37 2011
@@ -1,0 +1,2 @@
+usr/lib
+usr/include

Added: packages/minpack/trunk/debian/minpack-dev.files
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/minpack-dev.files?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/minpack-dev.files (added)
+++ packages/minpack/trunk/debian/minpack-dev.files Wed Aug  3 20:35:37 2011
@@ -1,0 +1,5 @@
+usr/include/*
+usr/lib/lib*.a
+usr/lib/lib*.la 
+usr/lib/lib*.so
+usr/share/man/man3/*.3

Added: packages/minpack/trunk/debian/patch
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/patch?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/patch (added)
+++ packages/minpack/trunk/debian/patch Wed Aug  3 20:35:37 2011
@@ -1,0 +1,33 @@
+
+--- hybrj_.3.orig	2009-01-02 18:19:15.000000000 +0100
++++ hybrj_.3	2009-01-02 18:23:47.000000000 +0100
+@@ -14,7 +14,7 @@
+ .BI "void hybrj1_ (void (*" fcn ")(int *" n  , 
+ .BI "double *" x , 
+ .BI "double *" fvec , 
+-.BI "double *" fjec , 
++.BI "double *" fjac , 
+ .BI "int *" ldfjac , 
+ .BI "int *" iflag ), 
+ .RS 4
+@@ -35,7 +35,7 @@
+ .BI "void hybrj_ (void (*" fcn ")(int *" n , 
+ .BI "double *" x , 
+ .BI "double *" fvec , 
+-.BI "double *" fjec ,
++.BI "double *" fjac ,
+ .BI "int *" ldfjac , 
+ .BI "int *" iflag ), 
+ .RS 4
+@@ -72,8 +72,8 @@
+ The purpose of \fBhybrj_\fP is to find a zero of a system of
+ \fIn\fP nonlinear functions in \fIn\fP variables by a modification
+ of the Powell hybrid method. The user must provide a
+-subroutine which calculates the functions. The Jacobian is
+-then calculated by a forward-difference approximation.
++subroutine which calculates the functions and a subroutine which calculates
++the Jacobian.
+ .PP
+ \fBhybrj1_\fP serves the same function but has a simplified calling
+ sequence.
+

Added: packages/minpack/trunk/debian/rules
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/rules?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/rules (added)
+++ packages/minpack/trunk/debian/rules Wed Aug  3 20:35:37 2011
@@ -1,0 +1,111 @@
+#!/usr/bin/make -f
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# option 2, assuming the library is created as .libs/libfoo.so.2.0.5 or so
+version=`ls .libs/lib*.so.* | \
+ awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'`
+major=`ls .libs/lib*.so.* | \
+ awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'`
+
+FFLAGS = -Wall -g
+INSTALL = install
+INSTALL_FILE    = $(INSTALL) -p    -o root -g root  -m  644
+INSTALL_PROGRAM = $(INSTALL) -p    -o root -g root  -m  755
+INSTALL_SCRIPT  = $(INSTALL) -p    -o root -g root  -m  755
+INSTALL_DIR     = $(INSTALL) -p -d -o root -g root  -m  755
+
+ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
+    FFLAGS += -O0
+else
+    FFLAGS += -O2
+endif
+ifeq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
+    INSTALL_PROGRAM += -s
+endif
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))    MAKEFLAGS += -j$(NUMJOBS)
+endif
+# FIXME parallel builds don't work
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	# Add here commands to configure the package.
+
+	touch configure-stamp
+
+fresh:
+	autoreconf -v -i
+
+build: build-stamp
+build-stamp: configure-stamp 
+	dh_testdir
+
+	# Add here commands to compile the package.
+	chmod +x configure	# was added by Debian patch, so had wrong permissions
+	F77=gfortran ./configure --prefix=/usr
+	$(MAKE) $(MAKEFLAGS) FFLAGS="$(FFLAGS)"
+
+	touch build-stamp
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp configure-stamp conftest
+
+	# Add here commands to clean up after the build process.
+	[ ! -f Makefile ] || $(MAKE) distclean
+
+	dh_clean
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs
+
+	# Add here commands to install the package into debian/tmp
+	# (dh_movefiles moves them to the final locations)
+	$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+	install -D -m 644 ex/file06 debian/minpack-dev/usr/share/doc/minpack-dev/minpack-documentation.txt
+
+# 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_movefiles
+
+#	dh_installdebconf	
+	dh_installdocs
+	dh_installexamples debian/Makefile debian/t*.c
+	dh_installmenu
+#	dh_installlogrotate
+#	dh_installemacsen
+#	dh_installpam
+#	dh_installmime
+#	dh_installinit
+	dh_installcron
+	dh_installman debian/*.3
+	dh_installinfo
+#	dh_undocumented
+	dh_installchangelogs 
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+	dh_makeshlibs
+	dh_installdeb
+#	dh_perl
+	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/minpack/trunk/debian/rules
------------------------------------------------------------------------------
    svn:executable = *

Added: packages/minpack/trunk/debian/tchkder.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tchkder.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tchkder.c (added)
+++ packages/minpack/trunk/debian/tchkder.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,91 @@
+/*      driver for chkder example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *m, int *n, double *x, double *fvec,
+	 double *fjac, int *ldfjac, int *iflag);
+
+int main()
+{
+  int i, m, n, ldfjac, mode;
+  double x[3], fvec[15], fjac[15*3], xp[3], fvecp[15], 
+    err[15];
+  int one=1, two=2;
+
+  m = 15;
+  n = 3;
+
+  /*      the following values should be suitable for */
+  /*      checking the jacobian matrix. */
+
+  x[1-1] = 9.2e-1;
+  x[2-1] = 1.3e-1;
+  x[3-1] = 5.4e-1;
+
+  ldfjac = 15;
+
+  mode = 1;
+  chkder_(&m, &n, x, fvec, fjac, &ldfjac, xp, fvecp, &mode, err);
+  mode = 2;
+  fcn(&m, &n, x, fvec, fjac, &ldfjac, &one);
+  fcn(&m, &n, x, fvec, fjac, &ldfjac, &two);
+  fcn(&m, &n, xp, fvecp, fjac, &ldfjac, &one);
+  chkder_(&m, &n, x, fvec, fjac, &ldfjac, xp, fvecp, &mode, err);
+
+  for (i=1; i<=m; i++)
+    {
+      fvecp[i-1] = fvecp[i-1] - fvec[i-1];
+    }
+  printf("\n      fvec\n");  
+  for (i=1; i<=m; i++) printf("%s%15.7g",i%3==1?"\n     ":"", fvec[i-1]);
+  printf("\n      fvecp - fvec\n");  
+  for (i=1; i<=m; i++) printf("%s%15.7g",i%3==1?"\n     ":"", fvecp[i-1]);
+  printf("\n      err\n");  
+  for (i=1; i<=m; i++) printf("%s%15.7g",i%3==1?"\n     ":"", err[i-1]);
+  printf("\n");
+  return 0;
+}
+
+void fcn(int *m, int *n, double *x, double *fvec,
+	 double *fjac, int *ldfjac, int *iflag)
+{
+  /*      subroutine fcn for chkder example. */
+
+  int i;
+  double tmp1, tmp2, tmp3, tmp4;
+  double y[15]={1.4e-1, 1.8e-1, 2.2e-1, 2.5e-1, 2.9e-1, 3.2e-1, 3.5e-1,
+		3.9e-1, 3.7e-1, 5.8e-1, 7.3e-1, 9.6e-1, 1.34, 2.1, 4.39};
+
+  
+  if (*iflag != 2) 
+
+    for (i=1; i<=15; i++)
+      {
+	tmp1 = i;
+	tmp2 = 16 - i;
+	tmp3 = tmp1;
+	if (i > 8) tmp3 = tmp2;
+	fvec[i-1] = y[i-1] - (x[1-1] + tmp1/(x[2-1]*tmp2 + x[3-1]*tmp3));
+      }
+  else
+    {
+      for (i = 1; i <= 15; i++)
+	{
+	  tmp1 = i;
+	  tmp2 = 16 - i;
+	  
+	  /* error introduced into next statement for illustration. */
+	  /* corrected statement should read    tmp3 = tmp1 . */
+	  
+	  tmp3 = tmp2;
+	  if (i > 8) tmp3 = tmp2;
+	  tmp4 = (x[2-1]*tmp2 + x[3-1]*tmp3); tmp4=tmp4*tmp4;
+	  fjac[i-1+ *ldfjac*(1-1)] = -1.;
+	  fjac[i-1+ *ldfjac*(2-1)] = tmp1*tmp2/tmp4;
+	  fjac[i-1+ *ldfjac*(3-1)] = tmp1*tmp3/tmp4;
+	}
+    }
+  return;
+}

Added: packages/minpack/trunk/debian/thybrd.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/thybrd.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/thybrd.c (added)
+++ packages/minpack/trunk/debian/thybrd.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,86 @@
+/*      driver for hybrd example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *n, double *x, double *fvec, int *iflag);
+
+int main()
+{
+  int j, n, maxfev, ml, mu, mode, nprint, info, nfev, ldfjac, lr;
+  double xtol, epsfcn, factor, fnorm;
+  double x[9], fvec[9], diag[9], fjac[9*9], r[45], qtf[9],
+    wa1[9], wa2[9], wa3[9], wa4[9];
+  int one=1;
+
+  n = 9;
+
+/*      the following starting values provide a rough solution. */
+
+  for (j=1; j<=9; j++)
+    {
+      x[j-1] = -1.;
+    }
+
+  ldfjac = 9;
+  lr = 45;
+
+/*      set xtol to the square root of the machine precision. */
+/*      unless high solutions are required, */
+/*      this is the recommended setting. */
+
+  xtol = sqrt(dpmpar_(&one));
+
+  maxfev = 2000;
+  ml = 1;
+  mu = 1;
+  epsfcn = 0.;
+  mode = 2;
+  for (j=1; j<=9; j++)
+    {
+      diag[j-1] = 1.;
+    }
+
+  factor = 1.e2;
+  nprint = 0;
+
+  hybrd_(&fcn, &n, x, fvec, &xtol, &maxfev, &ml, &mu, &epsfcn,
+	 diag, &mode, &factor, &nprint, &info, &nfev,
+	 fjac, &ldfjac, r, &lr, qtf, wa1, wa2, wa3, wa4);
+  fnorm = enorm_(&n, fvec);
+  printf("     final l2 norm of the residuals %15.7g\n\n", fnorm);
+  printf("     number of function evaluations  %10i\n\n", nfev);
+  printf("     exit parameter                  %10i\n\n", info);
+  printf("     final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+  return 0;
+}
+
+
+void fcn(int *n, double *x, double *fvec, int *iflag)
+{
+  /*      subroutine fcn for hybrd example. */
+
+  int k;
+  double one=1, temp, temp1, temp2, three=3, two=2, zero=0;
+
+  if (iflag == 0)
+    {
+      /*      insert print statements here when nprint is positive. */
+      return;
+    }
+  for (k=1; k<=*n; k++)
+    {
+      
+      temp = (three - two*x[k-1])*x[k-1];
+      temp1 = zero;
+      if (k != 1) temp1 = x[k-1-1];
+      temp2 = zero;
+      if (k != *n) temp2 = x[k+1-1];
+      fvec[k-1] = temp - temp1 - two*temp2 + one;
+    }
+  return;
+}
+

Added: packages/minpack/trunk/debian/thybrd1.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/thybrd1.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/thybrd1.c (added)
+++ packages/minpack/trunk/debian/thybrd1.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,62 @@
+/*      driver for hybrd1 example. */
+
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *n, double *x, double *fvec, int *iflag);
+
+int main()
+{
+  int j, n, info, lwa;
+  double tol, fnorm;
+  double x[9], fvec[9], wa[180];
+  int one=1;
+
+  n = 9;
+
+/*      the following starting values provide a rough solution. */
+
+  for (j=1; j<=9; j++)
+    {
+      x[j-1] = -1.;
+    }
+
+  lwa = 180;
+
+/*      set tol to the square root of the machine precision. */
+/*      unless high solutions are required, */
+/*      this is the recommended setting. */
+
+  tol = sqrt(dpmpar_(&one));
+  hybrd1_(&fcn, &n, x, fvec, &tol, &info, wa, &lwa);
+  fnorm = enorm_(&n, fvec);
+
+  printf("     final L2 norm of the residuals %15.7g\n", fnorm);
+  printf("     exit parameter                 %10i\n", info);
+  printf("     final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g",j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+
+  return 0;
+}
+
+void fcn(int *n, double *x, double *fvec, int *iflag)
+{
+/*      subroutine fcn for hybrd1 example. */
+
+  int k;
+  double one=1, temp, temp1, temp2, three=3, two=2, zero=0;
+
+  for (k=1; k <= *n; k++)
+    {
+      temp = (three - two*x[k-1])*x[k-1];
+      temp1 = zero;
+      if (k != 1) temp1 = x[k-1-1];
+      temp2 = zero;
+      if (k != *n) temp2 = x[k+1-1];
+      fvec[k-1] = temp - temp1 - two*temp2 + one;
+    }
+  return;
+}

Added: packages/minpack/trunk/debian/thybrj.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/thybrj.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/thybrj.c (added)
+++ packages/minpack/trunk/debian/thybrj.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,103 @@
+/*      driver for hybrj example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *n, double *x, double *fvec, double *fjac, int *ldfjac, 
+	 int *iflag);
+
+int main()
+{
+
+  int j, n, ldfjac, maxfev, mode, nprint, info, nfev, njev, lr;
+  double xtol, factor, fnorm;
+  double x[9], fvec[9], fjac[9*9], diag[9], r[45], qtf[9],
+    wa1[9], wa2[9], wa3[9], wa4[9];
+  int one=1;
+
+  n = 9;
+
+/*      the following starting values provide a rough solution. */
+
+  for (j=1; j<=9; j++)
+    {
+      x[j-1] = -1.;
+    }
+
+  ldfjac = 9;
+  lr = 45;
+
+/*      set xtol to the square root of the machine precision. */
+/*      unless high solutions are required, */
+/*      this is the recommended setting. */
+
+  xtol = sqrt(dpmpar_(&one));
+
+  maxfev = 1000;
+  mode = 2;
+  for (j=1; j<=9; j++)
+    {
+      diag[j-1] = 1.;
+    }
+  factor = 1.e2;
+  nprint = 0;
+
+ hybrj_(&fcn, &n, x, fvec, fjac, &ldfjac, &xtol, &maxfev, diag, 
+	&mode, &factor, &nprint, &info, &nfev, &njev, r, &lr, qtf, 
+	wa1, wa2, wa3, wa4);
+ fnorm = enorm_(&n, fvec);
+
+ printf("     final l2 norm of the residuals%15.7g\n\n", fnorm);
+ printf("     number of function evaluations%10i\n\n", nfev);
+ printf("     number of jacobian evaluations%10i\n\n", njev);
+ printf("     exit parameter                %10i\n\n", info);
+ printf("     final approximate solution\n\n");
+ for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+ printf("\n");
+ return 0;
+}
+
+void fcn(int *n, double *x, double *fvec, double *fjac, int *ldfjac, 
+	 int *iflag)
+{
+  
+  /*      subroutine fcn for hybrj example. */
+
+  int j, k;
+  double one=1, temp, temp1, temp2, three=3, two=2, zero=0, four=4;
+
+  if (iflag == 0)
+    {
+      /*      insert print statements here when nprint is positive. */
+      return;
+    }
+
+  if (*iflag != 2) 
+    {
+      for (k=1; k <= *n; k++)
+	{
+	  temp = (three - two*x[k-1])*x[k-1];
+	  temp1 = zero;
+	  if (k != 1) temp1 = x[k-1-1];
+	  temp2 = zero;
+	  if (k != *n) temp2 = x[k+1-1];
+	  fvec[k-1] = temp - temp1 - two*temp2 + one;
+	}
+    }
+  else
+    {
+      for (k = 1; k <= *n; k++)
+	{
+	  for (j=1; j <= *n; j++)
+	    {
+	      fjac[k-1 + *ldfjac*(j-1)] = zero;
+	    }
+	  fjac[k-1 + *ldfjac*(k-1)] = three - four*x[k-1];
+	  if (k != 1) fjac[k-1 + *ldfjac*(k-1-1)] = -one;
+	  if (k != *n) fjac[k-1 + *ldfjac*(k+1-1)] = -two;
+	}      
+    }
+  return;
+}
+

Added: packages/minpack/trunk/debian/thybrj1.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/thybrj1.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/thybrj1.c (added)
+++ packages/minpack/trunk/debian/thybrj1.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,82 @@
+/*      driver for hybrj1 example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *n, double *x, double *fvec, double *fjac, int *ldfjac, 
+	 int *iflag);
+
+int main()
+{
+  int j, n, ldfjac, info, lwa;
+  double tol, fnorm;
+  double x[9], fvec[9], fjac[9*9], wa[99];
+  int one=1;
+
+  n = 9;
+
+/*      the following starting values provide a rough solution. */
+
+  for (j=1; j<=9; j++)
+    {
+      x[j-1] = -1.;
+    }
+
+  ldfjac = 9;
+  lwa = 99;
+
+/*      set tol to the square root of the machine precision. */
+/*      unless high solutions are required, */
+/*      this is the recommended setting. */
+
+  tol = sqrt(dpmpar_(&one));
+
+  hybrj1_(&fcn, &n, x, fvec, fjac, &ldfjac, &tol, &info, wa, &lwa);
+
+  fnorm = enorm_(&n, fvec);
+
+  printf("      final l2 norm of the residuals%15.7g\n\n", fnorm);
+  printf("      exit parameter                %10i\n\n", info);
+  printf("      final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+
+  return 0;
+}
+
+void fcn(int *n, double *x, double *fvec, double *fjac, int *ldfjac, 
+	 int *iflag)
+{
+  /*      subroutine fcn for hybrj1 example. */
+
+  int j, k;
+  double one=1, temp, temp1, temp2, three=3, two=2, zero=0, four=4;
+
+  if (*iflag != 2)
+    {
+      for (k = 1; k <= *n; k++)
+	{
+	  temp = (three - two*x[k-1])*x[k-1];
+	  temp1 = zero;
+	  if (k != 1) temp1 = x[k-1-1];
+	  temp2 = zero;
+	  if (k != *n) temp2 = x[k+1-1];
+	  fvec[k-1] = temp - temp1 - two*temp2 + one;
+	}
+    }
+  else
+    {
+     for (k = 1; k <= *n; k++)
+       {
+	 for (j = 1; j <= *n; j++)
+	   {
+	     fjac[k-1 + *ldfjac*(j-1)] = zero;
+	   }
+         fjac[k-1 + *ldfjac*(k-1)] = three - four*x[k-1];
+         if (k != 1) fjac[k-1 + *ldfjac*(k-1-1)] = -one;
+         if (k != *n) fjac[k-1 + *ldfjac*(k+1-1)] = -two;
+       }
+    }
+  return;
+}

Added: packages/minpack/trunk/debian/tlmder.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tlmder.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tlmder.c (added)
+++ packages/minpack/trunk/debian/tlmder.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,101 @@
+/*      driver for lmder example. */
+
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *m, int *n, double *x, double *fvec, double *fjac, 
+	 int *ldfjac, int *iflag);
+
+int main()
+{
+  int j, m, n, ldfjac, maxfev, mode, nprint, info, nfev, njev;
+  int ipvt[3];
+  double ftol, xtol, gtol, factor, fnorm;
+  double x[3], fvec[15], fjac[15*3], diag[3], qtf[3], 
+    wa1[3], wa2[3], wa3[3], wa4[15];
+  int one=1;
+
+  m = 15;
+  n = 3;
+
+/*      the following starting values provide a rough fit. */
+
+  x[1-1] = 1.;
+  x[2-1] = 1.;
+  x[3-1] = 1.;
+
+  ldfjac = 15;
+
+  /*      set ftol and xtol to the square root of the machine */
+  /*      and gtol to zero. unless high solutions are */
+  /*      required, these are the recommended settings. */
+
+  ftol = sqrt(dpmpar_(&one));
+  xtol = sqrt(dpmpar_(&one));
+  gtol = 0.;
+    
+  maxfev = 400;
+  mode = 1;
+  factor = 1.e2;
+  nprint = 0;
+
+  lmder_(&fcn, &m, &n, x, fvec, fjac, &ldfjac, &ftol, &xtol, &gtol, 
+	&maxfev, diag, &mode, &factor, &nprint, &info, &nfev, &njev, 
+	ipvt, qtf, wa1, wa2, wa3, wa4);
+  fnorm = enorm_(&m, fvec);
+  printf("      final l2 norm of the residuals%15.7g\n\n", fnorm);
+  printf("      number of function evaluations%10i\n\n", nfev);
+  printf("      number of Jacobian evaluations%10i\n\n", njev);
+  printf("      exit parameter                %10i\n\n", info);
+  printf("      final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+  return 0;
+}
+
+void fcn(int *m, int *n, double *x, double *fvec, double *fjac, 
+	 int *ldfjac, int *iflag)
+{      
+
+  /*      subroutine fcn for lmder example. */
+
+  int i;
+  double tmp1, tmp2, tmp3, tmp4;
+  double y[15]={1.4e-1, 1.8e-1, 2.2e-1, 2.5e-1, 2.9e-1, 3.2e-1, 3.5e-1,
+		3.9e-1, 3.7e-1, 5.8e-1, 7.3e-1, 9.6e-1, 1.34, 2.1, 4.39};
+
+  if (*iflag == 0) 
+    {
+      /*      insert print statements here when nprint is positive. */
+      return;
+    }
+
+  if (*iflag != 2) 
+    {
+      for (i=1; i <= 15; i++)
+	{
+	  tmp1 = i;
+	  tmp2 = 16 - i;
+	  tmp3 = tmp1;
+	  if (i > 8) tmp3 = tmp2;
+	  fvec[i-1] = y[i-1] - (x[1-1] + tmp1/(x[2-1]*tmp2 + x[3-1]*tmp3));
+	}
+    }
+  else
+    {
+      for (i=1; i<=15; i++)
+	{
+	  tmp1 = i;
+	  tmp2 = 16 - i;
+	  tmp3 = tmp1;
+	  if (i > 8) tmp3 = tmp2;
+	  tmp4 = (x[2-1]*tmp2 + x[3-1]*tmp3); tmp4 = tmp4*tmp4;
+	  fjac[i-1 + *ldfjac*(1-1)] = -1.;
+	  fjac[i-1 + *ldfjac*(2-1)] = tmp1*tmp2/tmp4;
+	  fjac[i-1 + *ldfjac*(3-1)] = tmp1*tmp3/tmp4;
+	};
+    }
+  return;
+}

Added: packages/minpack/trunk/debian/tlmder1.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tlmder1.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tlmder1.c (added)
+++ packages/minpack/trunk/debian/tlmder1.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,85 @@
+/*      driver for lmder1 example. */
+
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *m, int *n, double *x, double *fvec, double *fjac, 
+	 int *ldfjac, int *iflag);
+
+int main()
+{
+  int j, m, n, ldfjac, info, lwa;
+  int ipvt[3];
+  double tol, fnorm;
+  double x[3], fvec[15], fjac[15*3], wa[30];
+  int one=1;
+
+  m = 15;
+  n = 3;
+
+/*      the following starting values provide a rough fit. */
+
+  x[1-1] = 1.;
+  x[2-1] = 1.;
+  x[3-1] = 1.;
+
+  ldfjac = 15;
+  lwa = 30;
+
+/*      set tol to the square root of the machine precision. */
+/*      unless high solutions are required, */
+/*      this is the recommended setting. */
+
+  tol = sqrt(dpmpar_(&one));
+
+  lmder1_(&fcn, &m, &n, x, fvec, fjac, &ldfjac, &tol, 
+	  &info, ipvt, wa, &lwa);
+  fnorm = enorm_(&m, fvec);
+  printf("      final l2 norm of the residuals%15.7g\n\n", fnorm);
+  printf("      exit parameter                %10i\n\n", info);
+  printf("      final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+
+  return 0;
+}
+
+void fcn(int *m, int *n, double *x, double *fvec, double *fjac, 
+	 int *ldfjac, int *iflag)
+{
+
+/*      subroutine fcn for lmder1 example. */
+
+  int i;
+  double tmp1, tmp2, tmp3, tmp4;
+  double y[15] = {1.4e-1, 1.8e-1, 2.2e-1, 2.5e-1, 2.9e-1, 3.2e-1, 3.5e-1,
+		  3.9e-1, 3.7e-1, 5.8e-1, 7.3e-1, 9.6e-1, 1.34, 2.1, 4.39};
+
+  if (*iflag != 2)
+    {
+      for (i = 1; i <= 15; i++)
+	{
+	  tmp1 = i;
+	  tmp2 = 16 - i;
+	  tmp3 = tmp1;
+	  if (i > 8) tmp3 = tmp2;
+	  fvec[i-1] = y[i-1] - (x[1-1] + tmp1/(x[2-1]*tmp2 + x[3-1]*tmp3));
+	}
+    }
+  else
+    {
+      for ( i = 1; i <= 15; i++)
+	{
+	  tmp1 = i;
+	  tmp2 = 16 - i;
+	  tmp3 = tmp1;
+	  if (i > 8) tmp3 = tmp2;
+	  tmp4 = (x[2-1]*tmp2 + x[3-1]*tmp3); tmp4 = tmp4*tmp4;
+	  fjac[i-1 + *ldfjac*(1-1)] = -1.;
+	  fjac[i-1 + *ldfjac*(2-1)] = tmp1*tmp2/tmp4;
+	  fjac[i-1 + *ldfjac*(3-1)] = tmp1*tmp3/tmp4;
+	}
+    }
+}

Added: packages/minpack/trunk/debian/tlmdif.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tlmdif.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tlmdif.c (added)
+++ packages/minpack/trunk/debian/tlmdif.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,82 @@
+/*      driver for lmdif example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *m, int *n, double *x, double *fvec, int *iflag);
+
+int main()
+{
+  int j, m, n, maxfev, mode, nprint, info, nfev, ldfjac;
+  int ipvt[3];
+  double ftol, xtol, gtol, epsfcn, factor, fnorm;
+  double x[3], fvec[15], diag[3], fjac[15*3], qtf[3], 
+    wa1[3], wa2[3], wa3[3], wa4[15];
+  int one=1;
+
+  m = 15;
+  n = 3;
+
+/*      the following starting values provide a rough fit. */
+
+  x[1-1] = 1.;
+  x[2-1] = 1.;
+  x[3-1] = 1.;
+
+  ldfjac = 15;
+
+  /*      set ftol and xtol to the square root of the machine */
+  /*      and gtol to zero. unless high solutions are */
+  /*      required, these are the recommended settings. */
+
+  ftol = sqrt(dpmpar_(&one));
+  xtol = sqrt(dpmpar_(&one));
+  gtol = 0.;
+
+  maxfev = 800;
+  epsfcn = 0.;
+  mode = 1;
+  factor = 1.e2;
+  nprint = 0;
+
+  lmdif_(&fcn, &m, &n, x, fvec, &ftol, &xtol, &gtol, &maxfev, &epsfcn, 
+	 diag, &mode, &factor, &nprint, &info, &nfev, fjac, &ldfjac, 
+	 ipvt, qtf, wa1, wa2, wa3, wa4);
+
+  fnorm = enorm_(&m, fvec);
+
+  printf("      final l2 norm of the residuals%15.7g\n\n", fnorm);
+  printf("      number of function evaluations%10i\n\n", nfev);
+  printf("      exit parameter                %10i\n\n", info);
+  printf("      final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+  return 0;
+}
+
+void fcn(int *m, int *n, double *x, double *fvec, int *iflag)
+{
+
+/*      subroutine fcn for lmdif example. */
+
+  int i;
+  double tmp1, tmp2, tmp3;
+  double y[15]={1.4e-1, 1.8e-1, 2.2e-1, 2.5e-1, 2.9e-1, 3.2e-1, 3.5e-1,
+		3.9e-1, 3.7e-1, 5.8e-1, 7.3e-1, 9.6e-1, 1.34, 2.1, 4.39};
+
+  if (*iflag == 0)
+    {
+      /*      insert print statements here when nprint is positive. */
+      return;
+    }
+  for (i = 1; i <= 15; i++)
+    {
+      tmp1 = i;
+      tmp2 = 16 - i;
+      tmp3 = tmp1;
+      if (i > 8) tmp3 = tmp2;
+      fvec[i-1] = y[i-1] - (x[1-1] + tmp1/(x[2-1]*tmp2 + x[3-1]*tmp3));
+    }
+  return;
+}

Added: packages/minpack/trunk/debian/tlmdif1.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tlmdif1.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tlmdif1.c (added)
+++ packages/minpack/trunk/debian/tlmdif1.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,61 @@
+
+
+/*     driver for lmdif1 example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+int main()
+{
+  int m, n, info, lwa, iwa[3], one=1;
+  double tol, fnorm, x[3], fvec[15], wa[75];
+  extern void fcn();
+
+  m = 15;
+  n = 3;
+
+  /* the following starting values provide a rough fit. */
+
+  x[0] = 1.e0;
+  x[1] = 1.e0;
+  x[2] = 1.e0;
+
+  lwa = 75;
+
+  /* set tol to the square root of the machine precision.  unless high
+     precision solutions are required, this is the recommended
+     setting. */
+
+  tol = sqrt(dpmpar_(&one));
+
+  lmdif1_(&fcn, &m, &n, x, fvec, &tol, &info, iwa, wa, &lwa);
+
+  fnorm = enorm_(&m, fvec);
+
+  printf("      FINAL L2 NORM OF THE RESIDUALS%15.7f\n\n",fnorm);
+  printf("      EXIT PARAMETER                %10i\n\n", info);
+  printf("      FINAL APPROXIMATE SOLUTION\n\n %15.7f%15.7f%15.7f\n",
+	 x[0], x[1], x[2]);
+  return 0;
+}
+
+void fcn(int m, int n, double *x, double *fvec, int *iflag)
+{
+  /* function fcn for lmdif1 example */
+
+  int i;
+  double tmp1,tmp2,tmp3;
+  double y[15]={1.4e-1,1.8e-1,2.2e-1,2.5e-1,2.9e-1,3.2e-1,3.5e-1,3.9e-1,
+		3.7e-1,5.8e-1,7.3e-1,9.6e-1,1.34e0,2.1e0,4.39e0};
+
+  for (i=0; i<15; i++)
+    {
+      tmp1 = i+1;
+      tmp2 = 15 - i;
+      tmp3 = tmp1;
+      
+      if (i >= 8) tmp3 = tmp2;
+      fvec[i] = y[i] - (x[0] + tmp1/(x[1]*tmp2 + x[2]*tmp3));
+    }
+}

Added: packages/minpack/trunk/debian/tlmstr.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tlmstr.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tlmstr.c (added)
+++ packages/minpack/trunk/debian/tlmstr.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,97 @@
+/*      driver for lmstr example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void fcn(int *m, int *n, double *x, double *fvec, double *fjrow, int *iflag);
+
+int main()
+{
+  int j, m, n, ldfjac, maxfev, mode, nprint, info, nfev, njev;
+  int ipvt[3];
+  double ftol, xtol, gtol, factor, fnorm;
+  double x[3], fvec[15], fjac[3*3], diag[3], qtf[3], 
+    wa1[3], wa2[3], wa3[3], wa4[15];
+  int one=1;
+
+  m = 15;
+  n = 3;
+
+  /*      the following starting values provide a rough fit. */
+
+  x[1-1] = 1.;
+  x[2-1] = 1.;
+  x[3-1] = 1.;
+
+  ldfjac = 3;
+
+  /*      set ftol and xtol to the square root of the machine */
+  /*      and gtol to zero. unless high solutions are */
+  /*      required, these are the recommended settings. */
+
+  ftol = sqrt(dpmpar_(&one));
+  xtol = sqrt(dpmpar_(&one));
+  gtol = 0.;
+
+  maxfev = 400;
+  mode = 1;
+  factor = 1.e2;
+  nprint = 0;
+
+  lmstr_(&fcn, &m, &n, x, fvec, fjac, &ldfjac, &ftol, &xtol, &gtol, 
+	&maxfev, diag, &mode, &factor, &nprint, &info, &nfev, &njev, 
+	ipvt, qtf, wa1, wa2, wa3, wa4);
+  fnorm = enorm_(&m, fvec);
+
+  printf("      final L2 norm of the residuals%15.7g\n\n", fnorm);
+  printf("      number of function evaluations%10i\n\n", nfev);
+  printf("      number of Jacobian evaluations%10i\n\n", njev);
+  printf("      exit parameter                %10i\n\n", info);
+  printf("      final approximate solution\n");
+  for (j=1; j<=n; j++) printf("%s%15.7g", j%3==1?"\n     ":"", x[j-1]);
+  printf("\n");
+
+  return 0;
+}
+
+void fcn(int *m, int *n, double *x, double *fvec, double *fjrow, int *iflag)
+{
+
+  /*      subroutine fcn for lmstr example. */
+
+  int i;
+  double tmp1, tmp2, tmp3, tmp4;
+  double y[15]={1.4e-1, 1.8e-1, 2.2e-1, 2.5e-1, 2.9e-1, 3.2e-1, 3.5e-1,
+		3.9e-1, 3.7e-1, 5.8e-1, 7.3e-1, 9.6e-1, 1.34, 2.1, 4.39};
+
+  if (*iflag == 0)
+    {
+      /*      insert print statements here when nprint is positive. */
+      return;
+    }
+  if (*iflag < 2)
+    {
+      for (i = 1; i <= 15; i++)
+	{
+	  tmp1 = i;
+	  tmp2 = 16 - i;
+	  tmp3 = tmp1;
+	  if (i > 8) tmp3 = tmp2;
+	  fvec[i-1] = y[i-1] - (x[1-1] + tmp1/(x[2-1]*tmp2 + x[3-1]*tmp3));
+}
+			 }
+else
+  {
+    i = *iflag - 1;
+    tmp1 = i;
+    tmp2 = 16 - i;
+    tmp3 = tmp1;
+    if (i > 8) tmp3 = tmp2;
+    tmp4 = (x[2-1]*tmp2 + x[3-1]*tmp3); tmp4 = tmp4*tmp4;
+    fjrow[1-1] = -1.;
+    fjrow[2-1] = tmp1*tmp2/tmp4;
+    fjrow[3-1] = tmp1*tmp3/tmp4;
+  }
+  return;
+}

Added: packages/minpack/trunk/debian/tlmstr1.c
URL: http://svn.debian.org/wsvn/debian-science/packages/minpack/trunk/debian/tlmstr1.c?rev=38660&op=file
==============================================================================
--- packages/minpack/trunk/debian/tlmstr1.c (added)
+++ packages/minpack/trunk/debian/tlmstr1.c Wed Aug  3 20:35:37 2011
@@ -1,0 +1,78 @@
+/*    driver for lmstr1 example. */
+
+#include <stdio.h>
+#include <math.h>
+#include <minpack.h>
+
+void  fcn(int *m, int *n, double *x, double *fvec, double *fjrow, int *iflag);
+
+int main()
+{
+  int m, n, ldfjac, info, lwa, ipvt[3], one=1;
+  double tol, fnorm;
+  double x[3], fvec[15], fjac[9], wa[30];
+
+  m = 15;
+  n = 3;
+
+  /*     the following starting values provide a rough fit. */
+
+  x[1] = 1.;
+  x[2] = 1.;
+  x[3] = 1.;
+
+  ldfjac = 3;
+  lwa = 30;
+
+  /*     set tol to the square root of the machine precision.
+     unless high precision solutions are required,
+     this is the recommended setting. */
+
+  tol = sqrt(dpmpar_(&one));
+
+  lmstr1_(&fcn, &m, &n, 
+	  x, fvec, fjac, &ldfjac, 
+	  &tol, &info, ipvt, wa, &lwa);
+
+  fnorm = enorm_(&m, fvec);
+
+  printf("      FINAL L2 NORM OF THE RESIDUALS%15.7g\n\n", fnorm);
+  printf("      EXIT PARAMETER                %10i\n\n", info);
+  printf("      FINAL APPROXIMATE SOLUTION\n\n%15.7g%15.7g%15.7g\n",
+	 x[0], x[1], x[2]);
+
+  return 0;
+}
+
+void  fcn(int *m, int *n, double *x, double *fvec, double *fjrow, int *iflag)
+{
+  /*  subroutine fcn for lmstr1 example. */
+  int i;
+  double tmp1, tmp2, tmp3, tmp4;
+  double y[15]={1.4e-1, 1.8e-1, 2.2e-1, 2.5e-1, 2.9e-1, 3.2e-1, 3.5e-1,
+		3.9e-1, 3.7e-1, 5.8e-1, 7.3e-1, 9.6e-1, 1.34, 2.1, 4.39};
+
+  if (*iflag < 2)
+    {
+      for (i=1; i<=15; i++)
+	{
+	  tmp1=i;
+	  tmp2 = 16-i;
+	  tmp3 = tmp1;
+	  if (i > 8) tmp3 = tmp2;
+	  fvec[i-1] = y[i-1] - (x[1-1] + tmp1/(x[2-1]*tmp2 + x[3-1]*tmp3));
+	}
+    }
+  else
+    {
+      i = *iflag - 1;
+      tmp1 = i;
+      tmp2 = 16 - i;
+      tmp3 = tmp1;
+      if (i > 8) tmp3 = tmp2;
+      tmp4 = (x[2-1]*tmp2 + x[3-1]*tmp3); tmp4=tmp4*tmp4;
+      fjrow[1-1] = -1;
+      fjrow[2-1] = tmp1*tmp2/tmp4;
+      fjrow[3-1] = tmp1*tmp3/tmp4;
+    }
+}




More information about the debian-science-commits mailing list