Program mfilt

Filter * Construct using window method

This routine prompts for input
or
uses command line parameters

Command line options

 -G            - Go! Don't prompt for filter parameters,
                 display parameters etc.

 -f fp1 fp2 ... (see below)

 -E$tsefile

 -d#domainlength
 -s$spectrum-params  ( #domain-length,$a,$b )
                     $a = 'Y' or 'N' to question: log-f axis?
                     $b = 'Y' or 'N' to question: y-axis in dB?

 -o$output (spectrum)

 -T/dev/pts/#  - If you have another terminal session, do a
                 ps and note the terminal number. Then, using this
                 option you can direct diagnostic printing to that
                 screen. Default printing is to file fort.99

More explanations to command line options:

-f filter parameters like in a TSF EDIT - FILTER command
   to the right of the 'D:' (design) specifier, e.g.
   WD KAIS 120 2.5 0.0002 0.004 0.0083333333 0.002

          sasm02 -f WD KAIS 58 2.0  0.0 0.03333 1.0    0.0  F  0.0
   window method___/ |      /  /   |---------------|   /   /    |
   ignored___________|     /  /    |<- pass-band ->|  /   /     |
   filter length__________/  /     cal-frequency_____/   /      |
   design parameter_________/   float or integer________/       |
                                  test-frequency, ignored_______|


-Efile,locator
   scans a tsf-edit file for the first 'FILTER D:' record after
   the locator. Example:
   -Ermsmode.tse,FO60

   with the file section reading
   TSF EDIT FO60
   FILTER D:WD KAIS 60 1.5  0.0005 0.003 0.00833333 0.001
   END

-o-     - no output, no prompting. For output spectrum to file:
-o#iun,$filename    or
-o #iun,$filename

-d#lines
-s#lines,N,D
        - number of spectral lines, logarithmic f, decibel amplitude.
          Default: 1024 lines, 'G' (logarithmic frequency axis),
          ' ' (linear amplitude axis)

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

Prompting in the spectrum window:
The first prompter is issued by the spectrum plotting routine.
When this prompter has been satisfied, the next prompter allows the
following actions:

Change the design method (Meth)
MW[H]  - window [Highpass]
MS     - simple [Highpass]

e | E  - erase the diagram surface

d | D  - change design parameters. A prompt sequence will be issued:
d | D  : New design parameter
    D  : one prompt each for F1 F2 Fny Fcal

A      - Antisymmetric filter
S      - Symmetric filter

L      - Filter length will be prompted for.

F      - Toggle floating point specification or rounding to spectrum bins.

W      - Window. Type code will be prompted for.

w      - Show the filter and its spectrum

u | U  - Use the filter on a time series.    ?? needs verification and more
    U  : Print the filter                    ?? explanation

N | G  - Linear (N) or logarithmic (G) frequency axis
b | B  - Amplitudes: straight (b) or decibel (B) units

C      - continue to the last part of the program (needs explanation)

O      - output. Current output file is closed. A new file is opened
         (details are prompted for)

? #v   - At what frequency do we have attenuation v ?

?f #f  - What attenuation do we have at frequency f ?