gempy
gempy.core.model.Project
gempy.core.model.Project.add_featuresgempy.core.model.Project.add_orientationsgempy.core.model.Project.add_seriesgempy.core.model.Project.add_surface_pointsgempy.core.model.Project.add_surface_valuesgempy.core.model.Project.add_surfacesgempy.core.model.Project.delete_featuresgempy.core.model.Project.delete_orientationsgempy.core.model.Project.delete_seriesgempy.core.model.Project.delete_surface_pointsgempy.core.model.Project.delete_surface_points_basementgempy.core.model.Project.delete_surface_valuesgempy.core.model.Project.delete_surfacesgempy.core.model.Project.get_active_gridsgempy.core.model.Project.get_additional_datagempy.core.model.Project.get_datagempy.core.model.Project.load_model_picklegempy.core.model.Project.map_geometric_data_dfgempy.core.model.Project.map_series_to_surfacesgempy.core.model.Project.map_stack_to_surfacesgempy.core.model.Project.modify_kriging_parametersgempy.core.model.Project.modify_optionsgempy.core.model.Project.modify_order_featuresgempy.core.model.Project.modify_order_seriesgempy.core.model.Project.modify_order_surfacesgempy.core.model.Project.modify_orientationsgempy.core.model.Project.modify_rescaling_parametersgempy.core.model.Project.modify_surface_pointsgempy.core.model.Project.modify_surface_valuesgempy.core.model.Project.new_modelgempy.core.model.Project.read_datagempy.core.model.Project.rename_featuresgempy.core.model.Project.rename_seriesgempy.core.model.Project.rename_surfacesgempy.core.model.Project.rename_featuresgempy.core.model.Project.reorder_seriesgempy.core.model.Project.save_modelgempy.core.model.Project.savel_model_picklegempy.core.model.Project.save_solutiongempy.core.model.Project.set_active_gridgempy.core.model.Project.set_bottom_relationgempy.core.model.Project.set_centered_gridgempy.core.model.Project.set_custom_gridgempy.core.model.Project.set_default_orientationgempy.core.model.Project.set_default_surface_pointgempy.core.model.Project.set_default_surfacesgempy.core.model.Project.set_extentgempy.core.model.Project.set_fault_objectgempy.core.model.Project.set_fault_relationgempy.core.model.Project.set_grid_objectgempy.core.model.Project.set_is_faultgempy.core.model.Project.set_is_finite_faultgempy.core.model.Project.set_orientationsgempy.core.model.Project.set_orientations_objectgempy.core.model.Project.set_regular_gridgempy.core.model.Project.set_section_gridgempy.core.model.Project.set_series_objectgempy.core.model.Project.set_surface_order_from_solutiongempy.core.model.Project.set_surface_pointsgempy.core.model.Project.set_surface_points_objectgempy.core.model.Project.set_surface_valuesgempy.core.model.Project.set_surfaces_objectgempy.core.model.Project.set_theano_functiongempy.core.model.Project.set_theano_graphgempy.core.model.Project.set_topographygempy.core.model.Project.update_additional_datagempy.core.model.Project.update_from_gridgempy.core.model.Project.update_from_seriesgempy.core.model.Project.update_from_surfacesgempy.core.model.Project.update_structuregempy.core.model.Project.update_to_interpolatorgempy.core.model.Project.additional_datagempy.core.model.Project.faultsgempy.core.model.Project.gridgempy.core.model.Project.interpolatorgempy.core.model.Project.orientationsgempy.core.model.Project.rescalinggempy.core.model.Project.seriesgempy.core.model.Project.stackgempy.core.model.Project.surface_pointsgempy.core.model.Project.surfaces
gempy.core.model.ImplicitCoKriging
gempy.core.model.ImplicitCoKriging.add_featuresgempy.core.model.ImplicitCoKriging.add_orientationsgempy.core.model.ImplicitCoKriging.add_seriesgempy.core.model.ImplicitCoKriging.add_surface_pointsgempy.core.model.ImplicitCoKriging.add_surface_valuesgempy.core.model.ImplicitCoKriging.add_surfacesgempy.core.model.ImplicitCoKriging.delete_featuresgempy.core.model.ImplicitCoKriging.delete_orientationsgempy.core.model.ImplicitCoKriging.delete_seriesgempy.core.model.ImplicitCoKriging.delete_surface_pointsgempy.core.model.ImplicitCoKriging.delete_surface_points_basementgempy.core.model.ImplicitCoKriging.delete_surface_valuesgempy.core.model.ImplicitCoKriging.delete_surfacesgempy.core.model.ImplicitCoKriging.get_active_gridsgempy.core.model.ImplicitCoKriging.map_geometric_data_dfgempy.core.model.ImplicitCoKriging.map_series_to_surfacesgempy.core.model.ImplicitCoKriging.map_stack_to_surfacesgempy.core.model.ImplicitCoKriging.modify_kriging_parametersgempy.core.model.ImplicitCoKriging.modify_optionsgempy.core.model.ImplicitCoKriging.modify_order_featuresgempy.core.model.ImplicitCoKriging.modify_order_seriesgempy.core.model.ImplicitCoKriging.modify_order_surfacesgempy.core.model.ImplicitCoKriging.modify_orientationsgempy.core.model.ImplicitCoKriging.modify_rescaling_parametersgempy.core.model.ImplicitCoKriging.modify_surface_pointsgempy.core.model.ImplicitCoKriging.modify_surface_valuesgempy.core.model.ImplicitCoKriging.rename_featuresgempy.core.model.ImplicitCoKriging.rename_seriesgempy.core.model.ImplicitCoKriging.rename_surfacesgempy.core.model.ImplicitCoKriging.reorder_featuresgempy.core.model.ImplicitCoKriging.reorder_seriesgempy.core.model.ImplicitCoKriging.set_active_gridgempy.core.model.ImplicitCoKriging.set_bottom_relationgempy.core.model.ImplicitCoKriging.set_centered_gridgempy.core.model.ImplicitCoKriging.set_custom_gridgempy.core.model.ImplicitCoKriging.set_default_orientationgempy.core.model.ImplicitCoKriging.set_default_surface_pointgempy.core.model.ImplicitCoKriging.set_default_surfacesgempy.core.model.ImplicitCoKriging.set_extentgempy.core.model.ImplicitCoKriging.set_fault_objectgempy.core.model.ImplicitCoKriging.set_fault_relationgempy.core.model.ImplicitCoKriging.set_grid_objectgempy.core.model.ImplicitCoKriging.set_is_faultgempy.core.model.ImplicitCoKriging.set_is_finite_faultgempy.core.model.ImplicitCoKriging.set_orientationsgempy.core.model.ImplicitCoKriging.set_orientations_objectgempy.core.model.ImplicitCoKriging.set_regular_gridgempy.core.model.ImplicitCoKriging.set_section_gridgempy.core.model.ImplicitCoKriging.set_series_objectgempy.core.model.ImplicitCoKriging.set_surface_order_from_solutiongempy.core.model.ImplicitCoKriging.set_surface_pointsgempy.core.model.ImplicitCoKriging.set_surface_points_objectgempy.core.model.ImplicitCoKriging.set_surface_valuesgempy.core.model.ImplicitCoKriging.set_surfaces_objectgempy.core.model.ImplicitCoKriging.set_theano_functiongempy.core.model.ImplicitCoKriging.set_theano_graphgempy.core.model.ImplicitCoKriging.set_topographygempy.core.model.ImplicitCoKriging.update_additional_datagempy.core.model.ImplicitCoKriging.update_from_gridgempy.core.model.ImplicitCoKriging.update_from_seriesgempy.core.model.ImplicitCoKriging.update_from_surfacesgempy.core.model.ImplicitCoKriging.update_structuregempy.core.model.ImplicitCoKriging.update_to_interpolatorgempy.core.model.ImplicitCoKriging.additional_datagempy.core.model.ImplicitCoKriging.faultsgempy.core.model.ImplicitCoKriging.gridgempy.core.model.ImplicitCoKriging.interpolatorgempy.core.model.ImplicitCoKriging.orientationsgempy.core.model.ImplicitCoKriging.rescalinggempy.core.model.ImplicitCoKriging.seriesgempy.core.model.ImplicitCoKriging.stackgempy.core.model.ImplicitCoKriging.surface_pointsgempy.core.model.ImplicitCoKriging.surfaces
gempy.core.data_modules.stack.Stack
gempy.core.data_modules.stack.Series
gempy.core.data_modules.stack.Faults
gempy.core.data.Surfaces
gempy.core.data.Structure
gempy.core.data.KrigingParameters
gempy.core.data.Options
gempy.core.data.AdditionalData
gempy.core.data.Grid
gempy.core.grid_modules.grid_types.RegularGrid
gempy.core.grid_modules.grid_types.CustomGrid
gempy.core.grid_modules.topography.Topography
gempy.core.grid_modules.grid_types.Sections
gempy.core.grid_modules.grid_types.CenteredGrid
gempy.core.data_modules.geometric_data.SurfacePoints
gempy.core.data_modules.geometric_data.Orientations
gempy.core.interpolator.InterpolatorModel
gempy.core.interpolator.InterpolatorModel.calculate_Vgempy.core.interpolator.InterpolatorModel.calculate_tzgempy.core.interpolator.InterpolatorModel.compile_th_fn_geogempy.core.interpolator.InterpolatorModel.crate_theano_graphgempy.core.interpolator.InterpolatorModel.get_python_input_blockgempy.core.interpolator.InterpolatorModel.modify_results_matrices_progempy.core.interpolator.InterpolatorModel.modify_results_weightsgempy.core.interpolator.InterpolatorModel.print_theano_sharedgempy.core.interpolator.InterpolatorModel.remove_series_without_datagempy.core.interpolator.InterpolatorModel.reset_flow_control_initial_resultsgempy.core.interpolator.InterpolatorModel.set_all_shared_parametersgempy.core.interpolator.InterpolatorModel.set_flow_controlgempy.core.interpolator.InterpolatorModel.set_initial_resultsgempy.core.interpolator.InterpolatorModel.set_initial_results_matricesgempy.core.interpolator.InterpolatorModel.set_theano_graphgempy.core.interpolator.InterpolatorModel.set_theano_shared_Vs_kernelgempy.core.interpolator.InterpolatorModel.set_theano_shared_fault_relationgempy.core.interpolator.InterpolatorModel.set_theano_shared_faultsgempy.core.interpolator.InterpolatorModel.set_theano_shared_gravitygempy.core.interpolator.InterpolatorModel.set_theano_shared_gridgempy.core.interpolator.InterpolatorModel.set_theano_shared_is_faultgempy.core.interpolator.InterpolatorModel.set_theano_shared_is_finitegempy.core.interpolator.InterpolatorModel.set_theano_shared_kriginggempy.core.interpolator.InterpolatorModel.set_theano_shared_l0_l1gempy.core.interpolator.InterpolatorModel.set_theano_shared_loopgempy.core.interpolator.InterpolatorModel.set_theano_shared_magnetic_ctsgempy.core.interpolator.InterpolatorModel.set_theano_shared_magneticsgempy.core.interpolator.InterpolatorModel.set_theano_shared_nuggetsgempy.core.interpolator.InterpolatorModel.set_theano_shared_onlap_erodegempy.core.interpolator.InterpolatorModel.set_theano_shared_pos_densitygempy.core.interpolator.InterpolatorModel.set_theano_shared_pos_magneticsgempy.core.interpolator.InterpolatorModel.set_theano_shared_relationsgempy.core.interpolator.InterpolatorModel.set_theano_shared_structuregempy.core.interpolator.InterpolatorModel.set_theano_shared_structure_surfacesgempy.core.interpolator.InterpolatorModel.set_theano_shared_topologygempy.core.interpolator.InterpolatorModel.set_theano_shared_tz_kernelgempy.core.interpolator.InterpolatorModel.set_theano_shared_weights
gempy.core.interpolator.InterpolatorGravity
gempy.core.solution.Solution

