Break ties
Equal data values in a distribution present a challenge when rank ordering as a pre-cursor to Gaussian transformation. Tie-breaking, also known as despiking, methods are designed to remedy this by adding an inconsequential amount of noise to the tied data values. The spatial despiking algorithm that underpins this task considers both a random component as well as the local average of each location, as part of the tie-breaking process.
Parameters
source(object)object(geoscience object reference)- Reference to a geoscience object containing the spatial locations of known values. Must be a pointset, downhole-intervals, regular-3d-grid, regular-masked-3d-grid, or tensor-3d-grid with schema version 1.2.0 or 1.3.0.
attribute(geoscience object attribute reference)- Reference to a one-dimensional continuous attribute inside
source_objectthat contains the values to be tie-broken.
- Reference to a one-dimensional continuous attribute inside
-
{
"object": "https://{hub}.api.seequent.com/geoscience-object/orgs/{org_id}/workspaces/{workspace_id}/objects/path/my-pointset.json",
"attribute": "locations.attributes[?name=='my-attribute']",
}
target(object)object(geoscience object reference)- Reference to the geoscience object where the result will be stored. A new attribute containing the tie-broken values will be created on this object. Must be a pointset, downhole-intervals, regular-3d-grid, regular-masked-3d-grid, or tensor-3d-grid with schema version 1.2.0 or 1.3.0.
attribute(geoscience object attribute target)- Reference that points to an attribute inside
target_objectwhere the tie-broken results will be saved.
- Reference that points to an attribute inside
-
{
"object": "https://{hub}.api.seequent.com/geoscience-object/orgs/{org_id}/workspaces/{workspace_id}/objects/path/my-pointset.json",
"attribute": {
"operation": "create",
"name": "my-break-ties-result"
},
}
seed(integer, optional)- The seed value that the task will use to generate random numbers. Defaults to 38239342.
neighborhood(object)- Search parameters that determine which nearby points to use to figure out the local mean of each tied point.
-
{
"ellipsoid": {
"ellipsoid_ranges": {
"major": 100.0, // Major axis length of the search ellipsoid
"semi_major": 75.0, // Semi-major axis length
"minor": 50.0 // Minor axis length
},
"rotation": {
"dip_azimuth": 45.0, // First rotation about z-axis (0-360 degrees)
"dip": 30.0, // Second rotation about x-axis (0-180 degrees)
"pitch": 0.0 // Third rotation about z-axis (0-360 degrees)
}
},
"max_samples": 15, // Maximum number of nearby samples to use
"min_samples": 1 // Minimum number of nearby samples to use
}
Example
For more information, see the break ties API reference.
Request
requests.post(
"https://{hub}.api.seequent.com/compute/orgs/{org_id}/geostatistics/break-ties",
headers={"Authorization": "Bearer {token}"},
json={
"source": {
"object": "https://{hub}.api.seequent.com/geoscience-object/orgs/{org_id}/workspaces/{workspace_id}/objects/path/my-pointset.json",
"attribute": "locations.attributes[?name=='my-attribute']",
},
"target": {
"object": "https://{hub}.api.seequent.com/geoscience-object/orgs/{org_id}/workspaces/{workspace_id}/objects/path/my-pointset.json",
"attribute": {
"operation": "create",
"name": "my-break-ties-result"
},
},
"seed": 123,
"neighborhood": {
"anisotropy": {
"ellipsoid_ranges": {
"major": 100.0,
"semi_major": 50.0,
"minor": 20.0
},
"rotation": {
"dip_azimuth": 45.0,
"dip": 30.0,
"pitch": 10.0
}
},
"max_samples": 10,
"min_samples": 1,
},
},
)
Result
{
"message": "Break ties completed.",
"target": {
"reference": "https://{hub}.api.integration.seequent.com/geoscience-object/orgs/{org_id}/workspaces/{workspace_id}/objects/path/my-pointset.json"
"name": "My Pointset",
"description": "A new description for my pointset.",
"schema_id": "/objects/pointset/1.3.0",
"attribute": {
"reference": "locations.attributes[?key=='3cc3aa58-c928-4e79-b8ca-550174bff59e']",
"name": "my-break-ties-result"
}
}
}