diff options
author | Thomas Gellekum <tg@FreeBSD.org> | 1997-09-16 07:05:00 +0000 |
---|---|---|
committer | Thomas Gellekum <tg@FreeBSD.org> | 1997-09-16 07:05:00 +0000 |
commit | 2b4ca0d2c493fa49191bd6a96d4ce3880702ac47 (patch) | |
tree | 1acb4fc95232361269c533f809f15af6917b1806 /math/femlab | |
parent | 4ed6a89e137cab89973a20e6a495d54ee6461b9d (diff) | |
download | ports-2b4ca0d2c493fa49191bd6a96d4ce3880702ac47.tar.gz ports-2b4ca0d2c493fa49191bd6a96d4ce3880702ac47.zip |
Import of femlab port. femlab solves PDEs in 2D using the
finite element method.
PR: 4531
Submitted by: Pedro Giffuni <giffunip@asme.org>
Notes
Notes:
svn path=/head/; revision=7925
Diffstat (limited to 'math/femlab')
-rw-r--r-- | math/femlab/Makefile | 43 | ||||
-rw-r--r-- | math/femlab/distinfo | 1 | ||||
-rw-r--r-- | math/femlab/files/femlab.sh | 6 | ||||
-rw-r--r-- | math/femlab/files/patch-aa | 31 | ||||
-rw-r--r-- | math/femlab/files/patch-ab | 55 | ||||
-rw-r--r-- | math/femlab/pkg-comment | 1 | ||||
-rw-r--r-- | math/femlab/pkg-descr | 21 | ||||
-rw-r--r-- | math/femlab/pkg-plist | 19 |
8 files changed, 177 insertions, 0 deletions
diff --git a/math/femlab/Makefile b/math/femlab/Makefile new file mode 100644 index 000000000000..b7910210436a --- /dev/null +++ b/math/femlab/Makefile @@ -0,0 +1,43 @@ +# New ports collection makefile for: femlab +# Version required: v1.1 +# Date created: 19 June 1997 +# Whom: Pedro Giffuni +# +# $Id: Makefile,v 1.3 1997/01/19 02:47:27 obrien Exp $ +# + +DISTNAME= femlab-2d-v1.1 +PKGNAME= femlab-1.1 +CATEGORIES= math cad +MASTER_SITES= ftp://ftp.md.chalmers.se/pub/Femlab/ \ + ftp://ftp.ifs.hr/pub/SciUtil/ + +MAINTAINER= giffunip@asme.org + +BUILD_DEPENDS= ${PREFIX}/lib/libsx.a:${PORTSDIR}/X11/libsx + +WRKSRC= ${WRKDIR}/${PKGNAME} +USE_X11= yes + +FEMLAB_HOME= ${PREFIX}/lib/X11/femlab + +do-install: + ${MKDIR} ${FEMLAB_HOME}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/source/femlab ${FEMLAB_HOME}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/fsource/meshgen ${FEMLAB_HOME}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/fsource/poisson ${FEMLAB_HOME}/bin + ${MKDIR} ${FEMLAB_HOME}/config + ${INSTALL_DATA} ${WRKSRC}/config/modules ${FEMLAB_HOME}/config + ${SED} -e "s|@@FEMLAB_HOME@@|${FEMLAB_HOME}|" <${FILESDIR}/femlab.sh >${PREFIX}/bin/femlab + chmod +x ${PREFIX}/bin/femlab + +post-install: +.if !defined(NOPORTDOCS) + ${MKDIR} ${PREFIX}/share/examples/femlab + ${INSTALL_MAN} ${WRKSRC}/examples/*.fem ${PREFIX}/share/examples/femlab + ${MKDIR} ${PREFIX}/share/doc/femlab + ${INSTALL_MAN} ${WRKSRC}/docs/manual.dvi ${PREFIX}/share/doc/femlab + ${INSTALL_MAN} ${WRKSRC}/docs/manual.ps ${PREFIX}/share/doc/femlab +.endif + +.include <bsd.port.mk> diff --git a/math/femlab/distinfo b/math/femlab/distinfo new file mode 100644 index 000000000000..2c07b0714092 --- /dev/null +++ b/math/femlab/distinfo @@ -0,0 +1 @@ +MD5 (femlab-2d-v1.1.tar.gz) = 8a296c529c222c4b6115e1ea749bf76d diff --git a/math/femlab/files/femlab.sh b/math/femlab/files/femlab.sh new file mode 100644 index 000000000000..89a178c77853 --- /dev/null +++ b/math/femlab/files/femlab.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +FEMLAB_HOME=@@FEMLAB_HOME@@ +export FEMLAB_HOME + +exec ${FEMLAB_HOME}/bin/femlab diff --git a/math/femlab/files/patch-aa b/math/femlab/files/patch-aa new file mode 100644 index 000000000000..95ee4e5cb5fb --- /dev/null +++ b/math/femlab/files/patch-aa @@ -0,0 +1,31 @@ +*** source/Imakefile.orig Tue Sep 2 10:38:18 1997 +--- source/Imakefile Tue Sep 2 10:39:42 1997 +*************** +*** 17,29 **** + + OBJS = $(SRCS:.c=.o) + +! CC = gcc -O + CDEBUGFLAGS = + EXTRA_INCLUDES = -I../include + # + # Change next line to the location of the libsx library + # +! EXTRA_LOAD_FLAGS = -L/users/math/martenl/projects/lib + LOCAL_LIBRARIES = -lfreq -lsx -lm XawClientLibs + DEPLIBS = XawClientDepLibs + +--- 17,29 ---- + + OBJS = $(SRCS:.c=.o) + +! CC = gcc -O2 + CDEBUGFLAGS = + EXTRA_INCLUDES = -I../include + # + # Change next line to the location of the libsx library + # +! EXTRA_LOAD_FLAGS = -L$(X11BASE) + LOCAL_LIBRARIES = -lfreq -lsx -lm XawClientLibs + DEPLIBS = XawClientDepLibs + diff --git a/math/femlab/files/patch-ab b/math/femlab/files/patch-ab new file mode 100644 index 000000000000..2dd2078f1569 --- /dev/null +++ b/math/femlab/files/patch-ab @@ -0,0 +1,55 @@ +*** source/graph.c.orig Sat Sep 13 16:23:18 1997 +--- source/graph.c Sat Sep 13 16:39:13 1997 +*************** +*** 608,614 **** + void getDrawingScale() + { + float xoff, yoff; +! float scl; + int width, height; + int ww; + int nx, ny, id; +--- 608,614 ---- + void getDrawingScale() + { + float xoff, yoff; +! float iscl; /* inverse scale */ + int width, height; + int ww; + int nx, ny, id; +*************** +*** 630,645 **** + width = width / nx; + height = height / ny; + +! if(state > HAVE_NOTHING){ +! scl = 1./max(xmax-xmin,ymax-ymin); +! xoff = -scl*(xmin+.5*(xmax-xmin)-.5/scl); +! yoff = -scl*(ymin+.5*(ymax-ymin)-.5/scl); + +! xoff = - xmin*scl*.85; +! yoff = - ymin*scl*.85; + + ww = min(width, height); +! Xscl = (int) ((float)ww * 0.85 * scl); + Xxoff = (int) ww * xoff ; + Xyoff = (int) ww * yoff; + Xxoff += (int) (width - ( Xscl*xmax +Xxoff))/2 + (id+nx-1)%nx *width; +--- 630,646 ---- + width = width / nx; + height = height / ny; + +! iscl = max(xmax-xmin,ymax-ymin); + +! if((state > HAVE_NOTHING) && (iscl != 0.0)){ +! xoff = .5-(xmin+.5*(xmax-xmin))/iscl; +! yoff = .5-(ymin+.5*(ymax-ymin))/iscl; +! +! xoff = - xmin*.85/iscl; +! yoff = - ymin*.85/iscl; + + ww = min(width, height); +! Xscl = (int) ((float)ww * 0.85 / iscl); + Xxoff = (int) ww * xoff ; + Xyoff = (int) ww * yoff; + Xxoff += (int) (width - ( Xscl*xmax +Xxoff))/2 + (id+nx-1)%nx *width; diff --git a/math/femlab/pkg-comment b/math/femlab/pkg-comment new file mode 100644 index 000000000000..22b1e980cf2f --- /dev/null +++ b/math/femlab/pkg-comment @@ -0,0 +1 @@ +Interactive program for solving partial differential equations in 2D diff --git a/math/femlab/pkg-descr b/math/femlab/pkg-descr new file mode 100644 index 000000000000..9e489374dc06 --- /dev/null +++ b/math/femlab/pkg-descr @@ -0,0 +1,21 @@ +Femlab is built up by several different programs. Currently the +X11-interface, a meshgenerator and one solver. These programs communicate +with each other with two ASCII files called "area.scratch" and +"solu.scratch". The programs reside in FEMLAB_HOME/bin. These allows you +to for instance run the solver directly from the csh as a batch job. The +aim is to provide more solvers for different applications, such as 2D +incompressible flow problems, transient problems etc. It should also be +possible to use the X11 interface for your own applications. + +---------------------------------------+ + | | + | Authors: | + | Peter Hansbo | + | Marten Levenstam | + | Dep. of Mathematics | + | Chalmers University of Technology | + | S-412 96 Goteborg | + | SWEDEN | + | femlab@math.chalmers.se | + | | + | \|/ | + +----------------( )--------------------+ diff --git a/math/femlab/pkg-plist b/math/femlab/pkg-plist new file mode 100644 index 000000000000..6eb4f1681066 --- /dev/null +++ b/math/femlab/pkg-plist @@ -0,0 +1,19 @@ +bin/femlab +lib/X11/femlab/config/modules +lib/X11/femlab/bin/femlab +lib/X11/femlab/bin/meshgen +lib/X11/femlab/bin/poisson +share/doc/femlab/manual.dvi +share/doc/femlab/manual.ps +share/examples/femlab/capacitor.fem +share/examples/femlab/convection.fem +share/examples/femlab/man.fem +share/examples/femlab/pot-cyl.fem +share/examples/femlab/soap.fem +share/examples/femlab/spark-plug.fem +share/examples/femlab/torsion.fem +@dirrm lib/X11/femlab/config +@dirrm lib/X11/femlab/bin +@dirrm lib/X11/femlab +@dirrm share/doc/femlab +@dirrm share/examples/femlab |