Subject: Pentium Optimized BLAS
From: mlkessle@cip.physik.uni-wuerzburg.de (Manuel Kessler)
Date: 13 Nov 1996 16:10:20 GMT
Hi to all number crunchers,
I'm glad to announce the first test release of my pentium optimized
BLAS level 1 library. The most important functions of the BLAS level 1
(xAXPY, xCOPY, xDOT, xNRM2, in both single and double precision)
have been completely rewritten in GNU assembler for achieving full
performance on intel pentium processors. The library is available in
both binary and source form for DOS/DJGPP and UNIX/LINUX at
http://cip.physik.uni-wuerzburg.de/~mlkessle/blas1.html
See there for further informations. Suggestions, bug reports,
comments etc. are very welcome, email adress see below.
Thanks,
Manuel
--
Manuel Kessler
Graduate Student at the University of Wuerzburg, Germany, Physics Department
SNAIL: Zeppelinstrasse 5, D-97074 Wuerzburg, Germany
EMAIL: mlkessle@cip.physik.uni-wuerzburg.de
WWW: http://cip.physik.uni-wuerzburg.de/~mlkessle
Subject: Casino Table Problem
From: amzweg@cistron.nl (Arno Zwegers)
Date: Tue, 12 Nov 1996 22:04:34 GMT
Hello to you all,
I don't know if this is the right newsgroup to post in,
but I have a question about odds on a casino table.
The situation is the following:
The Table has 3 rows, which each have 15 different numbers in it, and
there is the 0.
So in total there are 46 numbers, so the odds for getting a specific
number is 1/46, the odd for getting a specific row is 15/46.
Now when row 1 and 3 are thrown (that means that only one number in
that row had to be thrown) 15 and 20 times, and row 2 hasn't been
thrown yet.
Now are the odds now better to bet on row 2, cause the other two have
been throw more, and row 2 hasn't been thrown at all.
The throw device is neutral, so has no number one choice.
Any help would be appreciated, I think the odd for row 2 are better
since the other two have been thrown more, and because the device is
neutral ALL numbers are thrown as much times in the end.
Thanks
Arno Zwegers
amzweg@cistron.nl
http://www.cistron.nl/~amzweg
Arno Zwegers
amzweg@cistron.nl
http://www.cistron.nl/~amzweg
Subject: Re: Pronunciation of LaTeX
From: kovarik@mcmail.cis.McMaster.CA (Zdislav V. Kovarik)
Date: 13 Nov 1996 10:59:18 -0500
In article <56bc1t$58r@hcunews.hiroshima-cu.ac.jp>,
Hideo Hirose wrote:
>In Japan, many researchers pronounce LaTeX as "latef." Is it correct? How do you
>pronounce TeX and LaTeX actually, especially in the united states?
Quite close.
Knuth's intention was to have it pronounced with the "X" sounding
like the throat-clearing "ch" in "Loch Ness", from the mouth of a
Scottish speaker, or as in Spanish "Juan". (X played this role in
the classical Greek alphabet, and it's the same in Cyrillic as
used by Russians and many others.)
The most frequently heard US pronunciation, by those who see the
Latin letter X (as I would see it if I didn't know the
accompanying trivium), is of course "Leytecks".
Hope it helps, ZVK (Slavek).
Subject: Re: Quadratic constrained LS minimisation
From: elgersma@src.honeywell.com (Mike Elgersma)
Date: 13 Nov 1996 13:47:05 -0600
In article ,
Moritz Harteneck wrote:
>Hi,
>
>I want to minimise a least squares problem which is quadratically
>constrained, i.e.
>
>minimise( vAv ) under (vBv=p)
>
>where v is a n-dimensional vector of the free parameters, A describes the
>performance criterion and B and p the quadratic constraints.
>
>Does anybody know any good pointers?
>
>Thanks
>
> Moritz
>
>===========================================================================
>
Here are some comments from an old matlab program I wrote:
% constr_opt_eig.m Mike Elgersma October 19, 1995
%--------------------------------------------------------------------------
% Quadratically constrained optimization, with Lagrange multiplier lam.
%
% Minimize (x-x0)'*H*(x-x0) subject to x'*Q*x = eps'*eps
%
% where ' is conjagate transpose and eps is a scalar
%-----------------------------------------------------------------------------
% Blaise Morton pointed out that a shrinking ellipsoid is tangent to a fixed
% ellipsoid with outward pointing normal vector for only one value of the
% shrink factor. This results in the Lagrange multiplier having one real
% solution with one sign, while all other real solutions have the other sign.
%
% . .
% . .
% . . . . . . .
% . .. x0 . As ellipse expands, it is tangent to a fixed ellipse
% . 0 . . . . . . for four different values of the expansion factor,
% . . expanding but only the first time the normal points outward.
% . .
% . .
%
% fixed
%-----------------------------------------------------------------------------
% Set f(x,lam) = (x-x0)'*H*(x-x0) + lam*( x'*Q*x - eps'*eps )
%
% If H and Q are real, then x and lam will be real at minima of f.
% If H or Q are not real, f may not be real, so x and lam may be complex when
% df/fx and df/dlam are zero.
%-------------
% f is minimum when 0 = .5*df/dx = H*(x-x0) + lam*Q*x
% 0 = df/dlam = x'*Q*x - eps'*eps
%-------------
% x = inv(H + lam*Q) * H*x0
%
% eps'*eps = x0'*H'*inv(H' + lam'*Q') * Q * inv(H + lam*Q)*H*x0
% = x0'*H'*inv(H' + lam'*Q') * Q * ( x )
% = x0'*H'*( y )
%-------------
% Let G(lam) = (H + lam*Q)
%
% then:
%
% eps'*eps = (H*x0)'*y
% H*x0 = G*x
% Q*x = G'*y Q may not be invertible?
%--------------
%
% (H*x0 * (H*x0)')*y = H*x0*((H*x0)'*y) = eps'*eps*H*x0 = eps'*eps*G*x
%
% so [eps*G H*x0*(H*x0)']*[eps'*x] = 0
% [ -y ]
%
% Combining with Q*z = G'*y gives:
%
% [ Q eps'*G(lam)']*[eps'*x] = [0] Almost an eigenproblem for lam,
% [eps*G(lam) H*x0*(H*x0)'] [ -y ] [0] but G'(lam) has lam'.
%
% If the data matrices are real, then replace conjagate-transpose with
% transpose so a true eigenproblem.
% Hermitian, so full set of eigenvectors, so can deflate in power iteration.
% But could have repeated eigenvalues which slow down convergence.
% If lam(1) = lam(2)+epsilon with distinct eigenvectors, then slow convergence.
%
% If the data matrices are comlex:
% 1) OK if some eigenvalues are real.
% 2) Does the optimum occur at some real eigenvalue?
%----------------------------------------------
% If x0 = 0
%
% then
%
% f is minimum when 0 = .5*df/dx = H*(x-x0) + lam*Q*x
% = (H + lam*Q)*x a generalized eig problem
% but is x'*Q*x = eps'*eps for the solutions of the eig problem?
%------------------------------------------------------------------------------
% CONVERGENCE
%
% If only one real positive eig (and all complex eigs have neg real part)
% and we have a bound:
% 0 < lam_pos < lam_max
% then can guarantee convergence of the real inverse-power iteration by setting
% the shift equal to lam_max.
% If we use Dale's bi-section algorithm to get an upper bound for lam_pos
% that is less than a factor of two too large, then the convergence factor is:
% error(i+1)/error(i) < |lam_pos - lam_max|/|lam_neg - lam_max|
% < |lam_pos - lam_max|/|lam_max|
% < 1/2
% so convergence will be at the same rate as for Dale's bisection algorithm.
%
% We can also speed up convergence by choosing a good initial value for
% the eigenvector in the inverse iteration.
% Set initial x = x0/sqrt(x0'*Q*x0) so x'*Q*x = 1
%
%------------------------------------------------------------------------------
Subject: Interesting COUNTING PROBLEM: Unary central
From: Alioune Ngom
Date: Wed, 13 Nov 1996 13:47:48 -0500
Here is the problem:
Let K = {0, 1, ..., k - 1} (k > 1) be a set of k logic values.
Let Union and Intersection be two operators defined on K. Union is
defined as the bitwise OR operation between two elements represented in
binary numbers (having each log(k) bits, the base of the log is 2). Thus
for instance, for k = 8 we have, 1 Union 2 = 001 Union 010 = 011 = 3.
Intersection is defined as the bitwise AND operation between two
elements represented in binary numbers. Thus for instance, for k = 8 we
have, 5 Intersection 6 = 101 Intersection 110 = 100 = 4.
Let k be a power of 2 (i.e. k = 2^r, with r > 0). Unary central
relations are the non-empty and proper subsets of K. A unary central
relation R is closed under Union and Intersection if x Union y and
x Intersection y are in R whenever x and y are in R. In other words:
(x in R and y in R) implies (x Union y is in R and x Inter y is in R).
Now the problem statement: For k = 2^r, how many unary central
relations are closed under Union and Intersection ?
---
I was not able to find a closed-form formula or even a recursive
formula.
Using a computer program I find that, for k = 8 and k = 16,
there are 72 and 730 such unary central relations, respectively.
There are eleven (11) unary central relations for k = 4:
{0} {1} {2} {3} {01} {02} {03} {1,3} {2,3} {0,1,3} and {0,2,3}.
!!!GOOD LUCK!!!
With best regards.
A.N.
Subject: Re: running FDTD fortran codes on SGI
From: seftor@mrj.com (Larry Seftor)
Date: 13 Nov 1996 16:59:47 -0500
In article <3286C503.83F@pop.uky.edu>, Tim Black wrote:
>I am getting ready to buy a box to develop/run some Finite Difference
>Time Domain fortran codes for modeling antenna near-field
>radiation/characteristics. I'm looking at SGI's O2 entry level
>workstations(because of the power/price) and was wondering if anyone had
>any advice on choosing a workstation for such computationally intensive
>tasks. I have no experience with SGI, and would like to find some
>benchmarks comparing Pentium Pros, SGI O2's SGI Indigo's, etc. Any
>clues?
The limitation on FDTD is basically floating point speed. The exception
is for very large problems where you may use virtual memory, if you go the
easy route, or asynchronous I/O, if you are clever. In those cases bus
speed, disk speed, and I/O bandwidth become issues.
In any case, there is a large amount of information (including floating
point performance) about many machines, from Gateway PC's to massively
parallel machines at:
http://performance.netlib.org/
Larry Seftor
seftor@mrj.com
Subject: SUBJECT: Announce: MAT C++ Matrix Math Library
From: info@mathtools.com (MathTools Info)
Date: Thu, 14 Nov 1996 09:39:48 GMT
MathTools Ltd. is pleased to announce MAT, a Matlab Compatible
C++ Matrix Class Library, designed for development of advanced
scientific high-level C++ code. Evalution version of the MAT
can be downloaded from our home page, http://www.mathtools.com.
The library includes Complex math, Binary and unary operators,
Powerful indexing capabilites, Signal processing, File I/O, Linear
algebra, String operations and Graphics. Over 300 mathematical
functions are included in MAT.
MAT supports matrices of doubles, floats, ints and chars
mixed in the program. Images can be stored in matrices of chars,
using 1/8 memory storage. On many applications, where 8 digits of
precision are sufficient, float-precision matrices can save half
the memory usage. Memory allocation and de-allocation is managed
automatically.
2D and 3D Graphics are supported in standalone applications using
the freely available graphics package, Gnuplot.
Fully functional, time limited (30 days) evaluation version of
MAT can be downloaded freely from our home page,
http://www.mathtools.com.
An introductory price for MAT is 250$ for a single user
license, with discounts on quantity and for academic institutes.
Prices are valid until Jan 1, 1997.
Sincerely,
The MathTools.
=====================================================================
MathTools Ltd. Web: http://www.mathtools.com
P.O.Box 855 Email: info@mathtools.com
Horsham, Pennsylvania Fax: 1-888-MATHTOOLS (toll free)
USA 19044-0855 1-215-957-1719
=====================================================================
Subject: Interpolation in un-even data
From: misc1684@cantua.canterbury.ac.nz (Hamish Hubbard)
Date: 14 Nov 1996 03:00:18 GMT
I have an array of data, about 27 by 36, each row and column in the array
is not necessarily evenly spaced (i.e. the axes could be 0, 10, 20, 35, 50, 60, ...
and 0, 2.5, 5, 10, 15, 20, 25,...). (This data is sampled from the output of
a street light on various angles.)
I need to be able to get an average for a give 'square' defined
points (upper left and lower right) which are arbitrary. The current method
is to use Simpson's rule on the middle row of data that crosses through the
square, but this is not accurate enough, I want to use a method that takes advantage
of all the data I have in 2 dimensions. I don't really know even what sort of
algorithm to look for, this is not my area of expertise.
Please help, I'm really stuck! :-)
Thanks,
Hamish
Subject: Re: Steam Table Software?
From: tortike@nntpserver (Simon Tortike)
Date: 14 Nov 1996 07:08:47 GMT
Mike Johnston (johnston@dimensional.com) wrote:
: Hi,
: Is there any free (or almost free) software available (preferably
: source code) to calculate the thermodynamic properties of steam and
: water?
: I have found several places that charge $200 and up. I just want this
: for entertainment and can't justify that kind of $$.
Years ago we published a paper with simple continuous polynomial definitions
for major thermodynamic properties of saturated steam and water in
SI and US units as a function of pressure. Temperature, enthalpy, density,
viscosity, and thermal conductivity are correlated.
Residuals are plotted over the range of validity. The reference is:
"Saturated-Steam-Property Functional Correlations for Fully Implicit
Thermal Reservoir Simulation" by WS Tortike and SM Farouq Ali,
SPE Reservoir Engineering, November 1989 pp 471-474.
These are easy to implement in a spreadsheet or otherwise program.
--
Dr. W.S. (Simon) Tortike, CPEng.
Senior Reservoir Engineer
& Manager, Engineering Business Development
Mincom Petroleum Technology | WWW: http://www.mincom.com
Mincom Pty Ltd | Tel: +61 7 3364-9821 (UTC/GMT +10)
138 Juliette Street | Fax: +61 7 3364-9802
Greenslopes Qld 4120 | e-mail: tortike@mincom.com | | | | | |
PO-Mail: PO Box 72, Stones Corner, Qld 4120, Australia |M|I|N|C|O|M
Subject: Re: Steam Table Software?
From: tortike@nntpserver (Simon Tortike)
Date: 14 Nov 1996 07:08:47 GMT
Mike Johnston (johnston@dimensional.com) wrote:
: Hi,
: Is there any free (or almost free) software available (preferably
: source code) to calculate the thermodynamic properties of steam and
: water?
: I have found several places that charge $200 and up. I just want this
: for entertainment and can't justify that kind of $$.
Years ago we published a paper with simple continuous polynomial definitions
for major thermodynamic properties of saturated steam and water in
SI and US units as a function of pressure. Temperature, enthalpy, density,
viscosity, and thermal conductivity are correlated.
Residuals are plotted over the range of validity. The reference is:
"Saturated-Steam-Property Functional Correlations for Fully Implicit
Thermal Reservoir Simulation" by WS Tortike and SM Farouq Ali,
SPE Reservoir Engineering, November 1989 pp 471-474.
These are easy to implement in a spreadsheet or otherwise program.
--
Dr. W.S. (Simon) Tortike, CPEng.
Senior Reservoir Engineer
& Manager, Engineering Business Development
Mincom Petroleum Technology | WWW: http://www.mincom.com
Mincom Pty Ltd | Tel: +61 7 3364-9821 (UTC/GMT +10)
138 Juliette Street | Fax: +61 7 3364-9802
Greenslopes Qld 4120 | e-mail: tortike@mincom.com | | | | | |
PO-Mail: PO Box 72, Stones Corner, Qld 4120, Australia |M|I|N|C|O|M
Subject: Re: Pronunciation of LaTeX
From: am@central.ntua.gr (Tassos Machaeridis)
Date: Wed, 13 Nov 1996 20:00:55 GMT
Konrad Hinsen wrote:
>The question has already been adressed by Donald Knuth himself, who
>explained that the X in "TeX" is actually the Greek letter chi, and
>therefore should be pronounced like "chi" in Greek, "ch" in German,
>Irish, or Scottish, or like the corresponding sounds in Russian,
>Arabic, etc. That seems to be too difficult for most speakers
>of English, so what I hear in practice is either "tek" (in analogy
>to the English pronunciation of words like "technical") or "tex",
>especially "latex", i.e. totally ignoring the intended etymology.
You are right. If I recall correctly, he utilizes the example of
the word "loch" (as in "loch-ness") to give a close impression of
the correct pronounciation of the "ch" in "technology" and thus
in "TeX".
Tassos Machaerides
PS. Did you know that the word "art", in greek is "TEXNH"
and the word "technology" is "TEXNOLOGIA".
Subject: EULER numerical software
From: grothm@kga-ibm-rsam.ku-eichstaett.de (Rene Grothmann)
Date: 14 Nov 1996 10:03:27 GMT
The 1.02 version of EULER for Windows 95 is now available from
am.ku-eichstaett.de by anonymous ftp. Installs from an EXE file, and can be
de-installed, if desired. OS/2 and Unix/XWindows (esp. Linux) is available
on the same site. The Windows 95 was reported to run on NT.
EULER started as a MatLab clone. It is now a program, which can handle
real, complex and interval numbers and matrices, has a 2D/3D graphics, a
builtin modern programming language (extension of MatLab's), an exact
scalar product, and the Windows 95 version can call functions in an
external DLL. The OS/2 and Windows versions interact nicely with the GUI,
and have a notebook style interface.
The Unix version is free, teh OS/2 version free for educational use, and
the Windows version cheap shareware.
R. Grothmann
grothm@ku-eichstaett.de
Subject: Re: Interesting COUNTING PROBLEM: Unary central relations !!!
From: Paolo Ciaccia
Date: Thu, 14 Nov 1996 12:35:19 +0100
Alioune Ngom wrote:
>
> Here is the problem:
>
> Let K = {0, 1, ..., k - 1} (k > 1) be a set of k logic values.
> Let Union and Intersection be two operators defined on K. Union is
> defined as the bitwise OR operation between two elements represented in
> binary numbers (having each log(k) bits, the base of the log is 2).
> Intersection is defined as the bitwise AND operation between two
> elements represented in binary numbers.
> Let k be a power of 2 (i.e. k = 2^r, with r > 0). Unary central
> relations are the non-empty and proper subsets of K. A unary central
> relation R is closed under Union and Intersection if x Union y and
> x Intersection y are in R whenever x and y are in R. In other words:
> (x in R and y in R) implies (x Union y is in R and x Inter y is in R).
>
> Now the problem statement: For k = 2^r, how many unary central
> relations are closed under Union and Intersection ?
> ---
>
> I was not able to find a closed-form formula or even a recursive
> formula.
>
Nice problem, indeed. I've no solution yet, but a more general
formulation:
"How many "sub-lattices", closed under + and *,
can be obtained from a Boolean lattice over r elements?"
For instance, the same problem arises if you consider
a set of r elements and the lattice of all its susbsets,
with standard set Union and Intersection.
Just a partial hint for a recursive formula:
with r elements you can at least include all the
cases obtained for 1 <= s < r, thus retaining
only s out of r elements (=bit positions in your formulation), and
these elements can be chosen in comb(r s)=r!/((r-s)!s!) different ways.
The other (r-s) elements have fixed values.
E.g. In your example r=2. With s=1 (k=2), we have, in binary notation:
{0}{1}{0,1}, which can be extended to yield:
{0} -> {00}{01}{10} (these are trivial cases)
{1} -> {10}{11}{01}
{0,1} -> {00,10},{01,11},{00,01},{10,11}
(it seems that principle of inclusion-exclusion should be used here
to avoid counting twice or more a same configuration)
Let me know if you find a solution!
Paolo
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Paolo Ciaccia
DEIS - CSITE-CNR
University of Bologna - ITALY
mailto:ciaccia@cs.unibo.it
http://www.cs.unibo.it/~ciaccia
Subject: Re: HELP linear resolution in pascal
From: m.a.vaughan@larc.nasa.gov (Mark Vaughan)
Date: 14 Nov 1996 13:42:25 GMT
In article <5604gi$ga2@sanson.dit.upm.es>, a25467 wrote:
]-Thanks, I need some help to make a university work about anything based in the
]-linear resolution of matrix with an original !algoritmo! sorry but I am from
]-spain .
]-My work must be original (only a little) and i need some ideas
]-I am in the fourth course of maths and My teacher only told us to do something
]-original for example :
]-- in pascal or ...
]-- new algoritms or a better solution to a theorem
]-Of couse I need !bibliografy!.
]-Thanks and sorry for my english an for everything
]-
Here are some sources of numerical analysis code in Pascal...
Part 1. Stuff I Know Something About...
----------------------------------------
[ Books ]
"Compact Numerical Methods for Computers" by J.C. Nash
The source code that accompanies this book is available as freeware
thru NetLib (http://www.netlib.org/). This version was written in
Turbo Pascal 5.0. The book (2nd edition, copyright 1990) is also
available (see http://www.ioppublishing.com). The subtitle is "Linear
Algebra and Function Minimization", which is a very accurate summation
of the contents. Of all the listings in Part 1, I've gotten the most
mileage out of this one.
[ ] FFT [x] matrix methods [x] nonlinear least squares
"Numerical Analysis, Third Edition", by Burden & Faires
This is a standard textbook for undergraduate numerical analysis
courses. The code for all the algorithms presented in the book was at
one time available in Pascal. It's old stuff, written in Turbo Pascal
3.0, and I don't know where you'd find it anymore...maybe write the
publishers? (Prindle, Weber, & Schmidt, ISBN 0-87150-857-5. But I'm
sure there's a later edition out by now, and I suspect that the code
disk that accompanies it is not written in Pascal.)
[x] FFT [x] matrix methods [x] nonlinear least squares
"Numerical Recipes in Pascal" by Press et. al.
The code to accompany the text comes in two flavors:
[1] a freeware version is available from several sites (SimTel =>
ftp.coast.net, and Garbo => garbo.uwasa.fi come immediately to mind;
look for nrpas113.zip) This is very ugly code, not native Pascal, but
a translation from the original FORTRAN, with no comments. Personally
I'd rather translate the stuff from "Numerical Recipes in C" than work
with the Pascal freeware.
[2] the native Pascal version of the first edition of Numerical
Recipes is still available. Check the Numerical Recipes homepage at
http://nr.harvard.edu/numerical-recipes/ for more information.
[x] FFT [x] matrix methods [x] nonlinear least squares
"Scientific Pascal" by Harley Flanders
This is new (1996), and has received at least one very favorable review
(http://users.aol.com/catambay/pascal-central/scipascal.html). The code
is written in Borland Pascal 7.0. The book can be ordered through
Birkhauser (http://www.birkhauser.com)
[x] FFT [x] matrix methods [ ] nonlinear least squares
[ Software Packages ]
"Numerical Methods Toolbox"
Another oldie, this one dates from about the release of Turbo Pascal
4.0. Borland put out a bunch of ToolBoxes -- Editor, Database,
Graphics, etc. -- and this was one of them. They've since dropped them
from their product line. I don't know where you'd get a copy...
[x] FFT [x] matrix methods [x] nonlinear least squares
[ Downloads ]
SWAG => The SourceWare Archival Group
This is a large collection of Pascal code fragments (mostly Borland) on
almost every topic. The software runs under DOS & Windows. Freeware,
available at SimTel, Garbo, and elsewhere. At last count (swag9608)
the math section had 116 entries, including FFTs, matrix algebra,
complex numbers, etc.
[x] FFT [x] matrix methods [ ] nonlinear least squares
Various collections...
Several anonymous ftp sites offer collections of Pascal code and
mathematical tidbits -- once again, SimTel and Garbo are good starting
points.
Part 2. Stuff I Know Nothing About...
--------------------------------------
[ Books ]
The following references are courtesy of Amara Graps via the
sci.math.num_analysis newsgroup.
OK. Add to that:
_Data Reduction and Error Analysis for the Physical Sciences_ by Philip
R. Bevington and D. Keith Robinson, McGraw-Hill, 1992. This is an
update to the original 1969 version by Bevington, which has code in
Fortran. The Turbo Pascal 4.0 code for this book is on a floppy that's
included in the book. (Note: the original poster was asking about
multiple regression, and there's everything you ever wanted to know
about multiple regression here.)
_Scientific Programming with Macintosh Pascal_ (1986) by Richard E.
Crandall and Marianne M. Colgrove. This book is somewhat dated, so the
hardware-related items should be ignored. But there's some interesting
statistics, mathematical physics and signal processing examples here.
The code would need to be typed in by hand. The author is the same
Richard Crandall who wrote the more recent Telos books: _Projects in
Scientific Computation_ and _Topics in Advanced Scientific Computation_
(those Telos books use C and Mathematica for their examples).
Amara
--
***************************************************************
Amara Graps amara@quake.stanford.edu
Solar Oscillation Investigations Stanford University
http://quake.stanford.edu/~amara/amara.html
***************************************************************
During occasional forays into Net-Land I've also uncovered these...
"Numerical Methods for Mathematics, Science, and Engineering, 2e"
John H. Mathews
Prentice Hall, 1992 - ISBN 0-13-624990-6
A table of contents can be found at
http://www.prenhall.com/divisions/esm/esm_home.html
(click on "Browse Titles by Course", then successively on "Math and
Science", "Mathematics", "Math Courses for Engineers and Scientists",
and "Numerical Analysis".) Algorithm source is available in Pascal, C,
FORTRAN, and MatLab.
I saw these next two while browsing through the Institute of Physics site
(http://www.ioppublishing.com). Both include (optionally?) on-disk code
written in Turbo Pascal
"Computational Techniques in Physics" by P K MacKeown and D J Newman
ISBN: 0 85274 548 6 (illustrated paperback),0 85274 429 3 (Software)
Pages: 240
Price: illustrated paperback/Software £19.00/US$37.00 £26.00/US$52.00
Date: 1987
"Scientific Programmer's Toolkit, Turbo Pascal Edition" by M H Beilby,
R D Harding, and M R Manning
ISBN: 0 7503 0127 9
Pages: 438
Price: Boxed spiral-bound manual and software paperback £99.00/US$198.00
Date: 1991
[ Software Packages ]
Matrix Math Toolkit v3.0 for Delphi 2
Vector and matrix classes for Delphi 2.0, written by Peter N. Roth
(peteroth@erols.com) of Engineering Objects International. He also
sells a finite element package called TProteus, which I believe is
available in both Turbo Pascal and Delphi 1.0 versions.
[ ] FFT [x] matrix methods [ ] nonlinear least squares
[ Downloads ]
The Turbo Pascal Math Library by Jean Debord
available at http://ourworld.compuserve.com/homepages/JDebord/tpmath.htm
What follows is a quote from the TP Math homepage...
Welcome to TP Math, a mathematical library for Turbo Pascal (version
5.0 or higher). This library is distributed as Freeware. You may use
it anyway you like, as long as you don't charge money for it, remove
the copyright notices, or hold anyone liable for its results.
This library provides routines and programs for :
o Mathematical functions (including trigonometric, hyperbolic,
special, and some probability distributions)
o Vector and matrix operations (including dynamic array allocation)
o Function minimization (Marquardt, simplex)
o Statistical functions
o Random numbers (Marsaglia generator)
o Linear and nonlinear regression
[ ] FFT [x] matrix methods [x] nonlinear least squares
----
The question of where to get numerical analysis code in Pascal pops up
occasionally in the various Pascal (and now Delphi) newsgroups. If anyone
has some other sources I haven't mentioned here I'd appreciate hearing
about them. Freeware, shareware, commercial...nothing is too obscure.
Mark Vaughan
m.a.vaughan@larc.nasa.gov
Subject: Re: Non-linear schrodinger eqn
From: Robert Knapp
Date: Thu, 14 Nov 1996 08:54:08 -0500
George Klinich wrote:
>
> Hi,
>
> I just read a paper where they solved the NLSE by a
> split-step spectral method. The NLSE is
>
> dU h^2
> ih ----- = - ------ grad^2 U + (v|U|^2 + w)U
> dt 2m
>
> and the method described solves the non-linear part in
> real-space and the Laplacian oprerator in Fourier space.
> Where can I find information on this method?
>
Below is Mathematica code which outlines the basic method quite simply
For i u_t = u_xx + 2 u |u|^2 + u v(x)
SplitStep[u_, v_, dt_, D2_] := NN[.5 dt, v][LL[D2][NN[.5 dt, v][u]]]
does one step split-step method, which is a composition of a linear
differential part (LL) and a nonlinear/potentail part (NN), whcih can
be defined as follows.
LL[D2_][x_] := InverseFourier[Fourier[x]*D2];
(Fourier returns a normalized DFT)
NN[ dt_, v_][x_] := x*Exp[-I*dt*(v - 2.Abs[x]^2)];
The differential vector can be generated by:
Dgenerate[n_, dt_, S_] :=
Block[{s = -I*dt*S^2,t},
t = Table[Exp[s*j^2],{j,1,n/2-1}];
Join[{1},t,{Exp[s*(n/2)^2]},Reverse[t]]];
With these definitions, the following commands give you the
approximate solution for a stationary soliton for up to t = 1.
n = 128;
xmin = -8; xmax = 8;
S = 2 Pi/(xmax-xmin);
u = Table[Sech[xmin + (xmax-xmin)*(j/n)],{j,1,n}];
v = Table[0.,{j,1,n}];
dt = .01;nt = 100;
D2 = Dgenerate[n, dt, S];
unew = u;
Do[SplitStep[unew,v,dt,D2],{nt}];
The Mathematica code is adequate for small simulations and can be
useful as a prototype for developing a compiled code using your
favorite FFT.
There are many refinements that can be made to improve the accuracy
and speed of the basic code, including skipping bitreversal in the
FFT, updating change to avoid accuracy problems, and higher temporal
order compostitions.
Subject: Re: Interpolation in un-even data
From: "John Cristion"
Date: 14 Nov 1996 14:49:14 GMT
Hamish Hubbard wrote in article
<56e202$rrf@cantuc.canterbury.ac.nz>...
> I have an array of data, about 27 by 36, each row and column in the array
> is not necessarily evenly spaced (i.e. the axes could be 0, 10, 20, 35,
50, 60, ...
> and 0, 2.5, 5, 10, 15, 20, 25,...). (This data is sampled from the output
of
> a street light on various angles.)
>
> I need to be able to get an average for a give 'square' defined
> points (upper left and lower right) which are arbitrary. The current
method
> is to use Simpson's rule on the middle row of data that crosses through
the
> square, but this is not accurate enough, I want to use a method that
takes advantage
> of all the data I have in 2 dimensions. I don't really know even what
sort of
> algorithm to look for, this is not my area of expertise.
MATLAB has a function called "GRIDDATA" that I've used for this type of
problem before. In their "HELP" file it claims to use an "Inverse Distance
method." If you have MATLAB, then use the GRIDDATA command. If not, then
maybe you could search for the "Inverse Distance method."
Good luck,
John