tclode

All Top-level Files
Login

Files in the top-level directory in any check-in


odesolv - Initial value problem solver for Tcl

This package is a Tcl extension for the solution of Ordinary
Differential Equations (ODE's).  Refer to the user documentation
in the 'doc/' directory for more details on its use.

Copyright (c) 2007 by Kevin B. Kenny.  All rights reserved.

This package is a freely available open source package.  You can do
virtually anything you like with it, such as modifying it, redistributing
it, and selling it either in whole or in part.  See the file
"license.terms" for complete information.

CONTENTS
========
The following is a short description of the files you will find in
the sample extension.

aclocal.m4	Generated file.  Do not edit.  Autoconf uses this as input
		when generating the final configure script.  See "tcl.m4"
		below.

ChangeLog	Log of changes made when developers have updated this module.

configure	Generated file.  Do not edit.  This must be regenerated
		anytime configure.in or tclconfig/tcl.m4 changes.

configure.in	Configure script template.  Autoconf uses this file as input
		to produce the final configure script.

license.terms   Legal terms under which this package may be redistributed.

Makefile.in	Makefile template.  The configure script uses this file to
		produce the final Makefile.

pkgIndex.tcl.in Package index template.  The configure script will use
		this file as input to create pkgIndex.tcl.

README		This file

blas/           Fortran source code for several modules of the Basic
                Linear Algebra System that are used in the solver.  These
                files are taken as input when a developer runs
                'make fortran-sources' and produce corresponding C files in
                the 'generic/' directory.  Current versions of these files
                should be available from netlib.org.

doc/            Documentation source code for this package.

f2c/            Contains the files from a the 'f2c' compiler distribution
                (available from netlib.org) that are needed to build the
                tclode package.

	f2c.h		Basic header file with the F2C definitions.

generic/	Contains C sources for all the object code included in the
		'tclode' package.  Much of this material is either copied from
		'libf2c' or built by applying the 'f2c' compiler to code in
		the 'blas/' or 'odepack/' directories when a developer
		runs 'make fortran-sources'

libf2c/		Contains C sources for the 'f2c' runtime library routines that
		the Fortran code in this package requires.  Updated versions
		of the routines should be available from 'netlib.org'

odepack/	Contains the Fortran source code for the ODEPACK routines
		that this package uses to solve ODE's.  Updated versions of the
		routines should be available from 'netlib.org'.

tclconfig/	This directory contains various template files that build
		the configure script.  They should not need modification.

	install-sh	Program used for copying binaries and script files
			to their install locations.

	tcl.m4		Collection of Tcl autoconf macros.  Included by
			aclocal.m4 to define SC_* macros.

tests/		This directory contains a set of scripts used by 'make test'
                to test a build of 'tclode'.

tools/		This directory contains tools that are used by developers
                when maintaining 'tclode'

	adapt-fortran.tcl Program that takes a C source code output
                          from 'f2c' and adapts it to use thread-specific
			  data in place of COMMON blocks.


UNIX BUILD
==========

Building under most UNIX systems is easy, just run the configure script
and then run make. For more information about the build process, see
the tcl/unix/README file in the Tcl src dist. The following minimal
example will install the extension in the /opt/tcl directory.

	$ cd tclode
	$ ./configure --prefix=/opt/tcl
	$ make
	$ make install

WINDOWS BUILD
=============

The recommended method to build extensions under windows is to use the
Msys + Mingw build process. This provides a Unix-style build while
generating native Windows binaries. Using the Msys + Mingw build tools
means that you can use the same configure script as per the Unix build
to create a Makefile. See the tcl/win/README file for the URL of
the Msys + Mingw download.

If you have VC++ then you may install only Msys (without Mingw) and
build by prefixing the './configure' line with 'CC=cl'; the configurator
will create a Makefile suitable for Msys's 'make' command that
uses VC++ in place of mingw's 'gcc'.

INSTALLATION
============

The installation of a TEA package is structure like so:

         $exec_prefix
          /       \
        lib       bin
         |         |
   PACKAGEx.y   (dependent .dll files on Windows)
         |
  pkgIndex.tcl (.so|.dll files)

The main .so|.dll library file gets installed in the versioned PACKAGE
directory, which is OK on all platforms because it will be directly
referenced with by 'load' in the pkgIndex.tcl file.  Dependent DLL files on
Windows must go in the bin directory (or other directory on the user's
PATH) in order for them to be found.