modify_order_features函数

介绍

modify_order_features函数是gempy.core.model.ImplicitCoKriging类中的一个方法。该函数实现了通过对预测网格的顺序特征进行修改来改进预测结果的功能。该函数是修改函数序列特征的主要接口。

参数

  • grid: gempy.core.grid.Grid类型,预测网格对象。
  • grads: numpy.ndarray类型,在当前位置处计算出的梯度值。
  • values: numpy.ndarray类型,当前位置处的模型值。
  • residuals: numpy.ndarray类型,模型残差。

返回值

返回值为修改后的特征函数序列,也是numpy.ndarray类型。

使用方法

  1. gempy.core.model.ImplicitCoKriging中创建对象。
model = ImplicitCoKriging()
  1. 通过set_parameters方法设置模型参数。
model.set_parameters(nn=3, output='continuous', drift_terms=1, c_kwargs={"n_categories":10})
  1. 确定预测网格和参数。
resolution = 50
extent = np.array([[-3_000, 3_000], [-3_000, 3_000], [-3_000, 3_000]])
grid = Grid(extent=extent, resolution=resolution)
  1. 通过modify_order_features方法修改预测网格的顺序特征。
grads = model.compute_model_gradient_at(grid)
mod_vals, _ = model.block_forward_pass(grid)
residuals = model.residuals(grid, mod_vals)

