set_theano_shared_loop
是Gempy库中gempy.core.interpolator.InterpolatorModel
类的一个方法。该方法主要用于设置theano
共享函数,以便更快地计算空间插值值。
set_theano_shared_loop(self)
该方法没有参数。
该方法没有返回值。
set_theano_shared_loop
方法用于设置theano
共享函数,以便使用GPU或其他并行计算设备加速空间插值计算。该方法对于大型计算非常有用,可以将计算时间显著缩短。
import gempy as gp
geo_model = gp.create_model('simple')
gp.init_data(geo_model, [0,1,0,1,0,1], [2,2,2],
path_i='data/input_data/simple_fault_model_orientations.csv',
path_o='data/input_data/simple_fault_model_surface_points.csv')
gp.map_stack_to_surfaces(geo_model, {'Fault_Series': 'Fault',
'Strat_Series': ('rock2', 'rock1')})
interp_data = gp.utils.data_interpolator(geo_model, output=['geology'], compile_theano=True)
interp_data.set_theano_shared_loop()
result = interp_data.compute_model(values=model.values)
上面的示例中,我们首先创建了一个geo_model
,初始化了数据,并使用map_stack_to_surfaces
方法将数据映射到相应的表面上。接下来,我们使用data_interpolator
方法计算模型,并将compile_theano
参数设置为True
以编译theano
函数。最后,我们使用set_theano_shared_loop
方法设置共享函数,并使用compute_model
方法计算空间插值值。