segyfactory.py 文件源码

python
阅读 34 收藏 0 点赞 0 评论 0

项目:PH5 作者: PIC-IRIS 项目源码 文件源码
def set_ext_header_pas (self) :
        ext = {}
        self.extended_header = segy_h.Passcal ()

        cor_low, cor_high, sort_start_time = self._cor ()
        if cor_high < -MAX_16 or cor_high > MAX_16 :
            #print cor_high
            cor_high = int (MAX_16)

        ext['totalStaticHi'] = cor_high
        ext['num_samps'] = int (self.length_points)
        ext['max'] = numpy.max (self.data)
        ext['min'] = numpy.min (self.data)
        ext['samp_rate'] = int ((1.0 / self.sample_rate) * 1000000.0)
        ext['data_form'] = 1   #   32 bit
        #   *XXX*  Is this also set where the trace is written?
        ext['scale_fac'] = float (self.response_t['bit_weight/value_d'])
        #ext['scale_fac'] = 1. / 184128195.173

        corrected_start_time = self.cut_start_epoch + (cor_low / 1000.0)
        m_secs = int (math.modf (corrected_start_time)[0] * 1000.0)
        ext['m_secs'] = m_secs

        try :
            ttuple = time.gmtime ([self.event_t['time/epoch_l']])
            ext['trigyear'] = ttuple[0]
            ext['trigday'] = ttuple[7]
            ext['trighour'] = ttuple[3]
            ext['trigminute'] = ttuple[4]
            ext['trigsecond'] = ttuple[5]
            ext['trigmills'] = int (self.event_t['time/micro_seconds_i'] / 1000.0)
        except :
            pass

        try :
            try :
                ext['inst_no'] = int (self.array_t['das/serial_number_s']) & 0xFFFF
            except ValueError :
                ext['inst_no'] = int (self.array_t['das/serial_number_s'], 16)
        except :
            ext['inst_no'] = 0

        try :
            ext['station_name'] = string.ljust (string.strip (self.array_t['id_s']), 6)
        except :
            ext['station_name'] = string.ljust (string.strip (self.array_t['das/serial_number_s']), 6)

        return ext
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号