Skip to content
Snippets Groups Projects
Commit f31caaf2 authored by Evan Hall's avatar Evan Hall
Browse files

The Peterson low-noise model

parent cc157f1a
No related branches found
No related tags found
1 merge request!54More seismic functions
......@@ -58,3 +58,28 @@ def seisBSC(f):
nr = 10**(interp1d(SEI_F, log10(SEI_R))(f))
return nt, nr
def seisNLNM(f):
"""The Peterson New Low-Noise Model.
Returns a displacement ASD.
"""
Pl = np.array([
1.00e-02, 1.00e-01, 1.70e-01, 4.00e-01, 8.00e-01, 1.24e+00,
2.40e+00, 4.30e+00, 5.00e+00, 6.00e+00, 1.00e+01, 1.20e+01,
1.56e+01, 2.19e+01, 3.16e+01, 4.50e+01, 7.00e+01, 1.01e+02,
1.54e+02, 3.28e+02, 6.00e+02, 1.00e+04])
Al = np.array([
-156.72, -162.36, -166.7 , -170. , -166.4 , -168.6 , -159.98,
-141.1 , -71.36, -97.26, -132.18, -205.27, -37.65, -114.37,
-160.58, -187.5 , -216.47, -185. , -168.34, -217.43, -258.28,
-346.88])
Bl = np.array([
5.64, 5.64, 0. , -8.3 , 28.9 , 52.48, 29.81,
0. , -99.77, -66.49, -31.57, 36.16, -104.33, -47.1 ,
-16.28, 0. , 15.7 , 0. , -7.61, 11.9 , 26.6 ,
48.75])
nlnm = 10**(np.interp(1/f, Pl, Al+Bl*np.log10(Pl))/20) / (2 * np.pi * f)**2
return nlnm
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment