********************************************************
RESPONSE BLOCKETTE
********************************************************
Name: Response (Polynomial) Blockette
Blockette Type: 062
Control Header: Channel Response
Field Station: Some Response Required
Network Volume: Some Response Required
Event Volume: Some Response Required
Introduced in SEED version 2.3
Use this blockette to characterize the response of a non-linear sensor.
The polynomial response blockette describes the output of an Earth sensor in
fundamentally a different manner than the other response blockettes. The
functional describing the sensor for the polynomial response blockette will
have Earth units while the independent variable of the function will be in
volts. This is precisely opposite to the other response blockettes. While it
is a simple matter to convert a linear response to either form, the non-linear
response (which we can describe in the polynomial blockette) would require
extensive curve fitting or polynomial inversion to convert from one function
to the other. Most data users are interested in knowing the sensor output in
Earth units, and the polynomial response blockette facilitates the access to
Earth units for sensors with non-linear responses.
Note Field Name Type Length Mask or Flags
1 Blockette Type -- 062 D 3 "###"
2 Length of Blockette D 4 "####"
3 Transfer Function Type A 1 [U]
4 Stage Sequence Number D 2 "##"
5 Stage Signal Input Units D 3 "###"
6 Stage Signal Output Units D 3 "###"
7 Polynomial Approximation Type A 1 [U]
8 Valid Frequency Units A 1 [U]
9 Lower Valid Frequency Bound F 12 "-#.#####E-##"
10 Upper Valid Frequency Bound F 12 "-#.#####E-##"
11 Lower Bound of Approximation F 12 "-#.#####E-##"
12 Upper Bound of Approximation F 12 "-#.#####E-##"
13 Maximum Absolute Error F 12 "-#.#####E-##"
14 Number of Poly. Coefficients D 3 "###"
(Repeat fiels 15 and 16 for each polynomial coefficient)
15 Polynomial Coefficient F 12 "-#.#####E-##"
16 Polynomial Coefficient Error F 12 "-#.#####E-##"
Notes for Fields
1 Standard blockette type identification number.
2 Length of entire blockette, including the 7 bytes in fields 1 and 2.
3 A single letter "P" describing this type of stage.
4 The identifying number of this stage.
5 A unit lookup key that refers to field 3 of the Units Abbreviation
Blockette [34] for the units of the incoming signal to this stage
of the filter.
6 A unit lookup key that refers to field 3 of the Units Abbreviation
Blockette [34] for the stages output signal.
7 A single character describing the type of polynomial approximation
(this field is mandatory).
(Note: The input units (x) into the polynomial will most always be
in Volts. The output units (pn(x)) will be in the units of field 5.)
M -- MacLaurin
pn(x) = a0 + a1*x + a2*x^2 + ... + an*x^n
(Note: The following three fields play no part in the calculation to
recover Earth units (ie field 5) for this response. If these fields are
available from the instrumentation literature, they can be used in
post-processing to assess the frequency domain validity.)
8 A single character describing valid frequency units:
"A" -- rad/sec
"B" -- Hz
9 If available, the low frequency corner for which the sensor is valid.
0.0 if unknown or zero.
10 If available, the high frequency corner for which the sensor is valid.
Nyquist if unknown.
11 Lower bound of approximation. This should be in units of 5.
12 Upper bound of approximation. This should be in units of 5.
13 The maximum absolute error of the polynomial approximation. Put 0.0
if the value is unknown or actually zero.
14 The number of coefficients that follow in the polynomial approximation.
The polynomial coefficients are given lowest order first and the number
of coefficients is one more than the degree of the polynomial.
15 The value of the polynomial coefficient.
16 The error for field 12. Put 0.0 here is the value is unknown or actually
zero. This error should be listed as a positive value, but represent
a +/- error (ie 2 standard deviations).
Examples:
1. Polynomial representation of the pressure response of a Setra Model 270
Pressure Transducer.
The Setra Model 270 Pressure Transducer is listed as valid between 600 mbar
and 1100 mbar with a nominal output of 0-5 volts and it is presumed to be
linear with respect to pressure. I haven't found any error representation.
No frequency bounds are given for the transducer.
pn(x) = a0 + a1*x
where x = voltage, and pn(x) = pressure
Using 0 volts and then 5 volts input with the pressure range, we get:
a0 = 600 a0 error = 0.0
a1 = 100 a1 error = 0.0
Sample voltage to pressure conversion:
Volts(x) Pressure (mbar)
pn(x)
---------------------------------------
0.0 600
1.0 700
2.0 800
3.0 900
4.0 1000
5.0 1100
Bound Values for polynomial:
Lower 600 mbar
Upper 1100 mbar
Assume we use an 8 bit digitizer where 0 counts = 0 volts and 255 counts = 5
volts. This translates to a digitizer gain of 51 Counts/volt.
This provide the following conversion from counts to pressure:
Counts Volts(x) Pressure (mbar)
gain*counts pn(x)
----------------------------------------------
0 0.0 600
51 1.0 700
102 2.0 800
153 3.0 900
204 4.0 1000
255 5.0 1100
The polynomial blockette representation for this sensor:
Field Name Type Length Value
Blockette Type D 3 "062"
Length of Blockette D 4 " 129"
Transfer Function Type A 1 "P"
Stage Sequence Number D 2 "??"
Stage Signal Input Units D 3 "???"
Stage Signal Output Units D 3 "???"
Polynomial Approximation Type A 1 "M"
Valid Frequency Units A 1 "B"
Lower Valid Frequency Bound F 12 " 0.00000E+00"
Upper Valid Frequency Bound F 12 " 0.00000E+00"
Lower Bound of Approximation F 12 " 6.00000E+02"
Upper Bound of Approximation F 12 " 1.10000E+03"
Maximum Absolute Error F 12 " 0.00000E+00"
Number of Polynomial Coefficients D 3 " 2"
a0 Polynomial Coefficient F 12 " 6.00000E+02"
a0 Polynomial Coefficient Error F 12 " 0.00000E+00"
a1 Polynomial Coefficient F 12 " 1.00000E+02"
a1 Polynomial Coefficient Error F 12 " 0.00000E+00"
2. Polynomial representation of the temperature response of a thermistor.
In order to sense the temperature of the Berkeley Digital Seismic Network (BDSN)
seismometers, we use a Yellow Springs Instrument Co. (YSI) 44031 thermistor.
To convert the thermistor resistance to a usable voltage signal, we have
installed the thermistor into a bridge amplification circuit. The calibrated
response is:
Voltage Temperature
-2.00 -5.02
-1.90 -4.43
-1.80 -3.81
-1.70 -3.18
-1.60 -2.53
-1.50 -1.85
-1.40 -1.15
-1.30 -0.43
-1.20 0.32
-1.10 1.10
-1.00 1.92
-0.90 2.76
-0.80 3.64
-0.70 4.56
-0.60 5.52
-0.50 6.53
-0.40 7.60
-0.30 8.72
-0.20 9.90
-0.10 11.15
0.00 12.49
0.10 13.91
0.20 15.43
0.30 17.07
0.40 18.85
0.50 20.78
0.60 22.91
0.70 25.25
0.80 27.88
0.90 30.85
1.00 34.26
1.10 38.26
1.20 43.07
1.30 49.09
1.40 57.04
1.50 68.59
The resistance of the thermistor is a non-linear function of the temperature
and its response can be described by a polynomial. YSI claims that all 44031
thermistors fall within 0.2 degrees C of the nominal response so we want to
model the response to at least an accuracy of 0.2 degrees C. This temperature
response can be adequately represented by a McLaurin polynomial of the form:
pn(x) = a0 + a1*x + a2*x^2 + ... + an*x^n
where x is the voltage and pn(x) is the temperature. The coefficients required
to approximate the above temperature-voltage data to the desired accuracy are:
Coefficient Value Error
a0 0.12505E+02 0.14223E-03
a1 0.13824E+02 0.22350E-02
a2 0.41039E+01 0.86810E-02
a3 0.12932E+01 0.44581E-01
a4 0.18741E+01 0.34469E-01
a5 0.17250E+01 0.91194E-01
a6 -0.61021E+00 0.22029E-01
a7 -0.10540E+01 0.28643E-01
a8 0.13974E+00 0.39675E-02
a9 0.39061E+00 0.10566E-02
a10 0.95345E-01 0.15096E-03
The maximum error of the polynomial representation is -0.072 degrees C at a
temperature of 57 degrees C and the temperature bounds are:
Bound Value
Lower -5.02
Upper 68.59
The parameter that is the most difficult to quantify is the frequency response
of the thermistor. YSI states that the thermistor time constant varies from 1
second in well-stirred oil to 10 seconds in still air. We have encapsulated
the thermistor and its leads in heat-shrink tubing for protection from
mechanical damage and this has the effect of lengthening the thermistor time
constant. We estimate the thermal time constant of the thermistor to be of
order 20 seconds. However, the thermistor assembly is placed inside a heavily
insulated BDSN pier and seismometer enclosure which has a thermal time constant
of order several hours to a few days. Thus the temperature sensed by the
thermistor varies so slowly that the thermistor time constant is not
significant.
The Polynomial Blockette representation for this sensor is:
Field Name Type Length Value
Blockette Type D 3 "062"
Length of Blockette D 4 " 345"
Transfer Function Type A 1 "P"
Stage Sequence Number D 2 "??"
Stage Signal Input Units D 3 "???"
Stage Signal Output Units D 3 "???"
Polynomial Approximation Type A 1 "M"
Valid Frequency Units A 1 "B"
Lower Valid Frequency Bound F 12 " 0.00000E+00"
Upper Valid Frequency Bound F 12 " 0.10000E-01"
Lower Bound of Approximation F 12 "-5.02000E-00"
Upper Bound of Approximation F 12 " 6.85900E+01"
Maximum Absolute Error F 12 " 0.72000E-01"
Number of Polynomial Coefficients D 3 " 11"
a0 Polynomial Coefficient F 12 " 0.12505E+02"
a0 Polynomial Coefficient Error F 12 " 0.14223E-03"
a1 Polynomial Coefficient F 12 " 0.13824E+02"
a1 Polynomial Coefficient Error F 12 " 0.22350E-02"
a2 Polynomial Coefficient F 12 " 0.41039E+01"
a2 Polynomial Coefficient Error F 12 " 0.86810E-02"
a3 Polynomial Coefficient F 12 " 0.12932E+01"
a3 Polynomial Coefficient Error F 12 " 0.44581E-01"
a4 Polynomial Coefficient F 12 " 0.18741E+01"
a4 Polynomial Coefficient Error F 12 " 0.34469E-01"
a5 Polynomial Coefficient F 12 " 0.17250E+01"
a5 Polynomial Coefficient Error F 12 " 0.91194E-01"
a6 Polynomial Coefficient F 12 "-0.61021E+00"
a6 Polynomial Coefficient Error F 12 " 0.22029E-01"
a7 Polynomial Coefficient F 12 "-0.10540E+01"
a7 Polynomial Coefficient Error F 12 " 0.28643E-01"
a8 Polynomial Coefficient F 12 " 0.13974E+00"
a8 Polynomial Coefficient Error F 12 " 0.39675E-02"
a9 Polynomial Coefficient F 12 " 0.39061E+00"
a9 Polynomial Coefficient Error F 12 " 0.10566E-02"
a10 Polynomial Coefficient F 12 " 0.95345E-01"
a10 Polynomial Coefficient Error F 12 " 0.15096E-03"
********************************************************
DICTIONARY BLOCKETTE
********************************************************
Name: Response (Polynomial) Dictionary Blockette
Blockette Type: 049
Control Header: Abbreviation Dictionaries
Field Station: Some Response Required
Network Volume: Some Response Required
Event Volume: Some Response Required
Introduced in SEED version 2.3
Use this blockette to characterize the response of a non-linear sensor.
Note Field Name Type Length Mask or Flags
1 Blockette Type -- 049 D 3 "###"
2 Length of Blockette D 4 "####"
3 Response Lookup Key D 4 "####"
4 Response Name V 1-25 "[UN_]"
5 Transfer Function Type A 1 [U]
6 Stage Signal Input Units D 3 "###"
7 Stage Signal Output Units D 3 "###"
8 Polynomial Approximation Type A 1 [U]
9 Valid Frequency Units A 1 [U]
10 Lower Valid Frequency Bound F 12 "-#.#####E-##"
11 Upper Valid Frequency Bound F 12 "-#.#####E-##"
12 Lower Bound of Approximation F 12 "-#.#####E-##"
13 Upper Bound of Approximation F 12 "-#.#####E-##"
14 Maximum Absolute Error F 12 "-#.#####E-##"
15 Number of Poly. Coefficients D 3 "###"
(Repeat fiels 16 and 17 for each polynomial coefficient)
16 Polynomial Coefficient F 12 "-#.#####E-##"
17 Polynomial Coefficient Error F 12 "-#.#####E-##"
Notes for Fields
1 Standard blockette type identification number.
2 Length of entire blockette, including the 7 bytes in fields 1 and 2.
3 A unique cross reference number, used in later blockettes to indicate
this particular entry.
4 The identifying name of this response. This field gives a unique name
to each dictionary entry.
5 A single letter "P" describing this type of stage.
6 A unit lookup key that refers to field 3 of the Units Abbreviation
Blockette [34] for the units of the incoming signal to this stage
of the filter.
7 A unit lookup key that refers to field 3 of the Units Abbreviation
Blockette [34] for the stages output signal.
8 A single character describing the type of polynomial approximation
(this field is mandatory): (Note: The input units (x) into the
polynomial will most always be in Volts. The output units (pn(x))
will be in the units of field 5.)
M -- MacLaurin
pn(x) = a0 + a1*x + a2*x^2 + ... + an*x^n
(Note: The following three fields play no part in the calculation to
recover Earth units (ie field 5) for this response. If these fields are
available from the instrumentation literature, they can be used in
post-processing to assess the frequency domain validity.)
9 A single character describing valid frequency units:
"A" -- rad/sec
"B" -- Hz
10 If available, the low frequency corner for which the sensor is valid.
0.0 if unknown or zero.
11 If available, the high frequency corner for which the sensor is valid.
Nyquist if unknown.
12 Lower bound of approximation. This should be in units of 5.
13 Upper bound of approximation. This should be in units of 5.
14 The maximum absolute error of the polynomial approximation. Put 0.0
if the value is unknown or actually zero.
15 The number of coefficients that follow in the polynomial
approximation. The polynomial coefficients are given lowest order
first and the number of coefficients is one more than the degree
of the polynomial.
16 The value of the polynomial coefficient.
17 The error for field 12. Put 0.0 here is the value is unknown or
actually zero. This error should be listed as a positive value,
but represent a +/- error (ie 2 standard deviations).