Beispiel #1
0
def plot_z_slice(data,
                 qx=None,
                 qy=None,
                 qz=None,
                 iz=0,
                 fignum=None,
                 if_faults=False,
                 cscale=None):
    #Plot a map-view slice through the 3D matrix data at index iz
    # qx,qy,qz are the coordinates along the dimensions of the matrix data
    if qx is None:
        qx = arange(0, data.shape[1])
    if qy is None:
        qy = arange(0, data.shape[0])
    if qz is None:
        qz = arange(0, data.shape[2])
    figid = plt.figure(fignum)
    figid.clf()
    if if_faults:
        from misc_tools import load_faults
        faultlon, faultlat = load_faults()
        plt.plot(faultlon, faultlat, 'k')
    plt.axis([min(qx), max(qx), min(qy), max(qy)])
    pc_id = plt.pcolor(qx, qy, data[:, :, iz])
    if cscale is not None:
        plt.clim(cscale)
    figid.colorbar(pc_id)
    figid.show()
Beispiel #2
0
def plot_z_slice(data,qx=None,qy=None,qz=None,iz=0,fignum=None,if_faults=False,cscale=None):
    #Plot a map-view slice through the 3D matrix data at index iz
    # qx,qy,qz are the coordinates along the dimensions of the matrix data
    if qx is None:
        qx=arange(0,data.shape[1])
    if qy is None:
        qy=arange(0,data.shape[0])
    if qz is None:
        qz=arange(0,data.shape[2])
    figid=plt.figure(fignum)
    figid.clf();
    if if_faults:
        from misc_tools import load_faults
        faultlon,faultlat=load_faults()
        plt.plot(faultlon,faultlat,'k')
    plt.axis([min(qx),max(qx),min(qy),max(qy)])
    pc_id=plt.pcolor(qx,qy,data[:,:,iz] )
    if cscale is not None:
        plt.clim(cscale)
    figid.colorbar(pc_id)
    figid.show()
Beispiel #3
0
arrsta = []  #a list of station names
for arrival in ev.arrivals:
    if arrival.phase is 'P':
        arrvec.append(arrival.ttime)
        absvec.append(arrival.epoch)
        arrsta.append(arrival.staname)
    if not os.path.isfile(arrival.staname + 'traveltime'):
        continue
absvec = asarray(absvec)
arrvec = asarray(arrvec)

#Return the entire misfit matrix
dstep = int(loc_params['dstep2'])
dx, dy, dz = nlon / dstep, nlat / dstep, nz / dstep
dx, dy, dz = 1, 1, 1
qx, qy, qz = range(0, nlon, dx), range(0, nlat, dy), range(0, nz, dz)
#minx, miny, minz, orgmin ,orimean,oristd= misc_tools.exp_grid_search(arrsta, qx, qy,qz, absvec, li,ev.epoch)
#orimean,oristd= misc_tools._grid_search_traveltimes_origin(arrsta, qx, qy,qz, absvec, li)
minx, miny, minz, orimean, oristd = misc_tools.exp_grid_search(
    arrsta, qx, qy, qz, absvec, li)
#Plot
idepth = misc_tools.find_nearest_index(earth_rad - qdep, ev.depth)
faultlon, faultlat = misc_tools.load_faults()
figid = plt.figure(1)
figid.clf()
plt.plot(faultlon, faultlat, 'k')
plt.axis([min(qlon), max(qlon), min(qlat), max(qlat)])
pc_id = plt.pcolor(qlon, qlat, oristd[:, :, idepth])
figid.colorbar(pc_id)
figid.show()
Beispiel #4
0
arrvec=[]
arrsta=[]        #a list of station names
for arrival in ev.arrivals:
    if arrival.phase is 'P':
        arrvec.append(arrival.ttime)
        absvec.append(arrival.epoch)
        arrsta.append(arrival.staname)
    if not os.path.isfile(arrival.staname+'traveltime'):
        continue
absvec=asarray(absvec)
arrvec=asarray(arrvec)

#Return the entire misfit matrix
dstep = int(loc_params['dstep2'])
dx, dy, dz = nlon / dstep, nlat / dstep, nz / dstep
dx,dy,dz=1,1,1
qx, qy, qz = range(0, nlon, dx), range(0, nlat, dy), range(0, nz, dz);
#minx, miny, minz, orgmin ,orimean,oristd= misc_tools.exp_grid_search(arrsta, qx, qy,qz, absvec, li,ev.epoch)
#orimean,oristd= misc_tools._grid_search_traveltimes_origin(arrsta, qx, qy,qz, absvec, li)
minx,miny,minz,orimean,oristd=misc_tools.exp_grid_search(arrsta,qx,qy,qz,absvec,li)
#Plot
idepth=misc_tools.find_nearest_index(earth_rad-qdep,ev.depth)
faultlon,faultlat=misc_tools.load_faults()
figid=plt.figure(1)
figid.clf();
plt.plot(faultlon,faultlat,'k')
plt.axis([min(qlon),max(qlon),min(qlat),max(qlat)])
pc_id=plt.pcolor(qlon,qlat,oristd[:,:,idepth] )
figid.colorbar(pc_id)
figid.show()