BDS Public

Blacknest BDS Data Overview

Terminology

Quite a lot of terminology is used seismic instrumentation. Some of this is conflicting. For the BDS system we will use the following terminology:

Term Description
Station Name of an array of seismometers. (This name has also been used to specify a single seismometer within an array). Or should we name this an array ?
Instrument A measuring instrument that consists of a seismometer sensor and a digitiser in a stations array
Sensor A per channel, seismometer or perhaps hydrophone
Digitiser A per channel digitiser
Channel An individual data channel in a Stations array.

Instrument Response MetaData

A general seismic instrument channel consists of:
  1. A seismometer sensor. This outputs a voltage dependent on displacement.
  2. An anti-aliasing filter with some response.
  3. A digitiser which samples at some frequency with some frequency response.
  4. A set of filters with appropriate frequency responses.
The frequency response for the seismometer is available either as a set of pole/zero's or as a frequency to amplitude/phase table. These define the, frequency dependent, voltage output generated by a given displacement in nanometers. These values are defined for a particular instrument type, are provided by the manufacturer's and are not changed. Sometimes the senors frequency response is provided as a velocity or acceleration based set of values. These would be converted to a displacement based set for the BDS system.

The anti-aliasing filter, digitiser and post filters have some frequency response that is given in either a pole/zero table, a frequency to amplitude/phase table or a set of FIR coefficients. These filters are fairly "flat" over the region of interest compared to the seismometers frequency response and are thus their responses are not normally taken into account.

A manual calibration is performed, occasionally, which provides an overall CalibrationScale value for a given CalibrationFrequency over the entire channel from seismometer movement to digitised value in file. This allows the seismic movement to be expressed in nanometers.

If a user wants basic seismic data they simply multiply each samples value by the CalibrationScale value.

If a user wants more detail they can get the frequency response of the seismometer and perhaps the other filters, normalize these at the CalibrationFrequency and apply the inverse transformation to the data set as well as multiply by the CalibrationScale value.

In the old system, to simplify the later procedure, the pzconst value is calculated for the pole/zero response at the calibration frequency. This provides a simple scale value that can be applied to the data's values to normalise the seismometer's pole/zero table.

The following tables provide a possible, high level, ordered list of the information available. It's order is based on the overall structure of the system. It is a high level list and does not provide detailed information.

Instrument

A complete measuring instrument, consisting of a sensor, digitiser and calibration information.
Item Description
Id Unique integer ID
Name The instruments name. (A Pit name/Channel name)
Calibration[] Calibration measurements. A list of calibration measurements by date
Sensor[] The Sensors used. A list of sensors by date
Digitiser[] The Digitisers used. A list of Digitisers by date

Sensor

A measurement sensor. This would be a seismometer or could be another unit such as a Hydrophone.
Item Description
Id Unique integer ID
Period The time period the sensor was in use
Name The sensor name. (This may not be needed)
Type The sensors type. (Seismometer, Hydrophone etc)
Model The sensors model name. The Vendor make/type of sensor
SerialNumber The sensors serial number
Response Frequency response of sensor as an array of pole zero values or as an amplitude/phase table
Location Location: latitude and longitude in degrees (which grid system?) and elevation (from where and in what units ?)
HorizontalAngle Seismometer placement horizontal angle in degrees
VerticalAngle Seismometer placement vertical angle in degrees
Gain The gain setting. For information only. Set to 0 if unknown.

Digitiser

The digitiser used. In reality the sensor/digitiser could be a single unit.
Item Description
Id Unique integer ID
Period The time period the sensor was in use
Name The digitiser name. (This may not be needed)
Model The digitiser model name. The Vendor make/type of instrument
SerialNumber The digitiser's serial number
SamplingFrequency The frequency of sampling in HZ
Response[] Array of responses for each module (Anti-aliasing filter, Digitiser, post filter etc)
Gain The gain setting. For information only. Set to 0 if unknown.

Calibration

A calibration measurement.
Item Description
Id Unique integer ID
Period The time period the sensor was in use
CalibrationFrequency The frequency that the CalibrationScale value is valid for
CalibrationScale The scaling value to apply to the data to normalise to Nanometers. This is a measured value at the calibration frequency and is in Nanometers/Count.

Response

A frequency response. This can store the response as a pole/zero table, an amplitude/phase table or a set of FIR coefficients.
Item Description
Id Unique integer ID
Name The response name. (Sensor, AntiAlias, Digitiser)
PoleZeros Frequency response defined by an array of pole zero values in radians per second.
AmplitudePhaseTable Frequency response defined by an array of amplitude/phase values with respect to frequency.
Coefficients Frequency response defined by an array of coefficients.

Notes:
  • This is a high level overview.
  • It may be worth pre-calculating the sensors pole/zero normalisation scale value (pzconst) and storing this in a cache for performance reasons.

Raw Seismic Data

The seismic data consists of a number of channels of sampled amplitude values from arrays of sensors. The seismic data is stored in files in various formats. The following provides the core features of each format.

TapeDigitiser

Raw data format
Blocked Data
Meta Data

Raw Data format: 32bit Float, 16bit Integer, ASCII Float
Blocked: yes, no
Channels: 24, unlimited
MetaData: yes