-
-
Notifications
You must be signed in to change notification settings - Fork 261
Description
Describe the bug
A simple model featuring a single fault and two horizontal units in separate groups. The younger (top) unit is only present in one fault block. Depending on input fault orientation, the older unit gets eroded unexpectedly in the fault block where the younger unit should not be present, due to the fact that the scalar field for the younger unit bends downwards along the fault plane and cuts o-off (due to erode relationship) the older unit.
The resulting models:
Model with reversed fault orientation leading to top layer bending downwards along fault plane and eroding lower unit:
To Reproduce
Run the following code with the provided input files
geo_model= gp.create_geomodel(
project_name='fault_test',
extent=[0, 1000, 0, 1000, 0, 1000],
resolution=[20,20,20],
importer_helper=gp.data.ImporterHelper(
# path_to_orientations="model_orientations_reverse.csv", for "weird" model
path_to_orientations="model_orientations.csv", # for "correct" model
path_to_surface_points="model_surface_points.csv"
)
)
# Map geological series to surfaces
gp.map_stack_to_surfaces(
gempy_model=geo_model,
mapping_object={
"Fault_Series": 'fault',
"Strat_Series_2": ('rock2'),
"Strat_Series_1": ('rock1')
}
)
# Define youngest structural group as fault
gp.set_is_fault(geo_model, ["Fault_Series"])
# Compute the geological model
gp.compute_model(geo_model)
# Display a basic cross section of input data
gpv.plot_2d(geo_model)
Expected behavior
I think only the "correct" model should be calculated, independent of passed orientations.
Additional context
model_orientations_reverse.csv
model_surface_points.csv
model_orientations.csv
