| 查看: 1046 | 回复: 4 | |||
[交流]
探讨多维插值程序的编写——自己编写一个,希望能讨论一下更好的
|
|||
|
根据n,pi值来求G//感觉计算有些繁琐,希望讨论更简洁有效的方式 n[14]={};//14个初值, 由小到大 G[14][17]={};//14*17数组,每行由小到大 pi[14][17]{};//14*17数组,每行由大到小 //n的14个值对应G,pi的14行 if(nc>n[13])//输入值nc>n[13],则产生新的对应nc的HnewG[17]和Hnewpi[17];然后对应输入pai求输出Gc { for(j=0;j<=16;j++) { HnewG[j]=G[12][j]*(n[13]-nc)/(n[13]-n[12])+G[13][j]*(nc-n[12])/(n[13]-n[12]); Hnewpi[j]=pi[12][j]*(n[13]-nc)/(n[13]-n[12])+pi[13][j]*(nc-n[12])/(n[13]-n[12]); } if(pai return(HnewG[16]); } if(pai>Hnewpi[0]) { return(HnewG[0]); } for(j=0;j<=16;j++) { if(pai==Hnewpi[j]) { Gc=HnewG[j]; return(Gc); } else if((pai { Gc=HnewG[j]*(Hnewpi[j+1]-pai)/(Hnewpi[j+1]-Hnewpi[j])+HnewG[j+1]*(pai-Hnewpi[j])/(Hnewpi[j+1]-Hnewpi[j]); return(Gc); } else continue; } } else if(nc for(j=0;j<=16;j++) { LnewG[j]=G[1][j]*(n[0]-nc)/(n[0]-n[1])+G[0][j]*(nc-n[1])/(n[0]-n[1]); Lnewpi[j]=pi[0][j]*(n[1]-nc)/(n[1]-n[0])+pi[1][j]*(nc-n[0])/(n[1]-n[0]); } if(pai return(LnewG[20]); } if(pai>Lnewpi[0]) { return(LnewG[0]); } for(j=0;j<=16;j++) { if(pai==Lnewpi[j]) { Gc=LnewG[j]; return(Gc); } else if((pai { Gc=LnewG[j]*(Lnewpi[j+1]-pai)/(Lnewpi[j+1]-Lnewpi[j])+LnewG[j+1]*(pai-Lnewpi[j])/(Lnewpi[j+1]-Lnewpi[j]); return(Gc); } else continue; } } else if(nc==n[0])//判定最小值以便于下面的计算 { if(pai return(G[0][16]); } if(pai>pi[0][0]) { return(G[0][0]); } for(j=0;j<=16;j++) { if(pai==pi[0][j]) { Gc=G[0][j]; return(Gc); } else if((pai { Gc=G[0][j]*(pi[0][j+1]-pai)/(pi[0][j+1]-pi[0][j])+G[0][j+1]*(pai-pi[0][j])/(pi[0][j+1]-pi[0][j]); return(Gc); } else continue; } } else//判定输入nc的范围,求解对应nc的pi[17],再根据输入pai求输出Gc;其中求解过程在是从n[14]的每相邻两值判定nc并按上面步骤求解 { for(i=1;i<=13;i++) { if(nc==n) { if(pai { return(G[16]); } if(pai>pi[0]) { return(G[0]); } for(j=0;j<=16;j++) { if(pai==pi[j]) { Gc=G[j]; return(Gc); } else if((pai { Gc=G[j]*(pi[j+1]-pai)/(pi[j+1]-pi[j])+G[j+1]*(pai-pi[j])/(pi[j+1]-pi[j]); return(Gc); } else continue; } } else if((nc { for(j=0;j<=16;j++) { newG[j]=G[i-1][j]*(n-nc)/(n-n[i-1])+G[j]*(nc-n[i-1])/(n-n[i-1]); newpi[j]=pi[i-1][j]*(n-nc)/(n-n[i-1])+pi[j]*(nc-n[i-1])/(n-n[i-1]); } if(pai return(newG[16]); } if(pai>newpi[0]) { return(newG[0]); } for(j=0;j<=16;j++) { if(pai==newpi[j]) { Gc=newG[j]; return(Gc); } else if((pai { Gc=newG[j]*(newpi[j+1]-pai)/(newpi[j+1]-newpi[j])+newG[j+1]*(pai-newpi[j])/(newpi[j+1]-newpi[j]); return(Gc); } else continue; } } else continue; } } } |
» 猜你喜欢
面上提前没消息,有中的吗
已经有14人回复
这种情况还有戏吗
已经有12人回复
微信指数没变化,科研之友没阅读
已经有19人回复
准备明年的基金了
已经有7人回复
面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇!
已经有24人回复
2026年国自然面上资助率
已经有21人回复
基础研究怎么拉横向,学校到款任务越来越多,难以完成 拉横向,都有哪些途径啊
已经有10人回复
2027年申博
已经有3人回复
一个有机合成实验室都需要哪些设备?
已经有7人回复
HXDI做水性聚氨酯乳液,是不是特别容易出渣
已经有3人回复
» 本主题相关价值贴推荐,对您同样有帮助:
matlab多维插值原理是什么?
已经有5人回复
» 抢金币啦!回帖就可以得到:
今年面上没有消息,想来是没了,散个金攒攒人品,为明年祈福
+1/604
坐标北京,92男,诚征结婚对象
+1/167
药化高级研究员
+1/79
采用本质安全型氢气流量控制的化学合成 - Alicat ISMC本安防爆质量流量控制器
+2/78
化工学院邱惠斌教授联合同仁医院招聘博士后
+1/74
Postdoctoral fellow in Medicinal Chemistry, McGill University
+1/71
西湖大学拓扑光学、非厄米光学、太赫兹方向博士后招聘(长期有效)
+5/30
招收博士后(神经退行性疾病、认知障碍疾病)
+1/27
诚征女友( 西安 )
+1/18
西湖大学拓扑光学、非厄米光学、太赫兹方向博士后招聘(长期有效)
+5/15
四川大学周加境课题组招博士研究生/研究助理(自组装材料/生物医学方向)
+1/6
新西兰坎特伯雷大学招博士后
+1/6
西安交通大学补亚忠课题组招收申请考核制博士生
+2/6
西湖大学拓扑光学、非厄米光学、太赫兹方向博士后招聘(长期有效)
+5/5
多本Scopus收录国际英文期刊征稿,全免 APC!含医学期刊
+1/5
(Scopus期刊)Biofunctional Materials《生物功能性材料》招募青年编委及征稿
+1/4
分不清 EI 会议 CA 和 JA?90% 投稿人踩过的检索大坑
+1/2
国自然发榜在即:此刻的你,是什么心情?
+1/2
致每一位等待国自然结果的科研人:我们想听听你的心声
+1/2
浙江大学王宇课题组诚聘博士后/博士研究生/科研助理(招聘长期有效)
+1/1
2楼2012-12-07 13:08:58
3楼2012-12-08 09:33:53
4楼2012-12-21 08:27:59
简单回复
11jxli15楼
2012-12-23 09:45











回复此楼