def read_interfaces(infile):
infile = open(infile)
ninter = int(infile.readline().split()[0])
nlambda, nphi = [int(v) for v in infile.readline().split()[:2]]
dlambda, dphi = [np.float64(v) for v in infile.readline().split()[:2]]
lambda0, phi0 = [np.float64(v) for v in infile.readline().split()[:2]]
grid = seispy.geogrid.GeoGrid2D(np.degrees(lambda0), np.degrees(phi0),
nlambda, nphi,
np.degrees(dlambda), np.degrees(dphi))
interfaces = []
for iinter in range(ninter):
surf = seispy.surface.GeoSurface()
surf.grid = grid
coordinates = seispy.coords.as_left_spherical([[[np.float64(infile.readline().split()[0]),
lambda0 + ilambda*dlambda,
phi0 + iphi*dphi]
for iphi in range(nphi)]
for ilambda in range(nlambda)])
coordinates = np.flip(coordinates.to_spherical(), axis=0)
surf.coordinates = coordinates
interfaces.append(surf)
return(interfaces)
评论列表
文章目录