ALSSP is a software set designed to simulate acoustic lenses. It runs in the PV-WAVE environment. It can be run interactively from the PV-WAVE command line or as batch files, or a combination of both. The software implements both geometric and wave acoustics. Geometric acoustics (ray-tracing) is used within the lens system, and wave acoustics is used after the final lens interface. For a more complete description of the algorithms used, see Fink, Kevin. Computer Simulation of Pressure Fields Generated by Acoustic Lens Beamformers, Masters Thesis, University of Washington, 1994.



Notes on PV-WAVE:

PV-WAVE is not case sensitive, so commands can be entered in either upper or lower case. Note, however, that UNIX is case-sensitive, so UNIX commands and filenames must be entered in the correct case. If a PV-WAVE command line is more than one line long, then it can be broken and continued on the next line by ending it with the dollar sign character ('$'). Lines longer than 80 characters will often be split this way in order to preserve readability. For example,


is the same as


Notes on this manual:

In this manual, program and function names will be shown in all capital letters. Parameter names passed to commands will be shown in italics, but actual parameters will be in normal text. Keyword parameters will also be in /italics, but will begin with a forward slash character ('/') to differentiate them from other parameter names. For program and function specifications, [optional parameters] will be shown within square brackets. For example, part of the specification for CALC_LENS is:

CALC_LENS,filename [,/num_rays]

meaning that filename is a required parameter, but /num_rays is an optional keyword parameter. For example:



would call the program CALC_LENS with the string 'testfile', and would set the keyword parameter /num_rays to 21.

Installation Instructions

  1. If ALSSP is to be installed in a system directory, su to root.
  2. Extract Makefile and alssp.tar.Z from a backup tape (tar xf /dev/rst0).
  3. If ALSSP is to be installed in /usr/local/lib (the default), type "make". If ALSSP is to be installed in a different directory, type "make INSTALLDIR=directory_to_install_in".
  4. If desired, delete the extracted backup files (Makefile, alssp.tar.Z, and README).
  5. Make sure that WAVE_PATH is set correctly. This is set in each user's .cshrc file. The path which must be included will be given by the make command. It should be added to each user's .cshrc file as a line of the form: setenv WAVE_PATH "/usr/local/lib/alssp/wave"
  6. Make sure that PV-WAVE is configured with enough space for ALSSP. The best way to do this is to create a file called ".wave_startup" in each user's home directory. This file should include the line ".size 32000 32000". Then the environment variable WAVE_STARTUP should be set to ~/.wave_startup.
  7. Before using ALSSP in PV-WAVE, WAVE_PATH and WAVE_STARTUP must be set. Once the above line has been added to the user's .cshrc file, this will happen automatically when they log on. Note that changes to the .cshrc file do not affect the user's environment until they either log out then back in or run the command "source .cshrc".
  8. If desired, copy the EXAMPLE directory to your own directory tree so you can run the example lens system described next. Assuming that ALSSP was installed in the default directory, the command "cp -r /usr/local/lib/alssp/EXAMPLE ." will create the EXAMPLE directory as a subdirectory of the current working directory. If ALSSP was installed somewhere other than /usr/local/lib, then that path should be substituted in the cp command. The -r option for cp is required because the EXAMPLE directory contains a subdirectory called template which also must be copied.

Example Installation:

Become the superuser:

Enter the Root Password:

Extract the files from tape (device rst0):
tar xf /dev/rst0

Install the software:

Installing ALSSP in /usr/local/lib
Make sure WAVE_PATH includes /usr/local/lib/alssp/wave

Go back to being a normal user:

Edit .cshrc to set WAVE_PATH and WAVE_STARTUP. Add the lines:
setenv WAVE_PATH /usr/local/lib/alssp/wave
setenv WAVE_STARTUP ~/.wave_startup

Create the file ~/.wave_startup and include the line:
.size 32000 32000

Source the .cshrc file to set WAVE_PATH and WAVE_STARTUP in this session:
source .cshrc

Copy the EXAMPLE directory:
cp -r /usr/local/lib/alssp/EXAMPLE .

Move to the EXAMPLE directory:


Coordinate System

The coordinate system used by this package is shown in Figure 1 with an example lens system. All length units used in the programs are in centimeters (cm) with one exception, which is that the speed of sound is given in meters/second (m/sec). The rays are always traced moving in the positive x direction (left to right). The screen plots always display y vs. x, although the lens system may project into the z direction. In such cases, the projection of the entire system into the xy plane is displayed (unless /plot2d is set).

The position of the origin can be selected arbitrarily. If a BEAM THREE OPTICS file is used to specify the lens system, the origin will be set to the same position as it was in BEAM THREE.

Figure 1 - Coordinate System

Return to Title Page and Table of Contents

Go to the Example Lens System

Kevin Fink's Home Page (http://www.fink.com/Kevin.html)