SPARC


SPARC (SACLANTCEN Pulse Acoustic Research Code) is an experimental time-marched FFP.  It treats problems with broadband or transient sources, that is, pulses. The environmental file is patterned after that used for KRAKEN and SCOOTER. The mathematical basis and numerical algorithm is described in:

 

Michael B. Porter, ``The Time-Marched FFP for Modeling Acoustic Pulse Propagation,'' J. Acoust. Soc. Amer. 87, 2013--2023 (1990).


 

Files:

 

        Name           Unit         Description

Input

        *.ENV            1       ENVironmental data

        *.STS           10       Source Time Series

Output

        *.PRT            6       PRinT file

        *.GRN           20       GReen's function

        *.RTS           35       Receiver Time Series


 

EXAMPLE AND DESCRIPTION OF ENV FILE:

 

'Munk profile'

5.0

2

'NVWS'

500  0.0  5000.0

    0.0  1548.52  0.0  1.0  0.0  0.0

  200.0  1530.29 /

  250.0  1526.69 /

  400.0  1517.78 /

  600.0  1509.49 /

  800.0  1504.30 /

 1000.0  1501.38 /

 1200.0  1500.14 /

 1400.0  1500.12 /

 1600.0  1501.02 /

 1800.0  1502.57 /

 2000.0  1504.62 /

 2200.0  1507.02 /

 2400.0  1509.69 /

 2600.0  1512.55 /

 2800.0  1515.56 /

 3000.0  1518.67 /

 3200.0  1521.85 /

 3400.0  1525.10 /

 3600.0  1528.38 /

 3800.0  1531.70 /

 4000.0  1535.04 /

 4200.0  1538.39 /

 4400.0  1541.76 /

 4600.0  1545.14 /

 4800.0  1548.52 /

 5000.0  1551.91 /

500  0.0  10000.0

  5000.0  1551.91  0.0  1.00  1.0 0.0

 10000.0 /

'R'  0.0

1500.0  1550.0

10.0                          ! RMAX (km)

1                             ! NSD

   250.0 /                    ! SD(1:NSD) (m)

26                            ! NRD

  0.0 5000.0 /                ! RD(1:NRD) (m)

'PH'                    ! PULSE

 0.0  15.0                    ! FMIN  FMAX (Hz)

1                             ! NRR

  60.0  0.200 /               ! RR(1:NRR) (km)

6                             ! NTOUT

 1.0 3.0 5.0 10.0 20.0 30.0   ! TOUT(1:NTOUT) (s)

-0.1  0.9  0.0  0.0  0.0      ! TSTART (s)  TMULT  ALPHA  BETA  V (m/s)

 

 

The input structure is identical to KRAKEN except for additional option in line 4 and 4 additional lines at the end.

 

 

   OPT(4:4): Type of calculation

             'S' for Snapshot.

FIELDS must be run afterwards to convert the '.GRN' file to a '.SHD' file containing the pressure field. The shade file can then be plotted using PLOTSHD.

       

             'R' for Range stack (horizontal array).

The time series is written in a '.RTS'(Receiver Time Series) file which can be plotted using PLOTTS

       

             'D' for Depth stack (vertical array).

             The resulting time series can also be plotted using PLOTTS.

 

 

 Additional lines:

 

 (1) - SOURCE PULSE INFORMATION:

 

       Syntax: PULSE

               FMIN  FMAX

 

       Description:

          PULSE(1:1): Type of interpolation to be used for the SSP

             'P' Pseudo-Gaussian

             'R' Ricker wavelet

             'A' Approximate Ricker wavelet

             'S' Single sine

             'H' Hanning weighted four sine

             'N' N-wave

             'G' Gaussian

             'F' From a '.STS' (Source Time Series) file.

             'B' From a '.STS' file Backwards

          PULSE(2:2): Hilbert transforming.

             'H' perform a Hilbert transform of the source

             'N' don't

              Hilbert transforming is used to eliminate

              the left travelling wave.

          PULSE(3:3): Source sign flipping.

             '+' don't flip it (recommended)

             '-' flip it

          PULSE(4:4): Source filtering.

             'L' low  cut filter

             'H' high cut filter

             'B' both high and low cut filter

             'N' no cut

          FMIN:  Low  cut frequency (Hz)

          FMAX:  High cut frequency (Hz).

                 This should be no higher than necessary since the runtime is proportional to the bandwidth.

 

 

 (3) - RECEIVER RANGES

 

       Syntax: NRR

               RR(1:NRR)

 

       Description:

          NRR:  Number of receiver ranges

          RR(): Receiver ranges (km)

 

       This line is ignored unless option 'R' has been selected for a

       range-stack.

 

 

 (3) - OUTPUT TIMES

 

       Syntax: NTOUT

               TOUT(1:NTOUT)

 

       Description:

          NTOUT:  Number of output times

          TOUT(): Output times (s)

 

 

 (3) - TIME INTEGRATION PARAMETERS

 

       Syntax: TSTART  TMULT  ALPHA  BETA V

 

       Description:

          TSTART:  Starting time for the march.  This should always be earlier than the time at which the source begins to rise.

          TMULT:   Time step multiplier. Specifying TMULT = 1.0 means that the maximum stable time step is used.

          ALPHA:   Lumping parameter

          BETA:    Explicitness parameter

          V:       Convection velocity

 

A good check of convergence can be done by running an isovelocity problem with a gaussian pulse.  The pulse should, of course, be undistorted at the receivers. Remember that Hilbert transforming the source causes it to rise early so TSTART has to be adjusted accordingly.

 

It's a good habit to plot the source function using PLOTTS before running SPARC. This is done by providing the same source information to PLOTTS that is used to drive SPARC.  Thus, if you are using a pseudo-gaussian pulse in SPARC you specify a pseudo-gaussian in PLOTTS and look at the time series.