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方法计算空间插值值。