Пример #1
0
    def setUp(self):
        self.install = InstallCfg()
        self.r_srcfile = "test_wh_ucsb.src"
        self.r_faultfile = "ffsp.inp"
        self.r_velmodel = "nr02-vs500_lf.vel"
        self.vmodel_name = "LABasin500"
        self.sim_id = int(seqnum.get_seq_num())

        # Create directories
        a_refdir = os.path.join(self.install.A_TEST_REF_DIR, "ucsb")
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        cmd = "mkdir -p %s" % (a_indir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_tmpdir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_outdir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_logdir)
        bband_utils.runprog(cmd)

        # Copy SRC file
        cmd = "cp %s %s" % (os.path.join(a_refdir, self.r_srcfile), a_indir)
        bband_utils.runprog(cmd)
Пример #2
0
 def setUp(self):
     self.install = InstallCfg()
     self.match_cfg = MatchCfg()
     os.chdir(self.install.A_INSTALL_ROOT)
     self.stations = "test_stat.txt"
     self.vmodel_name = "LABasin"
     self.sim_id = int(seqnum.get_seq_num())
     self.freqs = ['lf', 'hf']
     cmd = "mkdir -p %s/%d" % (self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_TMP_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_LOG_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                    self.stations,
                                    self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     for i in range(1, 6):
         for freq in self.freqs:
             cmd = ("cp %s/gp/s%02d-%s-site.bbp %s/%d/%d.s%02d-%s.acc.bbp" %
                    (self.install.A_TEST_REF_DIR, i, freq,
                     self.install.A_TMP_DATA_DIR, self.sim_id, self.sim_id,
                     i, freq))
             bband_utils.runprog(cmd)
Пример #3
0
    def setUp(self):
        """
        Set up and stage in all input files
        """
        self.install = InstallCfg()
        self.velmodel = "nr02-vs500.fk1d"
        self.srcfile = "whittier_v12_11_0_fs.src"
        self.srffile = "whittier_v12_11_0_fs.srf"
        self.stations = "whittier_v19_02_1_short.stl"
        self.sim_id = int(seqnum.get_seq_num())

        # Set up paths
        refdir = os.path.join(self.install.A_TEST_REF_DIR, "irikura")
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))

        # Create directories
        bband_utils.mkdirs([a_indir, a_tmpdir, a_outdir, a_logdir],
                           print_cmd=False)

        cmd = "cp %s %s" % (os.path.join(refdir, self.velmodel), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(refdir, self.stations), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(refdir, self.srffile), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(refdir, self.srcfile), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
Пример #4
0
    def setUp(self):
        self.install = InstallCfg()
        self.cfg = BBToolboxCfg()
        self.sim_id = int(seqnum.get_seq_num())
        self.velmodel = "sdsu-aug2018-labasin-vmod.txt"
        self.srffile = "m589-s2379646.srf"
        self.stations = "test_stat.txt"
        self.srcfile = "wh_test.src"
        self.vmodel_name = "LABasin500"

        # Set up paths
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        a_refdir = os.path.join(self.install.A_TEST_REF_DIR, "sdsu")

        # Create directories
        bband_utils.mkdirs([a_indir, a_tmpdir, a_outdir, a_logdir],
                           print_cmd=False)

        cmd = "cp %s %s" % (os.path.join(a_refdir, self.velmodel), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(a_refdir, self.stations), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(a_refdir, self.srffile), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(a_refdir, self.srcfile), a_indir)
        bband_utils.runprog(cmd)
        for i in range(1, 6):
            cmd = "cp %s %s" % (
                os.path.join(self.install.A_TEST_REF_DIR, "gp", "s0%d-lf.bbp" %
                             (i)),
                os.path.join(a_tmpdir, "%d.s0%d-lf.bbp" % (self.sim_id, i)))
            bband_utils.runprog(cmd)
Пример #5
0
    def setUp(self):
        self.install = InstallCfg()
        self.stations = "nr_v13_3_1.stl"
        self.source = "nr_v14_02_1.src"
        self.eventname = "NR"
        self.sim_id = int(seqnum.get_seq_num())
        sta_base = os.path.basename(os.path.splitext(self.stations)[0])
        sim_id = self.sim_id

        # Set up paths
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(sim_id))
        a_tmpdir_seis = os.path.join(self.install.A_TMP_DATA_DIR, str(sim_id),
                                     "obs_seis_%s" % (sta_base))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(sim_id))
        a_validation_outdir = os.path.join(a_outdir, "validations",
                                           "stewart_duration_gmpe")

        # Create directories
        bband_utils.mkdirs([
            a_indir, a_tmpdir, a_tmpdir_seis, a_outdir, a_logdir,
            a_validation_outdir
        ])

        # Copy station list
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR, "as16",
                                         self.stations), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR, "as16",
                                         self.source), a_indir)
        bband_utils.runprog(cmd)
