[SAC-HELP] SAC: Using transfer function to get data in the correct units

Sheila Peacock sheila at blacknest.gov.uk
Thu Nov 4 04:55:52 PDT 2010


On 11/02/2010 03:06 PM, Mac Green wrote:
> Hi SAC Users,
>
> I am using a rotational sensor with a transfer function
>
> W(f) = A*s^2/[(s - p1)*(s - p2)*(s - p3)*(s - p4)*(s - p5)],
>
>
> where:
>
>
> A=6727500 V/(rad/sec)*Hz^3;
>
> p1 = 0.02 Hz
>
> p2 = 0.04 Hz
>
> p3 = 23 Hz
>
> p4 = 65 Hz
>
> p5 = 90 Hz
>
>
> I would appreciate any help in converting data that is currently in counts to data in radians or radians per second.
>
>
> Thanks.
>
>
>
> _______________________________________________
> sac-help mailing list
> sac-help at iris.washington.edu
> http://www.iris.washington.edu/mailman/listinfo/sac-help
Dear Mac,

to decon this inst to give rad/sec with sac transfer you need a complex pole-zero file in
radians/sec. in form

POLES N
RE(P1) IM(P1)
.
.
.
RE(PN) IM(PN)
ZEROS M
RE(Z1) IM(Z1)
.
.
.
RE(ZM) IM(ZM)
CONSTANT something

recasting your eqn as ratio of factors containing zeros (zn) on top and poles (pn)
underneath (see Scherbaum - "Of Poles And Zeros" - Kluwer, 2001, p. 40):

W(f) = A [(s'-z1)(s'-z2)]/[(s'-p1)(s'-p2)(s'-p3)(s'-p4)(s'-p5)]

s' is the standard Laplace transform variable s divided by 2pi.
p1 to p5 are complex poles with real parts as listed in your email
but negative (assuming sensor is causal), and imaginary parts all zero, in Hz.
Your transfer function has two zeros z1 and z2, both equal to (complex) zero.

For SAC you need the poles and zeros in radians/s so multiply them
all by 2pi.  You then have to multiply your A by [(2pi)^5]/[(2pi)^2] = (2pi)^3
to keep W(f) the same.
You have also to provide SAC with a "CONSTANT", equal to the product of the sensitivity
and a factor called "A0 normalization factor" in the SEED manual, which states:
"set such that when you evaluate the polynomial at the reference frequency the
result will be one".  I am going to call this normalisation factor Y and
assume that your reference frequency is 1 Hz.
Let the sensitivity (in V/(rad/s)) at 1 Hz be a.  The "CONSTANT" is then aY.
W(1 Hz) = a.
W(1 Hz) = a = A[(s'-z1)(s'-z2)]/[(s'-p1)(s'-p2)(s'-p3)(s'-p4)(s'-p5)] evaluated at 1 Hz.
When all the poles and zeros are converted to rad/s by multiplying every factor
by 2pi and using the standard Laplace variable s not s':
a = A[(2pi)^3][(s-z1x2pi)(s-z2x2pi)]/[(s-p1x2pi)(s-p2x2pi)(s-p3x2pi)(s-p4x2pi)(s-p5x2pi)].
By the SEED manual definition,
a = aY[(s-z1x2pi)(s-z2x2pi)]/[(s-p1x2pi)(s-p2x2pi)(s-p3x2pi)(s-p4x2pi)(s-p5x2pi)].
Hence A[(2pi)^3] = aY

POLES 5
-0.02x2pi 0.0x2pi
-0.04x2pi 0.0x2pi
-23.0x2pi 0.0x2pi
-65.0x2pi 0.0x2pi
-90.0x2pi 0.0x2pi
ZEROS 2
0.0x2pi 0.0x2pi
0.0x2pi 0.0x2pi
CONSTANT A[(2pi)^3]

CONSTANT = 1.66876e9

Assuming calibration freq 1 Hz, s = 2pi x 1 Hz, Y can be worked out
(you need a program or matlab to get Y) as  0.334460E+08
This gives sensitivity 49.89411 V/(rad/s) at 1 Hz - does that tie in with
manufacturer's info?

I get this poles-zeros file:

POLES 5
-0.125664 0.0
-0.251327 0.0
-144.513 0.0
-408.407 0.0
-565.486 0.0
ZEROS 2
0.0 0.0
0.0 0.0
CONSTANT 1.66876e9

If you want the transfer function in radians not rad/s you have to
add an extra zero at (0.0, 0.0)
i.e
ZEROS 3
0.0x2pi 0.0x2pi
0.0x2pi 0.0x2pi
0.0x2pi 0.0x2pi

Instead of W(f)in V/(rad/s) the LHS of the eqn is now WW(f) in V/rad
At 1 Hz, WW(f)= W(f) x 2pi x 1 Hz.
The sensitivity is now aa in V/rad.  WW(1 Hz) = aa
aa = ax2pi = 313.494 V/rad
Normalisation factor becomes YY =
1/{abs[(s-z1x2pi)(s-z2x2pi)(s-z3x2pi)]/[(s-p1x2pi)(s-p2x2pi)(s-p3x2pi)(s-p4x2pi)(s-p5x2pi)]}
YY = Y/2pi = 0.554573E+07
so that aa = aaYY[(s-z1x2pi)(s-z2x2pi)(s-z3x2pi)]/[(s-p1x2pi)(s-p2x2pi)(s-p3x2pi)(s-p4x2pi)(s-p5x2pi)]
still satisfying the SEED manual definition.

CONSTANT still = A[(2pi)^3]

CONSTANT  1.66876e9

pole-zero file for sac is:

POLES 5
-0.125664 0.0
-0.251327 0.0
-144.513 0.0
-408.407 0.0
-565.486 0.0
ZEROS 3
0.0 0.0
0.0 0.0
0.0 0.0
CONSTANT 1.66876e9

(assuming your calibration frequency was 1 Hz)

issue sac command "transfer from polezero subtype your-polezerofilename"

I hope others on this list will correct any errors.

Sheila.





More information about the sac-help mailing list