插值算法-克里金法(Java jk3d.jar测试过程)
来源:互联网 发布:java对称加密算法 编辑:程序博客网 时间:2024/05/18 10:59
算法介绍
kriging 插值作为地统计学中的一种插值方法由南非采矿工程师D.G.Krige于1951年首次提出,是一种求最优、线形、无偏的空间内插方法。在充分考虑观测资料之间的相互关系后,对每一个观测资料赋 予一定的权重系数,加权平均得到估计值。
方法步骤
- 输入原始数据,即采样点
- 网格化,选择区域的范围和网格的大小,对区域进行网格化处理。
- 数据检验与分析,根据采样值是否合乎实际情况,剔除明显差异点。
- 直方图的计算,直方图有助于掌握区域变化的分布规律,以便决定是否对原始数据进行转换。
- 利用变异函数进行变异函数计算,了解变量的空间结构。
- 克里金插值估
源码介绍
java 的第三方库jk3d.jar:由于jk3d.jar网上资料不多,就连github也没有详细资料.所以我在这里会介绍一下某些细节.
1.这个程序的工作过程是这样的:运行时先要加载一个配置文件jk3d.par
内容如下:
Parameters for jk3d *******************START OF PARAMETERS:D:\lcpsky-workspace\jk3dstudy\src\testdata-iw3d-3D.dat -file with data //数据输入路径1 2 3 4 0 -columns for X, Y, Z, var, sec var-1.0e21 1.0e21 -trimming limits0 -option: 0=grid, 1=cross, 2=jackknifexvk.dat -file with jackknife data1 2 0 3 0 -columns for X,Y,Z,vr and sec var3 -debugging level: 0,1,2,3testdata-iw3d-3D.dbg -file for debugging outputtestdata-iw3d-3D.out -file for kriged output //数据输出路径10 0 0.05 -nx,xmn,xsiz10 0 0.05 -ny,ymn,ysiz1 0 0.05 -nz,zmn,zsiz1 1 1 -x,y and z block discretization1 16 -min, max data for kriging16 8 -max per octant (0-> not used), blank if more than this many octants are empty1.1 1.1 1.1 -maximum search radii0.0 0.0 0.0 -angles for search ellipsoid1 -1001 -0=SK,1=OK,2=non-st SK,3=exdrift0 0 0 0 0 0 0 0 0 -drift: x,y,z,xx,yy,zz,xy,xz,zy0 -0, variable; 1, estimate trendextdrift.dat -gridded file with drift/mean4 -column number in gridded file1 0.0 -nst, nugget effect3 0.04 0.0 0.0 0.0 \it,cc,ang1,ang2,ang3 0.994 0.994 0.84 \a_hmax, a_hmin, a_vert3 0.0336 0.0 0.0 90.0 \it,cc,ang1,ang2,ang3 0.85 0.85 0.0 \a_hmax, a_hmin, a_vert
2.这一行说的是要进行插值得原始数据路径信息
D:\lcpsky-workspace\jk3dstudy\src\testdata-iw3d-3D.dat -file with data
文件内容是:
primary data4XYZVAL0.250.00.00.59490552849030.10.050.00.65716117883891990.10.10.00.67200579669015140.250.250.00.66267114632082540.10.350.00.56278610354276890.250.350.00.55639304060586810.00.40.00.47327336882769980.250.40.00.48856659904442640.250.450.00.42513590873906865
3.创建一个test类
package com.lcp.jk3dstudy;import de.onlinehome.geomath.jk3d.jk3d;public class TestJar { public static void main(String[] args){ String path="D:\\lcpsky-workspace\\jk3dstudy\\src\\jd3k.par";//第一个文件的路径 jk3d j=new jk3d(path); }}4.运行主函数即可在src下找到输出testdata-iw3d-3D.out文件
内容如下:
0.0 0.0 0.0 0.62192452095717690.05 0.0 0.0 0.63457621871484460.1 0.0 0.0 0.63816465221817450.15000000000000002 0.0 0.0 0.63194977710849760.2 0.0 0.0 0.61678067828101790.25 0.0 0.0 0.59490552849030.3 0.0 0.0 0.5694382550570230.35 0.0 0.0 0.54365318899533910.39999999999999997 0.0 0.0 0.52032300212610380.44999999999999996 0.0 0.0 0.50127751599832960.0 0.05 0.0 0.62394008049300380.05 0.05 0.0 0.64488144247996910.1 0.05 0.0 0.65716117883891990.15000000000000002 0.05 0.0 0.65900939056410630.2 0.05 0.0 0.6503066534772880.25 0.05 0.0 0.63258424052186010.3 0.05 0.0 0.60861966923701620.35 0.05 0.0 0.58176739167576260.39999999999999997 0.05 0.0 0.5552378702998140.44999999999999996 0.05 0.0 0.53152818476115470.0 0.1 0.0 0.62236964917459540.05 0.1 0.0 0.6513407589428060.1 0.1 0.0 0.67200579669015140.15000000000000002 0.1 0.0 0.6815795879613980.2 0.1 0.0 0.67901846882698860.25 0.1 0.0 0.66520123031628940.3 0.1 0.0 0.64263548630891610.35 0.1 0.0 0.61480429494433210.39999999999999997 0.1 0.0 0.58537151284047840.44999999999999996 0.1 0.0 0.55747959658513820.0 0.15000000000000002 0.0 0.61575734781530070.05 0.15000000000000002 0.0 0.65115349998206360.1 0.15000000000000002 0.0 0.67844139637962040.15000000000000002 0.15000000000000002 0.0 0.69399689963384690.2 0.15000000000000002 0.0 0.6960673243666390.25 0.15000000000000002 0.0 0.68508952118840480.3 0.15000000000000002 0.0 0.66345938068354170.35 0.15000000000000002 0.0 0.63485736805114160.39999999999999997 0.15000000000000002 0.0 0.60336542080622820.44999999999999996 0.15000000000000002 0.0 0.57264343690290810.0 0.2 0.0 0.60221291875346950.05 0.2 0.0 0.64121788377639040.1 0.2 0.0 0.67213736915984520.15000000000000002 0.2 0.0 0.69082653722482560.2 0.2 0.0 0.69517191067087950.25 0.2 0.0 0.68547679713756840.3 0.2 0.0 0.66422773948742120.35 0.2 0.0 0.63535595830335860.39999999999999997 0.2 0.0 0.60325853029092510.44999999999999996 0.2 0.0 0.5718829529798030.0 0.25 0.0 0.58025842608927070.05 0.25 0.0 0.61930872184407540.1 0.25 0.0 0.65020293113951260.15000000000000002 0.25 0.0 0.66867885395507210.2 0.25 0.0 0.6726687340242630.25 0.25 0.0 0.66267114632082540.3 0.25 0.0 0.64144680250013320.35 0.25 0.0 0.61318079212493140.39999999999999997 0.25 0.0 0.5824147515650780.44999999999999996 0.25 0.0 0.55308433796331570.0 0.3 0.0 0.54981243265957050.05 0.3 0.0 0.58529072446835420.1 0.3 0.0 0.61259558740505290.15000000000000002 0.3 0.0 0.62775571418427220.2 0.3 0.0 0.62912283693110540.25 0.3 0.0 0.6176564017402490.3 0.3 0.0 0.59649773279608340.35 0.3 0.0 0.57001823568221580.39999999999999997 0.3 0.0 0.54268638268225070.44999999999999996 0.3 0.0 0.51811172269138740.0 0.35 0.0 0.51283696773378920.05 0.35 0.0 0.54180354770226960.1 0.35 0.0 0.56278610354276890.15000000000000002 0.35 0.0 0.57243634007232960.2 0.35 0.0 0.56978582727716710.25 0.35 0.0 0.55639304060586810.3 0.35 0.0 0.53577480584070660.35 0.35 0.0 0.51235267844258710.39999999999999997 0.35 0.0 0.490294067333925550.44999999999999996 0.35 0.0 0.47261594257782760.0 0.39999999999999997 0.0 0.47327336882769980.05 0.39999999999999997 0.0 0.494021817183492030.1 0.39999999999999997 0.0 0.50728468350549090.15000000000000002 0.39999999999999997 0.0 0.51053382061478510.2 0.39999999999999997 0.0 0.50358045010216060.25 0.39999999999999997 0.0 0.48856659904442640.3 0.39999999999999997 0.0 0.46926734845440110.35 0.39999999999999997 0.0 0.44997368560357110.39999999999999997 0.39999999999999997 0.0 0.434356500973906770.44999999999999996 0.39999999999999997 0.0 0.424673424947193730.0 0.44999999999999996 0.0 0.43620015567420450.05 0.44999999999999996 0.0 0.44848072203598730.1 0.44999999999999996 0.0 0.454099120723841730.15000000000000002 0.44999999999999996 0.0 0.45138822267958390.2 0.44999999999999996 0.0 0.440875987962985770.25 0.44999999999999996 0.0 0.425135908739068650.3 0.44999999999999996 0.0 0.40800327467658680.35 0.44999999999999996 0.0 0.39345071747406980.39999999999999997 0.44999999999999996 0.0 0.384524548013070340.44999999999999996 0.44999999999999996 0.0 0.38268179105835376
阅读全文
0 0
- 插值算法-克里金法(Java jk3d.jar测试过程)
- 插值算法 简介
- 插值算法
- 什么是插值算法?
- 插值查找算法
- img 插值算法
- 插值查找算法
- 插值算法
- 插值算法总结
- 插值查找算法
- 图像插值算法
- CatmullRom插值算法
- 插值算法
- 插值查找算法
- 插值算法总结
- 插值算法分类
- 插值算法
- 图像插值算法
- java中的Thread多线程
- 。。。
- Java篇--Java语言的基本语法1
- java。
- 运算符
- 插值算法-克里金法(Java jk3d.jar测试过程)
- Java笔记:码代码中的一些经验和技巧
- java中的io流(输入输出流,序列化与反序列化,字节流 , 字符流,包装流,缓冲流)
- 【LeetCode】6. ZigZag Conversion
- sqoop-1.4.6安装及常见问题解决
- java中的IO 流
- RecyclerView系列(五)item显示列数切换
- java中的自定义异常
- java导出EXCEL