Пример #6
0
 def setUp(self):
     self.install = InstallCfg()
     self.r_velmodel = "labasin.vel"
     self.vmodel_name = "LABasin"
     self.r_srcfile = "test_wh_ucsb.src"
     self.r_srffile = "FFSP_OUTPUT.001"
     self.sim_id = int(seqnum.get_seq_num())
     self.cfg = UCrmgCfg(self.vmodel_name)
     cmd = "mkdir -p %s/%d" % (self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_TMP_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_LOG_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/ucsb/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                      self.r_srcfile,
                                      self.install.A_IN_DATA_DIR,
                                      self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/ucsb/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                      self.r_velmodel,
                                      self.install.A_IN_DATA_DIR,
                                      self.sim_id)
     bband_utils.runprog(cmd)
     os.chdir(os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id)))
Пример #7
0
    def setUp(self):
        self.install = InstallCfg()
        self.cfg = GenslipCfg()
        os.chdir(self.install.A_COMP_DIR)
        self.sim_id = int(seqnum.get_seq_num())
        self.velmodel = "nr02-vs500.fk1d"
        self.srcfile = "test_wh.src"
        self.outsrf = "%d_test_eq.srf" % self.sim_id

        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir],
                           print_cmd=False)

        cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                       self.velmodel,
                                       self.install.A_IN_DATA_DIR,
                                       self.sim_id)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                       self.srcfile,
                                       self.install.A_IN_DATA_DIR,
                                       self.sim_id)
        bband_utils.runprog(cmd, print_cmd=False)
Пример #8
0
    def setUp(self):
        """
        Set up and stage in all input files
        """
        self.install = InstallCfg()
        self.hfsim_cfg = HfsimsCfg()
        self.velmodel = "genslip_nr_generic1d-gp01.vmod"
        self.srcfile = "test_wh.src"
        self.srffile = "m5.89-0.20x0.20_s2379646.srf"
        self.stations = "test_stat.txt"
        self.metadata = "metadata.txt"
        self.sim_id = int(seqnum.get_seq_num())

        # Set up paths
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))

        # Create directories
        bband_utils.mkdirs([a_indir, a_tmpdir, a_outdir, a_logdir],
                           print_cmd=False)

        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR,
                                         "gp", self.velmodel), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR,
                                         "gp", self.stations), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR,
                                         "gp", self.srffile), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR,
                                         "gp", self.srcfile), a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
Пример #9
0
def ll2xy(ifile, ofile, mlon, mlat, x_azim):
    """
    Invoke Rob's cc program to convert from lat/lon to xy
    This inputs a station list file.
    Currently, the slo contains lat/lon and x/y. But since the user may
    not be able to do this conversion, we will convert it here again for them.
    """
    install = InstallCfg()
    ll2xy_bin = os.path.join(install.A_GP_BIN_DIR, "ll2xy")
    cmd = ("%s mlon=%f mlat=%f xazim=%f < %s" %
           (ll2xy_bin, mlon, mlat, x_azim, ifile))
    print(cmd)
    oput = os.popen(cmd)
    out_file = open(ofile, "w")
    out_file.write("% station coordinates in x,y system, "
                   "origin at fault center\n")
    out_file.write("%    X (north)     Y (east)\n")
    for line in oput:
        elems = []
        elems = line.split()
        x_north = round(float(elems[0]))
        y_east = round(float(elems[1]))
        out_str = "%10d  %10d\n" % (x_north, y_east)
        out_file.write(out_str)

    out_file.close()
    return ofile
