Model([project_name]) Container class of all objects that constitute a GemPy model.
DataMutation() This class handles all the mutation of an object belonging to model and the update of every single object depend on that.


Grid(**kwargs) Class to generate grids.
Faults([series_fault, rel_matrix]) Class that encapsulate faulting related content.
Series(faults, series_names) Class that contains the functionality and attributes related to the series.
Surfaces(series[, surface_names, …]) Class that contains the surfaces of the model and the values of each of them.
GeometricData(surfaces) Parent class of the objects which containing the input parameters: surface_points and orientations. This class
SurfacePoints(surfaces[, coord, surface]) Data child with specific methods to manipulate interface data.
Orientations(surfaces[, coord, pole_vector, …]) Data child with specific methods to manipulate orientation data.
RescaledData(surface_points, orientations, …) Auxiliary class to rescale the coordinates between 0 and 1 to increase float stability.
Structure(surface_points, orientations, …) The structure_data class analyse the different lengths of subset in the interface and orientations categories_df to pass them to the theano function.
KrigingParameters(grid, structure) Class that stores and computes the default values for the kriging parameters used during the interpolation.
Options() The class options contains the auxiliary user editable flags mainly independent to the model.
AdditionalData(surface_points, orientations, …) Container class that encapsulate Structure, KrigingParameters, Options and


Interpolator(surface_points, orientations, …) Class that act as:
InterpolatorModel(surface_points, …) Child class of Interpolator which set the shared variables and compiles the theano graph to compute the geological model, i.e.


Solution(grid, surfaces, series) This class stores the output of the interpolation and the necessary objects to visualize and manipulate this data.

Front end

activate_interactive_df(geo_model[, plot_object]) Experimental: Activate the use of the QgridModelIntegration: TODO evaluate the use of this functionality
compute_model(model[, output, compute_mesh, …]) Computes the geological model and any extra output given in the additional data option.
compute_model_at(new_grid, model, **kwargs) This function creates a new custom grid and deactivate all the other grids and compute the model there:
create_data(extent, numpy.ndarray], …) Create a gempy.core.model.Model object and initialize some of the main functions such as:
create_model([project_name]) Create a Model object
get_surfaces(model_solution, …) Get vertices and simplices of the surface_points for its vtk visualization and further analysis
get_th_fn(model) Get the compiled theano function
init_data(geo_model, extent, …) Create a gempy.core.model.Model object and initialize some of the main functions such as:
load_model(name[, path, recompile]) Loading model saved with model.save_model function.
load_model_pickle(path) Read InputData object from python pickle.
map_series_to_surfaces(geo_model, …[, …]) (inserted)
read_csv(geo_model[, path_i, path_o]) Read data from a csv
save_model(model[, name, path]) Save model in new folder.
save_model_to_pickle(model[, path]) Short term model storage.
set_interpolation_data(*args, **kwargs)
set_orientation_from_surface_points(…) Create and set orientations from at least 3 points of the gempy.data_management.InputData.surface_points
set_series(geo_model, mapping_object, …[, …]) Map series to surfaces and update all related objects accordingly to the following arguments:
update_additional_data(model[, …])