Beispiel #1
0
def mb_ms_from_magnitude_string(mag_string):

    mag_string = mag_string.strip()

    mb = lev(mag_string.split()[0])
    Ms = lev(mag_string.split()[1])

    return {'mb': mb, 'Ms': Ms}
Beispiel #2
0
def mb_ms_from_magnitude_string(mag_string):

    mag_string = mag_string.strip()

    mb = lev(mag_string.split()[0])
    Ms = lev(mag_string.split()[1])

    return {'mb' : mb, 'Ms' : Ms}
Beispiel #3
0
    def from_xml(elem):
        """
        Creates a new note from a corresponding
        xml element.

        :param elem: xml element discribing the note.
        :type elem: xml.etree.ElementTree.Element
        """
        from ast import literal_eval as lev
        x = lev(elem.attrib['x'])
        y = lev(elem.attrib['y'])
        length = lev(elem.attrib['length'])
        type = elem.attrib['type']
        return Note(x, y, length, type)
Beispiel #4
0
def get_time_from_ref_time(eq_dict):
    ref_time = dt.time(0)

    try:
        ref_time_string = eq_dict['reference_time']
    except (KeyError, AttributeError):
        return ref_time

    ref_time_list = ref_time_string.replace('.', ':').split(':')

    try:
        for i in (0, 1, 2):
            ref_time_list[i] = int(ref_time_list[i])

        ref_time_list[3] = int(lev('0.' + ref_time_list[3]) * 1e6)

        if ref_time_list[2] == 60:
            ref_time_list[1] += 1
            ref_time_list[2] = 0

        ref_time = dt.time(*ref_time_list)

    except:
        return ref_time

    return ref_time
Beispiel #5
0
def get_time_from_ref_time(eq_dict):
    ref_time = dt.time(0)

    try:
        ref_time_string = eq_dict['reference_time']
    except (KeyError, AttributeError):
        return ref_time

    ref_time_list = ref_time_string.replace('.',':').split(':')
    
    try:
        for i in (0,1,2):
            ref_time_list[i] = int(ref_time_list[i])
        
        ref_time_list[3] = int( lev('0.'+ref_time_list[3]) * 1e6)

        if ref_time_list[2] == 60:
            ref_time_list[1] += 1
            ref_time_list[2] = 0

        ref_time = dt.time(*ref_time_list)

    except:
        return ref_time
    
    return ref_time
Beispiel #6
0
    def load(self, fname):
        """
        Reads formatted txt file with the values of the parameters and allocates to object

        :param fname: string with path to parameter file
        """

        i = 0
        data = []
        with open(os.path.expanduser(fname), 'r') as csvfile:
            spamreader = csv.reader(csvfile, delimiter='=')

            for row in spamreader:
                if len(row) > 0:
                    if row[0][0] != '#':
                        # remove inline comment and trim
                        if row[1].find('#') > 0:
                            row[1] = (row[1][0:(row[1].find('#'))]).strip()
                        else:
                            row[1] = row[1].strip()
                        data.append(row)
                        #print('{0:3d} : {1}'.format(i, row))
                        i = i + 1

        # Env regulations parameters: dict of state : max water T (deg C)
        self.envRegMaxT = self.string2dict(data[0][1])  # dict
        self.maxFracFlow = self.string2dict(data[1][1])  # dict

        # RBM processing parameters
        self.outputHeaders = list(map(str.strip,
                                      data[2][1].split(',')))  # list
        self.locPrecision = lev(data[3][1])
        self.numCellsToProcess = lev(data[4][1])
        self.tempAndSpatFilename = data[5][1]
        self.nsegFilename = data[6][1]
        # Water T directories
        self.rbmRootDir = data[7][1]
        self.rbmDataDir = data[8][1]
        self.rbmDataDir = os.path.join(self.rbmRootDir, self.rbmDataDir)
        self.rbmOutputDir = data[9][1]
        self.rbmOutputDir = os.path.join(self.rbmRootDir, self.rbmOutputDir,
                                         self.tempAndSpatFilename)
        # ----- GCMs ---------
        self.listgcms = list(map(str.strip, data[10][1].split(',')))  # list
        self.basenamemeteo = data[11][1]
        self.basenamestreamT = data[12][1]
        self.basenameflow = data[13][1]
Beispiel #7
0
def parse_reference_locations_strings(eq_dict):

    params = ['reference_depth', 'reference_latitude', 'reference_longitude']

    for param in params:
        try:
            _par = eq_dict[param].strip()
        except KeyError:
            print('EQ {} has no {}'.format(eq_dict['cmt_event_name'], param))
        except AttributeError:
            pass
        try:
            par = lev(_par)
            eq_dict[param] = par
        except ValueError:
            eq_dict[param] = _par

    return
Beispiel #8
0
def parse_reference_locations_strings(eq_dict):
    
    params = ['reference_depth', 'reference_latitude', 'reference_longitude']

    for param in params:
        try:
            _par = eq_dict[param].strip()
        except KeyError:
            #logging.warning('EQ {} has no {}'.format(eq_dict['cmt_event_name'], param))
            logging.warning('EQ {} has no {}'.format(eq_dict['cmt_event_name'],
                                                     param))
        except AttributeError:
            pass
        try:
            par = lev(_par)
            eq_dict[param] = par
        except ValueError:
            eq_dict[param] = _par

    return
Beispiel #9
0
def moment_tensor_params_from_string(mt_string, mt_exp):
    mt_exp = str(mt_exp) # in case it's been made an int
    mt_list = mt_string.strip().split()

    mt_list = [lev(mt + 'e' + mt_exp) for mt in mt_list]

    d = {'mrr'     : mt_list[0],
         'mrr_err' : mt_list[1],
         'mtt'     : mt_list[2],
         'mtt_err' : mt_list[3],
         'mpp'     : mt_list[4],
         'mpp_err' : mt_list[5],
         'mrt'     : mt_list[6],
         'mrt_err' : mt_list[7],
         'mrp'     : mt_list[8],
         'mrp_err' : mt_list[9],
         'mtp'     : mt_list[10],
         'mtp_err' : mt_list[11]}

    return d
Beispiel #10
0
def moment_tensor_params_from_string(mt_string, mt_exp):
    mt_exp = str(mt_exp)  # in case it's been made an int
    mt_list = mt_string.strip().split()

    mt_list = [lev(mt + 'e' + mt_exp) for mt in mt_list]

    d = {
        'mrr': mt_list[0],
        'mrr_err': mt_list[1],
        'mtt': mt_list[2],
        'mtt_err': mt_list[3],
        'mpp': mt_list[4],
        'mpp_err': mt_list[5],
        'mrt': mt_list[6],
        'mrt_err': mt_list[7],
        'mrp': mt_list[8],
        'mrp_err': mt_list[9],
        'mtp': mt_list[10],
        'mtp_err': mt_list[11]
    }

    return d
Beispiel #11
0
def calc_scalar_moment(sm_string, mt_exp):
    mt_exp = str(mt_exp)  # in case it's been made an int

    return lev(sm_string + 'e' + mt_exp)
Beispiel #12
0
 def price(self, time = 24):
     return int(lev(self.base_price)) + int(lev(self.monthly_bill)) * time
Beispiel #13
0
 def price(self, time=24):
     return int(lev(self.base_price)) + int(lev(self.monthly_bill)) * time
Beispiel #14
0
def calc_scalar_moment(sm_string, mt_exp):
    mt_exp = str(mt_exp) # in case it's been made an int

    return lev(sm_string + 'e' + mt_exp)