Пример #10
0
    def setUp(self):
        """
        Copy needed files to run the test
        """
        self.velmodel = "genslip_nr_generic1d-gp01.vmod"
        self.srffile = "m5.89-0.20x0.20_s2379646.srf"
        self.stations = "one_stat.txt"
        self.vmodel_name = "LABasin"
        self.sim_id = int(seqnum.get_seq_num())

        self.install = InstallCfg()
        self.jbsim_cfg = JbsimCfg(self.vmodel_name)

        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir], print_cmd=False)

        cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                       self.velmodel,
                                       self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                       self.stations,
                                       self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                       self.srffile,
                                       self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd, print_cmd=False)
Пример #11
0
    def setUp(self):
        self.install = InstallCfg()
        self.r_velmodel = "nr02-vs500_lf.vel"
        self.vmodel_name = "LABasin500"
        self.r_srcfile = "test_wh_ucsb.src"
        self.r_srffile = "FFSP_OUTPUT.001"
        self.sim_id = int(seqnum.get_seq_num())
        self.cfg = UCrmgCfg(self.vmodel_name)

        a_refdir = os.path.join(self.install.A_TEST_REF_DIR, "ucsb")
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))

        cmd = "mkdir -p %s" % (a_indir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_tmpdir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_outdir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_logdir)
        bband_utils.runprog(cmd)

        cmd = "cp %s %s" % (os.path.join(a_refdir, self.r_srcfile), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(a_refdir, self.r_velmodel), a_indir)
        bband_utils.runprog(cmd)

        os.chdir(a_tmpdir)
Пример #12
0
    def setUp(self):
        """
        Copy needed files to run the test
        """
        self.velmodel = "nr02-vs500.fk1d"
        self.srffile = "m5.89-0.20x0.20_s2379646.srf"
        self.stations = "one_stat.txt"
        self.vmodel_name = "LABasin500"
        self.sim_id = int(seqnum.get_seq_num())

        self.install = InstallCfg()

        refdir = os.path.join(self.install.A_TEST_REF_DIR, "gp")
        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir], print_cmd=False)

        cmd = "cp %s %s" % (os.path.join(refdir, self.velmodel), indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(refdir, self.stations), indir)
        bband_utils.runprog(cmd, print_cmd=False)
        cmd = "cp %s %s" % (os.path.join(refdir, self.srffile), indir)
        bband_utils.runprog(cmd, print_cmd=False)
Пример #13
0
    def setUp(self):
        self.install = InstallCfg()
        self.match_cfg = MatchCfg()
        os.chdir(self.install.A_INSTALL_ROOT)
        self.stations = "test_stat.txt"
        self.vmodel_name = "LABasin500"
        self.sim_id = int(seqnum.get_seq_num())
        self.freqs = ['lf', 'hf']

        refdir = os.path.join(self.install.A_TEST_REF_DIR, "gp")
        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir], print_cmd=False)

        # Copy station list
        cmd = "cp %s %s" % (os.path.join(refdir, self.stations), indir)
        bband_utils.runprog(cmd)

        for i in range(1, 6):
            for freq in self.freqs:
                cmd = "cp %s %s" % (os.path.join(
                    refdir, "s%02d-%s-site.bbp" % (i, freq)),
                                    os.path.join(
                                        tmpdir, "%d.s%02d-%s.acc.bbp" %
                                        (self.sim_id, i, freq)))
                bband_utils.runprog(cmd)
Пример #14
0
    def setUp(self):
        """
        Set up unit test
        """
        self.install = InstallCfg()
        self.r_velocity = "labasin.vel"
        self.r_stations = "one_stat.txt"
        self.r_src = "test_wh_ucsb.src"
        self.r_srf = "test_ucsb.srf"
        self.sim_id = int(seqnum.get_seq_num())
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))

        #
        # Make sure output directories exist
        #
        bband_utils.mkdirs([a_indir, a_tmpdir, a_outdir, a_logdir],
                           print_cmd=False)

        # Copy files
        a_refdir = os.path.join(self.install.A_TEST_REF_DIR, "ucsb")

        # Copy seismogram
        shutil.copy2(os.path.join(a_refdir, "s01.3comp"), a_tmpdir)

        # Copy other input files
        shutil.copy2(os.path.join(a_refdir, self.r_stations), a_indir)
        shutil.copy2(os.path.join(a_refdir, self.r_velocity), a_indir)
        shutil.copy2(os.path.join(a_refdir, self.r_src), a_indir)
        shutil.copy2(os.path.join(a_refdir, self.r_srf), a_indir)

        # Change directory to tmpdir
        os.chdir(a_tmpdir)
