OCTAVE rayleigh.m

Demonstration program on how to use the dispersion computation function rwv.f in an octave program. Required octave functions are: The build script has one active line plus some informational echo commands. The active line is:

mkoctfile rwv.f wrapper.cpp -o disper.oct

In order for this to work, one must have the development package installed for Octave. In Debian 10 Linux, the packages needed installation are:

Of course, these are not the only packages, Octave has a lot of packages that are of use. But the above packages will install the mkoctfile. The wrapper.cpp and all BSU *.m files will be installed in /usr/local/share/octave/site-m/ if you build BSU from the source tar archive. The locate command can also be helpful in other situations.

The disper() function returns a vector pv with fundamental and any higher modes. Here, it is demonstrated how to select and plot both fundamental and first higher mode. The higher mode becomes possible and recognized when the returned pv(2) value becomes > zero. This demonstration code searches backward to find the first non-zero case of the second component being non-zero.

Another similar code, moho.m is included that illustrates the same points as above. It shows how to display dispersion as a function of period rather than frequency.