| 查看: 814 | 回复: 4 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【求助】插值程序出错,大家帮忙看看 已有3人参与
|
|||
|
各位大虾帮忙看看为何该程序一直出错呢?谢谢clc %清除command window clear %清除workspace Pyuan=[115.6364167 37.99511667;115.6902167 37.99546667;115.7298167 37.99686667;115.7500333 37.9938;115.7694333 37.01708333;115.7304333 38.0174;115.6845833 38.02698333;115.7758667 38.11575;115.7988833 38.11233333;115.64 38.0525;115.7163667 38.05178333;115.73505 38.05318333;115.7642833 38.08058333;115.74035 38.08356667] %输入训练样本矩阵,二维矩阵,仅含x,y坐标值 Tyuan=[20.24;16.94;21.22;13.44;21.80;19.20;12.67;12.24;13.83;12.78;10.30;9.29;19.47;9.56] %输入目标输出,本文中为土壤SOM jian=[115.5023333 37.95233333 14.11; 115.5531667 37.96 14.80 ;115.582 37.9705 19.86;115.63675 37.9665;11.31;115.69205 38.9596 19.00; 115.7119833 37.95888333 10.92;115.77495 37.96461667 11.89 ] %输入检验样本 %原始数据归一化预处理 l=length(Tyuan); g=length(jian); i=2; Xmin=Pyuan(1,1); Xmax=Pyuan(1,1); Ymin=Pyuan(2,1); Ymax=Pyuan(2,1); Tmin=Tyuan(1,1); Tmax=Tyuan(1,1); while i<=l if Pyuan(1,i) i=i+1; else i=i+1; end end i=2; while i<=l if Pyuan(1,i)>Xmax Xmax=Pyuan(1,i); i=i+1; else i=i+1; end end i=2; while i<=l if Ymin>Pyuan(2,i) Ymin=Pyuan(2,i); i=i+l; else i=i+l; end end i=2; while i<=l if Ymax i=i+1; else i=i+1; end end i=2; while i<=l if Tmax i=i+1; else i=i+1; end end i=2; while i<=l if Tmin>Tyuan(1,i) Tmin=Tyuann(1,i); i=i+1; else i=i+1; end end i=1; Pxung=zeros(7,l); Tmug=zeros(1,l); jiang=zeros(7,g); while i<=l Pxung(1,i)=(Pyuan(1,i)-Xmin)/(Xmax-Xmin); Pxung(2,i)=(Pyuan(2,i)-Ymin)/(Ymax-Ymin); Tmug(1,i)=(Tyuan(1,i)-Tmin)/(Tmax-Tmin); i=i+1; end i=1; while i<=g jiang(1,i)=(jian(1,i)-Xmin)/(Xmax-Xmin); jiang(2,i)=(jian(2,i)-Ymin)/(Ymax-Ymin); i=i+1; end %插值点坐标生成 xx=(Xmin:50:Xmax); yy=(Ymin:50:Ymax); m=length(xx); n=length(yy); Q=m*n; [XX, YY]=meshgrid(xx,yy); a=repmat(xx,1,n); b=zeros(1,Q); k=1; while k<=n b(1,((k-1)*m+1):k*m)=YY(k,1:m); k=k+1; end Pyu(1,1:Q)=a(1,1:Q); Pyu(2,1:Q)=b(1,1:Q); %归一化处理 i=1; Pyug=zeros(7,Q); while i<=Q Pyug(1,i)=(Pyu(1,i)-Xmin)/(Xmax-Xmin); Pyug(2,i)=(Pyu(2,i)-Ymin)/(Ymax-Ymin); i=i+1; end %训练样本网络输入生成,以按邻近点距离由小到大依次确定第3、4、5、6、7 e=1; f=1; k=3; h=0; o=0; c=0; d=0; D=30; %初始搜索半径D的设置应根据研究区的大小视情况而定 D1=0; while f<=l if k>7 f=f+1; k=3; e=l; D1=D; D=30; else if e>l D1=D; D=D+5;%搜索步长的设定应根据样点的稀疏程度、空间采样尺度的大小设定,以保证5个已知采样点按距离由小到大依次被搜索到。 e=1; else h=Pyuan(1,f); o=Pyuan(2,f); e=Pyuan(1,e); d=Pyuan(2,e); DD=sqrt((h-c)^2+(o-d)^2); if D1<=DD&&DD k=k+1; e=e+1; else e=e+1; end end end end %插值点网络输入生成,以按邻近点距离由小到大依次确定第3、4、5、6、7个神经节元的输入。 e=1; f=1; k=3; h=0; o=0; c=0; d=0; D=50; D1=D; while f<=Q if k >7 f=f+1; k=3; e=l; D1=0; D=50; else if e>=l D1=D; D=D+10; e=1; else h=Pyu(1,f); o=Pyu(2,f); c=Pyuan(1,e); d=Pyuan(2,e); DD=sqrt((h-c)^2+(o-d)^2); if D1<=DD&&DD k=k+1; e=e+1; else e=e+1; end end end end %检验点网络输入生成,以按邻近点距离由小到大依次确定第3、4、5、6、7个神经节元的输入。 e=1; f=1; k=3; h=0; o=0; c=0; d=0; D=30; D1=0; while f<=g if k>7 f=f+1; k=3; e=l; D1=1; D=30; else if e>=l D1=D; D=D+5; e=1; else h=jian(1,f); o=jian(2,f); c=Pyuan(1,e); d=Pyuan(2,e); DD=sqrt((h-c)^2+(o-d)^2); if D1<=DD&&DD k=k+1; e=e+1; else e=e+1; end end end end %网络建立、训练与仿真 net=newrb(Pxung,Tmug,goal,spread,mn,df); %goal为rose均方误差函数;spread为扩展常数:Inn为隐层神经元个数:df为显示频数。 JIAN=sim(net,jian);%利用检验样本进行网络泛化能力检验 Zyu=sim(net,Pyug); %对研究区进行插值 %还原数据 Zyuh=zeros(1,Q); i=1; while i<=Q Zyuh(1,i)=Zyu(1,i-Tmin)/(Tmax-Tmin); i=i+1; end %将一维网络预测输出转为网络坐标点矩阵相对应的矩阵 j=1; m=length(xx); n=length(yy); while j Zwang(j,1:m)=Zyuh(1,jj:j*m); j=j+1; end %绘制研究区土壤属性空间分布趋势图 figure(1),contour(XX,YY,Zwang)%等值线图 figure(2),pcolor(XX,YY,Zwang)%伪彩图 figure(3),surf(aTe,YY,Zwang) %三维立体图 |
» 猜你喜欢
A期刊撤稿
已经有5人回复
临港实验室与上科大联培博士招生1名
已经有8人回复
26申博自荐
已经有7人回复
想换工作。大多数高校都是 评职称时 认可5年内在原单位取得的成果吗?
已经有4人回复
带资进组求博导收留
已经有9人回复
求助大佬们,伤口沾上了乙腈
已经有6人回复
最近几年招的学生写论文不引自己组发的文章
已经有9人回复
» 本主题相关价值贴推荐,对您同样有帮助:
小女子跪求:Matlab插值问题,困扰已久,新虫散尽币
已经有5人回复
surfer8插值问题
已经有5人回复
matlab 三次插值 求助!!!!!!!!!!!
已经有14人回复
很简单的Fortran赋值出错啦,求大神们帮忙找bug...
已经有11人回复
分子优化总是出错,请大家帮忙
已经有9人回复
求助闭合曲线B样条插值的问题
已经有11人回复
GIS做插值出现的问题
已经有15人回复
matlab三维数组矩阵延拓问题
已经有6人回复
实在是看不出这段matlab程序里哪里出错了,请大家帮忙看看!
已经有10人回复
matlab插值法的一个问题
已经有6人回复
origin指数拟合出错,大家帮忙
已经有9人回复
计算neb出错,请高手帮忙看看
已经有27人回复
关于克里金插值问题
已经有9人回复
关于arcgis地统计模块及插值问题
已经有5人回复
最近在学有限元法,对构造插值函数有个问题,在此请教。
已经有7人回复
分子优化总是出错,请大家帮忙
已经有5人回复
【求助】vasp安装编译错误,请大家帮忙看下那里出错了。
已经有6人回复
【求助】VASP5.2 编译出错make: *** [vasp] 错误 1,请大家帮忙分析分析,谢谢
已经有7人回复
3楼2010-07-17 11:29:57
孤鸿飘逸
金虫 (正式写手)
- 应助: 1 (幼儿园)
- 金币: 5861.4
- 散金: 499
- 红花: 17
- 帖子: 617
- 在线: 432.5小时
- 虫号: 864807
- 注册: 2009-10-07
- 性别: GG
- 专业: 机器人学及机器人技术
2楼2010-07-17 11:13:48
5楼2010-07-17 15:19:59













回复此楼