Пример #15
0
    def setUp(self):
        self.install = InstallCfg()
        self.sim_id = int(seqnum.get_seq_num())
        self.a_outdir = os.path.join(self.install.A_OUT_DATA_DIR,
                                     str(self.sim_id))

        # Create directories
        bband_utils.mkdirs([self.a_outdir])
Пример #16
0
    def setUp(self):
        """
        Set up and stage in input files
        """

        self.install = InstallCfg()
        self.cfg = SDSUMOGofCfg()
        os.chdir(self.install.A_INSTALL_ROOT)
        self.r_velocity = ""
        self.gof_weights = dict()
        #  Weighting on PGA
        self.gof_weights["pga"] = 1.0
        #  Weighting on PGV
        self.gof_weights["pgv"] = 1.0
        #  Weighting on PGD
        self.gof_weights["pgd"] = 1.0
        #  Weighting on PSA
        self.gof_weights["psa"] = 1.0
        #  Weighting on Spectral Fit
        self.gof_weights["spectral_Fit"] = 1.0
        #  Weighting on Cumulative Energy Fit
        self.gof_weights["cumulative_energy_fit"] = 1.0
        #  Weighting on Inelastic/Elastic Fit (16)
        self.gof_weights["inelastic_elastic_fit"] = 1.0
        #  Weighting on Spec Acc (16)
        self.gof_weights["sepctral_acc"] = 1.0
        #  Weighting on Spec Dur (16)
        self.gof_weights["spec_duration"] = 1.0
        #  Weighting on Data Energy Release Duration (5%-75%)
        self.gof_weights["data_energy_release_duration"] = 1.0
        #  Weighting on Cross-Correlation
        self.gof_weights["cross_correlation"] = 1.0
        #  Weighting on Fourier Spectrum
        self.gof_weights["fourier_spectrum"] = 1.0

        self.plot_map = False
        self.r_datadir = os.path.join(self.install.A_TEST_REF_DIR, "sdsu")
        self.r_format = "A"
        self.r_mag = 0.0
        self.r_comparison_label = "Northridge"
        self.sim_id = int(seqnum.get_seq_num())
        self.a_ref_dir = os.path.join(self.install.A_TEST_REF_DIR, "sdsu")
        self.a_res_dir = os.path.join(self.install.A_OUT_DATA_DIR,
                                      str(self.sim_id))
        self.in_data_dir = os.path.join(self.install.A_IN_DATA_DIR,
                                        str(self.sim_id))
        self.tmp_data_dir = os.path.join(self.install.A_TMP_DATA_DIR,
                                         str(self.sim_id))
        self.out_data_dir = os.path.join(self.install.A_OUT_DATA_DIR,
                                         str(self.sim_id))
        self.out_log_dir = os.path.join(self.install.A_OUT_LOG_DIR,
                                        str(self.sim_id))
        os.mkdir(self.in_data_dir)
        os.mkdir(self.tmp_data_dir)
        os.mkdir(self.out_data_dir)
        os.mkdir(self.out_log_dir)

        os.chdir(os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id)))
Пример #17
0
 def test_python_code_tests(self):
     """
     Run Python with -tt flag to detect mix of tabs and spaces in the code
     """
     self.install = InstallCfg()
     cmd = ("python -tt -m compileall -f -q -l %s" %
            (self.install.A_TEST_DIR))
     self.failIf(
         bband_utils.runprog(cmd, False) != 0,
         "Python code in test directory mixes tabs and spaces!")
Пример #18
0
 def test_execute_platform_bbp(self):
     """
     Run Broadband Plotform to make sure we can start it
     """
     self.install = InstallCfg()
     cmd = ("python %s -v >/dev/null" %
            (os.path.join(self.install.A_COMP_DIR, "run_bbp.py")))
     self.failIf(
         bband_utils.runprog(cmd, False) != 0,
         "Cannot start Broadband plotform!")
