public GridField testKriging() { var config = new KrigingModelConfig(); config.ModelType = KrigingModelType.linear; config.Nugget = 10; config.Range = 10; config.Sill = 10; var gridInfo = new GridInfo(); gridInfo.Extent = new Extent(0, 10, 0, 10); gridInfo.Step = 0.1; var krigingKonfig = new KrigingConfig(); krigingKonfig.MaxPointsInSector = 10; krigingKonfig.SearchRadius = 10; krigingKonfig.SectorsCount = 1; var semivarianse = TheoreticalModel.getModelDelegate(config); var points = new[] { new GridPoint(1, 1, 5), new GridPoint(8, 8, 5), new GridPoint(1, 8, 5), new GridPoint(8, 1, 5), new GridPoint(5, 5, 0) }; var grid = Kriging.getGrid(gridInfo, false, krigingKonfig, semivarianse, points, null, null); return(grid); }
/// <summary> /// Возвращает вариограмму /// </summary> /// <param name="modelConfig"></param> /// <returns></returns> public static Func <double, double> getModelDelegate(KrigingModelConfig modelConfig) { var theoretical = new TheoreticalModel(null); var model = theoretical.getFunction(modelConfig); return(model.getValue); }
public IKrigingModel getFunction(KrigingModelConfig config) { return(getFunction(config.ModelType, config.Sill, config.Range, config.Nugget)); }