Julian Boundary/Finite Element Software

by Adam Powell and Vinod Tewary

Version 0.0.2, built for sgi mips running irix6.5


Documentation Formats:
dvi (20 kB, no figures)
gzipped PostScript (52 kB)
PostScript (120 kB)
HTML (multiple pages totaling 180 kB)
.tar.gz HTML directory (80 kB)
If you need a PostScript previewer, try GSview
This is the documentation starting point for Julian, a boundary/finite element method (BEM/FEM) package written at NIST. Julian is named after the late Professor Julian Szekely of MIT, who was a pioneer in the use of mathematical modeling (including the finite element method) to improve materials processing operations (and also Adam Powell's advisor).  Because it is being developed in cooperation with the CTCMS GF/BEM Working Group, the focus is on boundary element methods, but it was recognized early on that many of the library methods provide functionality useful for finite element methods, and so it is distributed as a single package.

To date, much work has been done on libelem, the main library, which defines the matrix, mesh and bem object classes, gives the equation API, and will soon have an object class fem.  The 1.0 release will also have a CORBA interface, a CLI front-end (which will use the readline library if license issues can be worked out), and a GTK+ GUI, possibly with full GNOME integration.  Much help in compiling the shared libraries for various platforms comes from the GNU Autoconf, Automake and Libtool packages, and internationalization is provided by the Gettext system.

In the long run, there will be some need for a pre- and post-processor, which can be built using Mesa, which is an open-source implementation of SGI OpenGL.  In addition, as the project accumulates more user/developers, we will want to put it on a CVS server to facilitate code management and version control.

This package requires the standard BLAS (Basic Linear Algebra Subroutines) library.  It is typically found on Unix(-like) systems as the file /usr/lib/libblas.so.  If you do not have BLAS installed on your system, you can get source code here (note these makefile generates only a static library, whereas Julian requires a shared library, which you must generate; unfortunately there is no portable LGPL BLAS implementation known to the author).  You should be aware that hand-built versions of this library exist for many systems, and can run many times faster than that compiled from these sources.  You can download such hand-built BLAS implementations for the following platforms:

(Non-)copyright notice:
"This software was developed at the National Institute of Standards and Technology by employees of the Federal Government in the course of their official duties. Pursuant to title 17 Section 105 of the United States Code this software is not subject to copyright protection and is in the public domain.

We would appreciate acknowledgement if the software is used."

Adam Powell