Пример #19
0
    def setUp(self):
        self.install = InstallCfg()
        self.gp_gof_cfg = GPGofCfg()
        os.chdir(self.install.A_INSTALL_ROOT)
        self.srcfile = "test_wh.src"
        self.stations = "test_stat.txt"
        self.sim_id = int(seqnum.get_seq_num())
        sta_base = os.path.basename(os.path.splitext(self.stations)[0])

        # Set up paths
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir_seis = os.path.join(self.install.A_OUT_DATA_DIR,
                                     str(self.sim_id),
                                     "obs_seis_%s" % (sta_base))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))

        # Create directories
        bband_utils.mkdirs([a_indir, a_tmpdir, a_outdir_seis,
                            a_outdir, a_logdir],
                           print_cmd=False)
        # Copy stations
        cmd = "cp %s/gp/%s %s/." % (self.install.A_TEST_REF_DIR,
                                    self.stations,
                                    a_indir)
        bband_utils.runprog(cmd, print_cmd=False)
        # Copy src file
        cmd = "cp %s/gp/%s %s/." % (self.install.A_TEST_REF_DIR,
                                    self.srcfile,
                                    a_indir)
        bband_utils.runprog(cmd, print_cmd=False)

        for i in range(1, 6):
            # Copy sample calculated seismograms and response files
            cmd = ("cp %s/gp/s%02d.merged.bbp %s/%d/%d.s%02d.vel.bbp" %
                   (self.install.A_TEST_REF_DIR, i,
                    self.install.A_OUT_DATA_DIR, self.sim_id,
                    self.sim_id, i))
            bband_utils.runprog(cmd, print_cmd=False)
            cmd = ("cp %s/gp/s%02d.rd50 %s/%d/%d.s%02d.rd50" %
                   (self.install.A_TEST_REF_DIR, i,
                    self.install.A_OUT_DATA_DIR, self.sim_id,
                    self.sim_id, i))
            bband_utils.runprog(cmd, print_cmd=False)
            # Cope sample observed seismograms and response files
            cmd = ("cp %s/gp/s%02d.merged.bbp %s/s%02d.bbp" %
                   (self.install.A_TEST_REF_DIR, i,
                    a_outdir_seis, i))
            bband_utils.runprog(cmd, print_cmd=False)
            cmd = ("cp %s/gp/s%02d.rd50 %s/s%02d.rd50" %
                   (self.install.A_TEST_REF_DIR, i,
                    a_outdir_seis, i))
            bband_utils.runprog(cmd, print_cmd=False)
Пример #20
0
    def setUp(self):
        self.install = InstallCfg()
        self.stations = "nr_v13_3_1.stl"
        self.eventname = "NR"
        self.sim_id = int(seqnum.get_seq_num())
        sta_base = os.path.basename(os.path.splitext(self.stations)[0])
        sim_id = self.sim_id

        # Set up paths
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(sim_id))
        a_tmpdir_seis = os.path.join(self.install.A_TMP_DATA_DIR,
                                     str(sim_id),
                                     "obs_seis_%s" % (sta_base))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(sim_id))
        a_validation_outdir = os.path.join(a_outdir, "validations",
                                           "rzz2015")

        # Create directories
        bband_utils.mkdirs([a_indir, a_tmpdir, a_tmpdir_seis,
                            a_outdir, a_logdir, a_validation_outdir])

        # Copy station list
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR,
                                         "rzz2015", self.stations),
                            a_indir)
        bband_utils.runprog(cmd)

        # Read station list
        slo = StationList(os.path.join(a_indir, self.stations))
        site_list = slo.getStationList()

        # Loop over stations
        for site in site_list:
            station = site.scode
            src_sims_acc = os.path.join(self.install.A_TEST_REF_DIR,
                                        "rzz2015", "syn_seis",
                                        "%s.acc.bbp" % (station))
            dst_sims_acc = os.path.join(a_outdir, "%d.%s.acc.bbp" %
                                        (sim_id, station))
            src_obs_acc = os.path.join(self.install.A_TEST_REF_DIR,
                                       "rzz2015", "obs_seis",
                                       "%s.bbp" % (station))
            dst_obs_acc = os.path.join(a_tmpdir_seis, "%s.bbp" %
                                       (station))

            cmd = "cp %s %s" % (src_sims_acc, dst_sims_acc)
            bband_utils.runprog(cmd)

            cmd = "cp %s %s" % (src_obs_acc, dst_obs_acc)
            bband_utils.runprog(cmd)
