140 likes | 307 Views
New Software Tools for Geostatistics: GsTL and Simulacre. Nicolas Remy SCRF meeting 2003. Introduction. The GSLIB code has shown its limits. Need a new framework which provides exportable tools: convenient integration into other softwares
E N D
New Software Tools for Geostatistics: GsTL and Simulacre Nicolas Remy SCRF meeting 2003
Introduction The GSLIB code has shown its limits • Need a new framework which • provides exportable tools: convenient integration into other softwares • implements geostatistics algorithms in their full generality • fosters code reuse
Methodology Consider all the algorithms to be implemented Identify the key concepts they share and those that are unique to each of them Define the minimal set of properties each concept must have Implement the algorithms solely in term of the identified concepts and their properties
p Simulation Path Cdf Estimator Sampler Simulation Path Neighborhood Cdf Sequential Simulation
Sequential Simulation Simulation path Cdf sampling Random path Random sampling Spiral path Metropolis sampling Cdfestimation Gaussian Cdf kriging or cokriging based estimation Non-parametric cdf: Indicator kriging Search Tree Classification methods (e.g. Neural Network)
Concept Requirements • Path: • has_more_nodes • to_next_node • cdfEstimator: • estimate_cdf(node, neighbors) • Neighborhood: • find_neighbors(node) • Sampler: • assign_value(node, cdf) • Cdf: • inverse(p)
GsTL Algorithms Kriging (simple, ordinary, and with trend) Cokriging (simple, ordinary, MM1, MM2, LMC) Sequential simulation (gaussian, indicator, snesim) Sequential cosimulation (gaussian, indicator, …) P-field simulation univariate statistics
Main Concepts Simulation Path (random, structured,…) CDF Estimators (kriging, NN, search tree,…) Neighborhood (ellipsoid, template-based,…) Sampler (uniform-random, constant,…) GeoValue Correlation Measure (covariance) CDF (gaussian, exponential, non-parametric, …)
Integration Into a Software Proprietary Grid Data Structure (“Tsolid”) • Geovalue • property_value • location • is_informed • Neighborhood • find_neighbors Path Iterates on geovalues GsTL API SGSIM
SGS on a T-Solid Continuous Discontinuous
SGS on a faulted surface Continuous Discontinuous
Algorithm selection Parameters for selected algorithm algorithm panel Visualization panel Simulacre: a new geostat software
Conclusions • Two example uses of GsTL • Implementing SGSIM into a commercial software using the GsTL tools • Creating a new geostatistics software from scratch. • It will serve two purposes: • Be a possible GSLIB replacement into which new algorithms will be integrated • Serve as an example of how to use the GsTL tools. Complete source code distributed.
Conclusions • GsTL is two-fold: • A framework, describing the fundamental properties required by the geostatistics algorithms • a C++ implementation • Using the GsTL framework: • Enables to easily integrate newly developed algorithms when they are added to the GsTL API • Does not mean that what already exists has to be re-written