get_active_grids
是Gempy核心模块gempy.core.model.Project
的一个方法,用于获取当前激活的网格(grid)。
get_active_grids(self, ordered=False):
self
:表示当前Project
对象。ordered
:(可选参数)是否返回有序的网格。默认为False
,即不排序。根据ordered
参数的不同结果返回不同的值:
ordered=False
:返回一个字典,其中包含所有激活的网格。字典的键表示网格的名称,值表示Grid
对象。ordered=True
:返回一个列表,包含所有激活的网格。列表中的每个元素都是Grid
对象。以下代码段演示了如何使用get_active_grids
方法:
>>> import gempy as gp
>>> geo_model = gp.create_model('my_model')
>>> geo_model.add_surface_points(x=[0,1,1,0], y=[0,0,1,1], z=[0,0,0,0], surface='surface1')
>>> gp.init_data(geo_model, [0,2,0,2,0,2], [50,50,50], [0,0,0])
Active grids: ['regular_1']
<gempy.core.grid_modules.grid_types.RegularGrid at 0x7fde9807feb0>
>>> geo_model.add_additional_feature('fault', [1, 1.5])
Active grids: ['regular_1', 'sections']
<gempy.core.grid_modules.grid_types.RegularGrid at 0x7fde9807feb0>
>>> geo_model.get_active_grids()
{'regular_1': <gempy.core.grid_modules.grid_types.RegularGrid at 0x7fde9807feb0>,
'sections': <gempy.core.grid_modules.grid_types.SectionGrid at 0x7fde9ac6cdc0>}
>>> geo_model.get_active_grids(ordered=True)
[<gempy.core.grid_modules.grid_types.RegularGrid at 0x7fde9807feb0>,
<gempy.core.grid_modules.grid_types.SectionGrid at 0x7fde9ac6cdc0>]
在上面的示例中,首先创建了一个名为my_model
的模型对象。然后,在该模型对象中添加了一组表面点,并初始化正则网格。此时,get_active_grids
方法返回一个字典,其中包含一个键值对。随后,添加了一个“断层”特征,并重新运行该方法。此时,除了正则网格之外,还出现了一个名为“sections”的网格。最后,在不同参数(有序或无序)下重新运行get_active_grids
方法,结果也不同。