Пример #21
0
    def setUp(self):
        """
        Copy needed files to run the test
        """
        self.install = InstallCfg()
        self.sim_id = int(seqnum.get_seq_num())
        self.a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR,
                                     str(self.sim_id))
        self.a_ucsb_refdir = os.path.join(self.install.A_TEST_REF_DIR, "ucsb")
        self.a_sdsu_refdir = os.path.join(self.install.A_TEST_REF_DIR, "sdsu")
        self.a_gp_refdir = os.path.join(self.install.A_TEST_REF_DIR, "gp")

        #
        # Make sure output directories exist
        #
        bband_utils.mkdirs([self.a_tmpdir])
Пример #22
0
    def setUp(self):
        self.r_velmodel = "labasin.vel"
        self.r_srcfile = "test_wh_ucsb.src"
        self.r_metadata = "metadata.txt"
        self.r_stations = "one_stat.txt"
        self.r_srffile = "FFSP_OUTPUT.001"
        self.vmodel_name = "LABasin"
        self.sim_id = int(seqnum.get_seq_num())

        self.install = InstallCfg()
        self.cfg = Syn1DCfg(self.vmodel_name)

        cmd = "mkdir -p %s/%d" % (self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s/%d" % (self.install.A_TMP_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s/%d" % (self.install.A_OUT_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s/%d" % (self.install.A_OUT_LOG_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "cp %s/ucsb/%s %s/%d/." % (
            self.install.A_TEST_REF_DIR, self.r_srffile,
            self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "cp %s/ucsb/%s %s/%d/." % (
            self.install.A_TEST_REF_DIR, self.r_srcfile,
            self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "cp %s/ucsb/%s %s/%d/." % (
            self.install.A_TEST_REF_DIR, self.r_velmodel,
            self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = "cp %s/ucsb/%s %s/%d/." % (
            self.install.A_TEST_REF_DIR, self.r_stations,
            self.install.A_IN_DATA_DIR, self.sim_id)
        bband_utils.runprog(cmd)
        cmd = ("cp %s/ucsb/faultGlobal.in %s/%d/." %
               (self.install.A_TEST_REF_DIR, self.install.A_TMP_DATA_DIR,
                self.sim_id))
        bband_utils.runprog(cmd)
        cmd = ("cp %s/ucsb/source_model.list %s/%d/." %
               (self.install.A_TEST_REF_DIR, self.install.A_TMP_DATA_DIR,
                self.sim_id))
        bband_utils.runprog(cmd)

        os.chdir(os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id)))
Пример #23
0
    def setUp(self):
        """
        Cope needed files to run the test
        """
        self.vmodel_name = "LABasin"
        self.sim_id = int(seqnum.get_seq_num())
        self.install = InstallCfg()
        self.vmodel_obj = vmodels.get_velocity_model_by_name(self.vmodel_name)

        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir], print_cmd=False)

        # Copy needed files

        # src file
        r_src_file = "nr_v12_11_0_fs.src"
        src_file = os.path.join(self.install.A_TEST_REF_DIR, "uwo", r_src_file)
        self.src_file = os.path.join(indir, r_src_file)
        cmd = "cp %s %s" % (src_file, self.src_file)
        bband_utils.runprog(cmd)

        # exsim param template file
        vmodel_params = self.vmodel_obj.get_codebase_params('exsim')
        self.failIf('GENERIC_PARAM' not in vmodel_params)
        r_param_template = vmodel_params['GENERIC_PARAM']

        self.failIf(r_param_template == "" or r_param_template is None)
        param_template = os.path.join(self.vmodel_obj.base_dir,
                                      r_param_template)
        # r_param_template is relative to the velocity model basedir,
        # get only basename
        r_param_template = os.path.basename(r_param_template)
        self.param_template = os.path.join(indir, r_param_template)
        cmd = "cp %s %s" % (param_template, self.param_template)
        bband_utils.runprog(cmd)

        # station file
        r_stations = "nr_v12_11_2.stl"
        stations = os.path.join(self.install.A_TEST_REF_DIR, "uwo", r_stations)
        self.stations = os.path.join(indir, r_stations)
        cmd = "cp %s %s" % (stations, self.stations)
        bband_utils.runprog(cmd)
