[517] in linux-announce channel archive

home help back first fref pref prev next nref lref last post

Yorick 1.1 released

daemon@ATHENA.MIT.EDU (Lars Wirzenius)
Fri May 5 13:17:01 1995

Date: Fri, 5 May 1995 16:39:12 +0300
From: Lars Wirzenius <wirzeniu@cc.helsinki.fi>
To: linux-activists@niksula.hut.fi, linux-announce@vger.rutgers.edu

X-Mn-Key: announce

From: munro@icf.llnl.gov (David H. Munro)
Newsgroups: comp.os.linux.announce
Subject: Yorick 1.1 released
Organization: Lawrence Livermore National Laboratory, NCD
Keywords: interpreter, numerical analysis, computational physics
Approved: linux-announce@news.ornl.gov (Lars Wirzenius)
Followup-to: comp.os.linux.development.apps
References:

Yorick 1.1 is available at
sunsite.unc.edu:/pub/Linux/apps/math/matrix.  A ready-to-run binary
version for Linux is available there as yorick-1.1.bin.tgz; just
unpack it in / as root to install yorick in /usr/local/bin.
Afterwards, type man yorick.  Note that the binary "knows" what
directory it is installed in; if you want another set of directories,
you must build the code yourself.  In order to build custom versions
of Yorick with your own compiled subroutines, you will also need
yorick-1.1.lib.tgz.  Yorick is also easy to build on Linux from the
source code in yorick-1.1.tgz.

--------------------------------
What is Yorick?
---------------

Yorick is an interpreted language like Basic or Lisp.  For an interpreter,
Yorick is very fast for many scientific applications.  It features:

     * A C-like language, but without declarative statements.  Operations
       between arrays require no explicit loops, which accounts for
       Yorick's high speed.  Scientific computing and numerical analysis
       are the goals of most Yorick sessions.

     * An X window system interactive graphics package.  Concentrates on
       x-y plots and filling and contouring quadrilateral meshes.  Also
       handles cell arrays.  Hardcopy to binary CGM or PostScript files.
       Includes a separate CGM browser.  The MacIntosh version draws
       graphics to an ordinary Mac window and can write PICT files.

     * Yorick's binary file package can read or write floating point
       formats foreign to the machine where Yorick is running.  Thus,
       you can share binary files freely on heterogeneous networks.

     * A library of functions written in the Yorick language.  Includes
       Bessel, gamma, and related functions, multiple key sorting,
       spline, rational function, and least squares fitting, and routines
       to read and write netCDF files.

     * Provisions for embedding compiled subroutines and functions within
       a Yorick interpreter.  Includes a sample package which solves
       matrices and performs FFTs.

Because Yorick can read either text or binary files, it can be used
"out of the box" as a pre- and post-processor for most existing
physics simulation programs:

  As a pre-processor, you can write a Yorick program that produces
  complicated input files for a simulation.  These might be based on
  output from other programs, or might require evaluation of complicated
  functions or involve a lot of repetition.

  As a post-processor, Yorick allows you to compare the results of
  several simulations or to analyze results of a single simulation in
  ways you did not forsee when you ran it.

Also, developing a simulation code is considerably easier when you
have a tool like Yorick: If you plan to use Yorick to generate input
files, you don't need to fuss about making your input "user friendly";
if you plan to post-process with Yorick, your simulation code doesn't
need any graphics, and its output can be generally less flexible.

Finally, you can build special versions of Yorick to act as drivers
for your compiled routines.  An interpreted Yorick program can
generate input for your routine and plot its output.  A large modular
simulation code could be built by loading several such routines and
writing the main control loop as interpreted code.

--------------------------------

The differences from the 1.0 version are slight, but a number of
annoying bugs have been repaired.

New features include: (1) Simpson, Romberg, Runge-Kutta, and
Bulirsch-Stoer integrators. (2) A package to assist in making
animations.  (3) A crude graphics tutorial to exhibit and exercise all
of Yorick's graphics primitives.  (4) Three new demo packages which
show you how to use Yorick to make more sophistocated graphics, as
well as to solve some common physics problems:

   demo1.i  - The original demo -- a 1D hydro code written in the
              interpreter.
   demo2.i  - A 2D wave equation solver, showing how to use Yorick
              to compute the Laplacian.  This demo computes the
              evolution of a bump on a drumhead, and makes three
              different types of movies showing that evolution.
   demo3.i  - Solve Lagrange's equations for a famous chaotic
              pendulum.  Makes a pretty lifelike movie of the
              result, which I personally think rates "best of show".
   demo4.i  - Use complex mapping to solve for the flow field of an
              airfoil.  Display the streamlines on top of a pseudo-
              colored pressure field.  It's also a movie, showing the
              solution at various angles of attack, because my kids
              were disappointed that it didn't move like the others.
              Feel free to rip that out so you can contemplate a
              single frame for a while.

The new demos are particularly aimed at those of you who are teachers.
I'll be very interested to hear if you think you can use them, or pose
problems they inspire, as teaching materials.  If you know any physics
teachers who might be interested, please show them and ask them to
contact me if they care to.

The animations run at a very acceptable speed on a Pentium with an ATI
Mach 64 graphics card (under $3000 for a complete system from Gateway
2000, and probably other vendors).  With slower X servers, you will no
doubt get bored before they finish.  If you have a monochrome screen,
you'll need to tinker with the demos to get them to display anything
interesting.  Sorry.

Dave Munro            munro@icf.llnl.gov

--
Send submissions for comp.os.linux.announce to: linux-announce@news.ornl.gov
PLEASE remember Keywords: and a short description of the software.


home help back first fref pref prev next nref lref last post