Man Linux: Main Page and Category List

NAME

       yorick - interpreted language for numerical analysis and postprocessing

SYNOPSIS

       yorick [ -i file1.i [ -i file2.i [ ... ]]]
       yorick -batch file.i

DESCRIPTION

       Yorick is an interpreted language like Basic or Lisp, but  far  faster.
       It features:

       *  A  C-like  language, but without declarative statements.  Operations
          between arrays produce  array  results,  which  is  one  reason  for
          Yorick’s high speed.

       *  An X window system interactive graphics package.  Concentrates on x-
          y plots and  filling  and  contouring  quadrilateral  meshes.   Also
          handles  cell  arrays.   Graphics  can  be  output  to binary CGM or
          PostScript files as well.   A  separate  CGM  browser,  gist(1),  is
          included.

       *  A binary file package which can read or write floating point formats
          which are foreign to the machine where Yorick is running.  Thus, you
          can share binary files freely on a heterogeneous network.

       *  A  library  of  functions  written  in  the  Yorick language.  These
          include 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.   A  compiled package which solves matrices and
          performs FFTs is supplied.

       You cannot learn to  program  in  Yorick  by  reading  this  man  page.
       Instead, start Yorick (with no arguments) and type:
        help
       This  will tell you the name of the Yorick site directory at your site.
       The site directory contains a doc/ subdirectory; read the  README  file
       there  to find out about more documentation.  The Yorick user manual is
       in project GNU’s TeXinfo format, which can be either  printed  or  read
       online  as  hypertext  using  the  info  command  in  GNU  Emacs.  Also
       available are a set of six quick reference sheets (as PostScript),  and
       alphabetized  collections  of  all  of  Yorick’s  online  help comments
       (accessible via the help command).  Finally, the i/ subdirectory of the
       Yorick  site  directory  is a library of functions which are written in
       the Yorick language, which are also helpful as examples of how to write
       Yorick programs.

       To demonstrate Yorick, start Yorick and type the following two lines:
        #include "demo1.i"
        demo1
       After the little movie runs on your X window system display, try:
        help, demo1
       Follow  the  SEE  ALSO  references  in  this  help  message  by issuing
       additional help commands.  Also, the help command will print  the  full
       pathname  of  the  demo1.i  file.   Read this file to see how the demo1
       function works.  You can repeat this procedure with  demo2.i,  demo3.i,
       and demo4.i:
        demo1 - movies of sound and shock waves
        demo2 - movies of a drumhead oscillating
        demo3 - movie of a chaotic pendulum
        demo4 - visualization of the flow field around an airfoil
       You  can  run  a  crude tutorial introducing all of the Yorick graphics
       commands by starting Yorick and typing:
        #include "testg.i"
        grtest
       You can get a description of  the  various  files  in  the  interpreted
       library by typing (as a command to Yorick):
        library

   Options
       -i file.i           includes  the  Yorick  source file file.i as Yorick
                           starts.   This  is  equivalent  to   the   #include
                           directive after Yorick has started.

       -batch file.i       includes  the  Yorick  source file file.i as Yorick
                           starts.  Your customization file custom.i, if  any,
                           is  not  read,  and Yorick is placed in batch mode.
                           Use the help command on the batch  function  (help,
                           batch) to find out more about batch mode.  In batch
                           mode, all errors are fatal; normally,  Yorick  will
                           halt  execution  and  wait  for more input after an
                           error.

AUTHOR

       David H. Munro, Lawrence Livermore National Laboratory

FILES

       Y_SITE refers to the Yorick site directory; use  the  help  command  to
       find  its name at your site (the variable Y_SITE also contains the name
       of the site directory):

       Y_SITE/doc/*             documentation, including the  quick  reference
                                sheets,    user   manual,   and   alphabetized
                                collections of all the online help messages.

       Y_SITE/i/*.i             a library  of  interpreted  Yorick  functions.
                                Here  are  Bessel,  gamma, and beta functions,
                                multiple key sorting, curve fitting functions,
                                and  more.   The  file  readme.i  has  a  more
                                complete description.

       Y_SITE/g/*               graphics   style   sheets,    palettes,    and
                                PostScript template

       Y_SITE/i0/*.i            include files Yorick needs to read whenever it
                                starts.   Several   of   these   contain   the
                                definitions of functions which you may need to
                                read  in  order  to  fully  understand   their
                                operation,  or as examples of Yorick programs.

BUGS

       If x is a scalar int, long, or double,
        x(1)= scalar-expression
       will fail.  You normally wouldn’t do  the  assignment  like  this  (you
       would  just  redefine  x).  Usually, you can work around this bug using
       the merge function; do "help, merge"  and  read  Y_SITE/i/bessel.i  for
       examples of the merge function.

       Expressions  like openb("file_containing_x").x do not work, even though
       they are syntactically and logically correct.  It turns  out  the  file
       closes  before the data can be read.  This one may be fixable, but it’s
       not easy.

       The nice= and restrict= keywords to the limits function don’t  seem  to
       work properly.

       Clipping  of filled mesh plots (the plf command) is not always correct.

       Text -- particularly curve markers -- is clipped by not drawing it; the
       absence  of  partial  characters  at  the  edge  of a plot puzzles most
       people.

       Recursive debug mode (debugging an error which occurred while you  were
       debugging) doesn’t work.  Also, Yorick can’t always get into and out of
       its debug mode properly.  Occasionally, it will  get  the  line  number
       where  an  error  occurred  wrong,  especially  if the error was in the
       condition or increment clause of a for loop.

       On pseudocolor displays, a color image may  require  you  to  move  the
       mouse  into  yorick’s  X  window  to  display  properly, if you use the
       private=1 option of the window command.   Unless  your  window  manager
       allows  you to set colormap focus independently of keyboard focus, this
       can be annoying.

SEE ALSO

       gist(1)