Пример #24
0
    def setUp(self):
        self.install = InstallCfg()
        os.chdir(self.install.A_INSTALL_ROOT)
        self.velocity = "nr02-vs500_lf.vel"
        self.srffile = "test_ucsb.srf"
        self.stations = "test_stat.txt"
        self.sim_id = int(seqnum.get_seq_num())
        sta_base = os.path.splitext(self.stations)[0]
        self.a_tmpdir_mod = os.path.join(self.install.A_TMP_DATA_DIR,
                                         str(self.sim_id),
                                         "uc_stitch_%s" % (sta_base))

        # Create directories
        a_refdir = os.path.join(self.install.A_TEST_REF_DIR, "ucsb")
        a_indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        a_tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        a_outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        a_logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        cmd = "mkdir -p %s" % (a_indir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_tmpdir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_outdir)
        bband_utils.runprog(cmd)
        cmd = "mkdir -p %s" % (a_logdir)
        bband_utils.runprog(cmd)

        cmd = "cp %s %s" % (os.path.join(a_refdir, self.velocity), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(a_refdir, self.srffile), a_indir)
        bband_utils.runprog(cmd)
        cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR, "gp",
                                         self.stations), a_indir)
        bband_utils.runprog(cmd)
        for i in range(1, 6):
            cmd = "cp %s %s" % (os.path.join(self.install.A_TEST_REF_DIR, "gp",
                                             "s%02d-lf.bbp" % (i)),
                                os.path.join(
                                    a_tmpdir, "%d.s%02d-lf.bbp" %
                                    (self.sim_id, i)))
            bband_utils.runprog(cmd)
            cmd = "cp %s %s" % (os.path.join(a_refdir, "s%02d.3comp" % (i)),
                                os.path.join(a_tmpdir, "%d.s%02d.bbp" %
                                             (self.sim_id, i)))
            bband_utils.runprog(cmd)
Пример #25
0
def xy2ll(ifile, ofile, mlon, mlat, x_azim):
    """
    invoke Rob's cc program to convert from xy to ,lat/lon
    Input file name will be returned with a changed extension.
    Error returned if file does not end with xy
    """
    install = InstallCfg()
    ll2xy_bin = os.path.join(install.A_GP_BIN_DIR, "ll2xy")
    cmd = ("%s mlon=%f mlat=%f xazim=%f < %s" %
           (ll2xy_bin, mlon, mlat, x_azim, ifile))
    print(cmd)
    oput = os.popen(cmd)

    out_file = open(ofile, "w")
    for line in oput:
        out_file.write(line)
    out_file.close()
    return ofile
Пример #26
0
    def setUp(self):
        self.install = InstallCfg()
        os.chdir(self.install.A_COMP_DIR)
        self.sim_id = int(seqnum.get_seq_num())
        self.srcfile = "test_whittier_song.src"
        self.outsrf = "%d_test_eq.srf" % self.sim_id

        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir], print_cmd=False)

        cmd = "cp %s %s" % (
            os.path.join(self.install.A_TEST_REF_DIR, "song", self.srcfile),
            os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id)))
        bband_utils.runprog(cmd)