.modified_features = modify_order_features(
    grid=grid,
    grads=grads,
    values=mod_vals,
    residuals=residuals
)

示例

以下代码演示了如何使用modify_order_features函数修改预测网格的顺序特征。

import gempy as gp

# Create model object
model = gp.create_model('test')

# Add surfaces
gp.add_surfaces(
    model,
    ['rock1', 'rock2', 'rock3', 'rock4'],
    colors=['red', 'green', 'blue', 'yellow'],
)

# Add series
gp.add_series(
    model,
    ['fault', 'sediments'],
    order_series=['fault', 'sediments'],
    add_to_model=True
)

# Add fault
gp.add_faults(model, ['fault1'], series_name='fault', fault_boundaries=[-200, 0], fault_dip=45)

# Add interfaces
gp.set_interpolator(model, theano_optimizer='fast_compile', verbose=['bla'])
gp.set_c_o_type(model)
gp.add_data(model, -1000, 1000, 0, grade=[0], series='fault')

gp.add_data(model, 0, 0, 0, grade=[1], series='sediments')
gp.add_data(model, -500, 500, -2000, grade=[1], series='sediments')
gp.add_data(model, -500, 500, -1000, grade=[2], series='sediments')
gp.add_data(model, -1000, 1000, -1500, grade=[3], series='sediments')

model.surfaces.df['order_surface'] = [-2, -1, 1, 2]
gp.map_series_to_surfaces(model)
gp.set_frequencies(model)

# Define grid and compute model
resolution = 50
extent = np.array([[-3_000, 3_000], [-3_000, 3_000], [-3_000, 3_000]])
grid = gp.Grid(extent=extent, resolution=resolution)

model.set_parameters(nn=3, output='continuous', drift_terms=1, c_kwargs={"n_categories":10})

grads = model.compute_model_gradient_at(grid)
mod_vals, _ = model.block_forward_pass(grid)
residuals = model.residuals(grid, mod_vals)

.modified_features = gp.modify_order_features(
    grid=grid,
    grads=grads,
    values=mod_vals,
    residuals=residuals
)

# Plot results
gp.plot_3d(model)