该函数的目的是为了在Gempy中设置Theano共享磁化。
magnetics
: numpy数组,包含网格上每个单元格的磁化向量的值。数组的形状为(n, 3)
,其中n是单元格的数量。geo_model
: Gempy的GeoModel
对象。无返回值。
Theano是一个数学表达式编译器,它被广泛用于深度学习。在GemPy中,Theano用于快速计算网格上的磁场值。该函数的目的是创建一个共享变量,使得在Theano中的计算可以直接使用磁化值。共享变量是一种特殊的Theano变量,其值可以在多个函数中共享。
import gempy as gp
import numpy as np
# 定义网格信息
extent = [0, 1000, 0, 1000, 0, 1000]
resolution = [50, 50, 50]
# 定义GeoModel对象
geo_model = gp.create_model("Test")
gp.init_data(
geo_model,
extent=[0, 1000, 0, 1000, 0, 1000],
resolution=[50, 50, 50])
geo_model.surfaces.colors.change_colors(
{"basement": "red", "layer1": "yellow", "layer2": "green", "layer3": "blue"})
# 定义磁化向量
magnetics = np.random.rand(geo_model._grid.regular_grid.cell_count()[0], 3)
# 设置Theano共享变量
gp.InterpolatorModel.set_theano_shared_magnetics(magnetics, geo_model)
TypeError
: 当输入参数的类型不正确时抛出。