示例#1
0
    def test_readWithOutSpace(self):
        """
        Reading PAZ files where PAZ are not separated by spaces.

        Tests uses unrealistic PAZ information.
        """
        f = io.StringIO("""CAL1 RJOB   LE-3D    Z  M24    PAZ 010824 0001
2
-4.3982340.48709
-4.39823-4.48709
3
1.2 4.0
-1.09823-3.08709
-1.0982330.08709
0.5""")
        p, z, k = paz.readPaz(f)
        self.assertAlmostEqual(-4.39823, p[0].real)
        self.assertAlmostEqual(40.48709, p[0].imag)
        self.assertAlmostEqual(-4.39823, p[1].real)
        self.assertAlmostEqual(-4.48709, p[1].imag)
        self.assertAlmostEqual(1.2, z[0].real)
        self.assertAlmostEqual(4.0, z[0].imag)
        self.assertAlmostEqual(-1.09823, z[1].real)
        self.assertAlmostEqual(-3.08709, z[1].imag)
        self.assertAlmostEqual(-1.09823, z[2].real)
        self.assertAlmostEqual(30.08709, z[2].imag)
        self.assertAlmostEqual(0.5, k)
        f.close()
示例#2
0
def _calcresp(calfile, nfft, sampfreq):
    """
    Calculate transfer function of known system.

    :type calfile: String
    :param calfile: file containing poles, zeros and scale factor for known
        system
    :returns: complex transfer function, array of frequencies
    """
    # calculate transfer function
    poles, zeros, scale_fac = readPaz(calfile)
    h, f = pazToFreqResp(poles, zeros, scale_fac, 1.0 / sampfreq, nfft, freq=True)
    return h, f
示例#3
0
 def test_readWithSpace(self):
     """
     Reading PAZ files where PAZ are separated by spaces.
     """
     f = io.StringIO("""CAL1 RJOB   LE-3D    Z  M24    PAZ 010824 0001
     2
     -4.39823 4.48709
     -4.39823 -4.48709
     3
     0.0 0.0
     0.0 0.0
     0.0 0.0
     0.4""")
     p, z, k = paz.readPaz(f)
     self.assertAlmostEqual(-4.39823, p[0].real)
     self.assertAlmostEqual(4.48709, p[0].imag)
     self.assertAlmostEqual(-4.39823, p[1].real)
     self.assertAlmostEqual(-4.48709, p[1].imag)
     self.assertEqual([0j, 0j, 0j], z)
     self.assertAlmostEqual(0.4, k)
     f.close()
示例#4
0
def _calcresp(calfile, nfft, sampfreq):
    """
    Calculate transfer function of known system.

    :type calfile: String
    :param calfile: file containing poles, zeros and scale factor for known
        system
    :returns: complex transfer function, array of frequencies
    """
    # avoid top level dependency on gse2
    try:
        from obspy.gse2.paz import readPaz
    except ImportError:
        msg = "Error during import from obspy.gse2. Please make " + \
              "sure obspy.gse2 is installed properly."
        raise ImportError(msg)
    # calculate transfer function
    poles, zeros, scale_fac = readPaz(calfile)
    h, f = pazToFreqResp(poles, zeros, scale_fac, 1.0 / sampfreq,
                         nfft, freq=True)
    return h, f