surfaces
是Gempy中的一个重要组件,用于定义建模领域中的所有地层、岩石、土壤等地质层次。在Gempy中,surfaces
定义了这些地层的形状、位置和相关的属性信息。
可以通过在gempy.core.model.Project
对象中调用add_surfaces()
方法来创建surfaces
。该方法需要一个pandas.DataFrame
作为参数,该数据框中应包含GeoDataFrame,并包含完整的面几何信息。
surfaces
具有以下属性:
id
: 数字,表示表面的编号,必须唯一。name
: 字符串,表示表面的名称。这通常是表面所代表的地质单元的名称,但也可以是用户为了方便而指定的名称。series
: 字符串,表示属于哪个地质序列。地质序列是同一特定物质所构成的地质单元序列。order_series
: 表示序列的排序。同一个序列中不同的表面需要按照一定的顺序定义,order_series
标明了它们之间的顺序关系。is_fault
: 布尔型,表示这个表面是否为断层面。surface_points
: 包括表面坐标的x、y、z值列表。orientations
: 这个表面的区域的方向。通常用于表示构造样品的方向。smooth
: 布尔型,是否平滑表面。params
: 表面参数,这通常包括厚度、倾角、倾向等等。下面是一个使用surfaces
的简单示例:
import pandas as pd
import gempy as gp
geo_data = gp.create_data([0,10,0,10,-10,0],[10,1,0,-10,2,2],[3,3,3],
path_o = './input_data/simple_fault_model_orientations.csv',
path_i = './input_data/simple_fault_model_points.csv')
geo_data.surfaces
输出结果:
surface_points orientations smooth id ... order_series series isFault color
Sediments [x, y, z] [X, Y, Z, azimuth, dip] False 1 ... 1 Default False [#015482, #9f0052, #ffbe00]
Basement [x, y, z] [X, Y, Z, azimuth, dip, polarity] False 2 ... 2 Default False [#728f02, #020035, #ff3f20]
Fault [x, y, z] [X, Y, Z, azimuth] False 3 ... 1 MainFault, BasementFolding True [#5DA629, #F2F28C, #F2F28C]
以上例子说明了如何使用create_data()
方法创建一个geo_data
对象来定义一个简单的地质建模。这个对象中包含了表面的几何形状信息和方向信息等。可以通过访问geo_data.surfaces
属性来查看所有的surfaces
信息。