Пример #27
0
 def setUp(self):
     self.install = InstallCfg()
     self.r_srcfile = "test_wh_ucsb.src"
     self.r_faultfile = "ffsp.inp"
     self.r_velmodel = "labasin.vel"
     self.vmodel_name = "LABasin"
     self.sim_id = int(seqnum.get_seq_num())
     cmd = "mkdir -p %s/%d" % (self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_TMP_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_LOG_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/ucsb/%s %s/%d/." % (
         self.install.A_TEST_REF_DIR, self.r_srcfile,
         self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
Пример #28
0
 def setUp(self):
     self.install = InstallCfg()
     os.chdir(self.install.A_INSTALL_ROOT)
     self.velocity = "labasin.vel"
     self.srffile = "test_ucsb.srf"
     self.stations = "test_stat.txt"
     self.sim_id = int(seqnum.get_seq_num())
     sta_base = os.path.splitext(self.stations)[0]
     self.a_tmpdir_mod = os.path.join(self.install.A_TMP_DATA_DIR,
                                      str(self.sim_id),
                                      "uc_stitch_%s" % (sta_base))
     cmd = "mkdir -p %s/%d" % (self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_TMP_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "mkdir -p %s/%d" % (self.install.A_OUT_LOG_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/ucsb/%s %s/%d/." % (
         self.install.A_TEST_REF_DIR, self.velocity,
         self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/ucsb/%s %s/%d/." % (
         self.install.A_TEST_REF_DIR, self.srffile,
         self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     cmd = "cp %s/gp/%s %s/%d/." % (self.install.A_TEST_REF_DIR,
                                    self.stations,
                                    self.install.A_IN_DATA_DIR, self.sim_id)
     bband_utils.runprog(cmd)
     for i in range(1, 6):
         cmd = ("cp %s/gp/s%02d-lf.bbp %s/%d/%d.s%02d-lf.bbp" %
                (self.install.A_TEST_REF_DIR, i,
                 self.install.A_TMP_DATA_DIR, self.sim_id, self.sim_id, i))
         bband_utils.runprog(cmd)
         cmd = ("cp %s/ucsb/s%02d.3comp %s/%d/%d.s%02d.bbp" %
                (self.install.A_TEST_REF_DIR, i,
                 self.install.A_TMP_DATA_DIR, self.sim_id, self.sim_id, i))
         bband_utils.runprog(cmd)
Пример #29
0
    def setUp(self):
        self.install = InstallCfg()
        accept_test_inputs = "accept_inputs"
        src_path = ""
        self.resume = True
        run_dir = self.install.A_USER_DATA_DIR

        # Create run directory, in case it doesn't exist
        bband_utils.mkdirs([run_dir], print_cmd=False)

        if not os.path.exists(os.path.join(run_dir, "northridge_3_sta.stl")):
            src_path = os.path.join(self.install.A_TEST_REF_DIR,
                                    accept_test_inputs, "northridge_3_sta.stl")
            shutil.copy2(src_path, run_dir)

        if not os.path.exists(os.path.join(run_dir, "northridge_eq_gp.src")):
            src_path = os.path.join(self.install.A_TEST_REF_DIR,
                                    accept_test_inputs, "northridge_eq_gp.src")
            shutil.copy2(src_path, run_dir)

        if not os.path.exists(os.path.join(run_dir, "northridge_eq_ucsb.src")):
            src_path = os.path.join(self.install.A_TEST_REF_DIR,
                                    accept_test_inputs,
                                    "northridge_eq_ucsb.src")
            shutil.copy2(src_path, run_dir)

        if not os.path.exists(os.path.join(run_dir, "northridge_eq_song.src")):
            src_path = os.path.join(self.install.A_TEST_REF_DIR,
                                    accept_test_inputs,
                                    "northridge_eq_song.src")
            shutil.copy2(src_path, run_dir)

        if not os.path.exists(
                os.path.join(self.install.A_OUT_LOG_DIR,
                             "acceptance_test_logs")):
            bband_utils.mkdirs([
                os.path.join(self.install.A_OUT_LOG_DIR,
                             "acceptance_test_logs")
            ])
Пример #30
0
    def setUp(self):
        self.install = InstallCfg()
        self.srcfile = "whittier_v12_11_0_fs.src"
        self.outsrf = "whittier_v12_11_0_fs.srf"
        self.velmodel = "nr02-vs500.fk1d"
        self.sim_id = int(seqnum.get_seq_num())

        indir = os.path.join(self.install.A_IN_DATA_DIR, str(self.sim_id))
        tmpdir = os.path.join(self.install.A_TMP_DATA_DIR, str(self.sim_id))
        outdir = os.path.join(self.install.A_OUT_DATA_DIR, str(self.sim_id))
        logdir = os.path.join(self.install.A_OUT_LOG_DIR, str(self.sim_id))
        refdir = os.path.join(self.install.A_TEST_REF_DIR, "irikura")

        # Create all directories
        bband_utils.mkdirs([indir, tmpdir, outdir, logdir], print_cmd=False)

        # Copy input files
        cmd = "cp %s %s" % (os.path.join(refdir, self.velmodel), indir)
        bband_utils.runprog(cmd, print_cmd=False)

        cmd = "cp %s %s" % (os.path.join(refdir, self.srcfile), indir)
        bband_utils.runprog(cmd, print_cmd=False)

        os.chdir(tmpdir)