| 查看: 1085 | 回复: 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; } } } |
» 猜你喜欢
浙江师范大学是怎么坑我的
已经有15人回复
浙江师范大学是怎么坑我的
已经有4人回复
闲聊
已经有6人回复
江苏省自然基金 什么时候出结果
已经有7人回复
求教各位大神:2026教育部人文社科青年基金项目何时公示呀?
已经有6人回复
面上有专家说实验设备不是我们单位的
已经有8人回复
科研求助
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
matlab多维插值原理是什么?
已经有5人回复
» 抢金币啦!回帖就可以得到:
项目结题验收,希望一切顺利
+1/980
华南理工大学 光电材料方向 王竣可教授课题组招聘博士后、博士生及科研助理
+5/475
坐标北京,诚征女友,奔结婚,非诚勿扰!
+5/385
急招科研助理/博士后
+2/134
美国肯塔基大学Dr. Sheng Tong博士后招聘(空间可控的基因组编辑与肿瘤免疫治疗)
+1/97
中科院化学所韩布兴院士团队诚聘光催化、光酶催化、光电催化领域博士后1-2名
+1/78
山东征女友,坐标济南
+1/38
石河子大学211双一流学科分子筛等多孔材料与生物质资源化利用方向招2027级推免生
+1/35
27博士申请自荐
+1/26
中国科大-合肥国家实验室冷原子量子网络团队招聘启事
+2/26
深圳大学2027级光电信息工程/物理学研究生推免
+1/17
深圳大学应用技术学院招聘凝聚态物理博士后
+1/17
中科院西北研究院招收遥感、地信相关专业联培研究生及科研助理!
+1/14
招收2027年-申请考核博士生-仿生材料/生物能源方向
+1/11
欢迎推免生/准推免生报名(约80名每年)--长期有效--物理/电子等所有理工专业
+1/9
【特刊征稿】BM临床诊断与治疗生物功能材料专题(Scopus、DOAJ 收录)
+1/8
口腔特刊客座招募客编Biofunctional Materials牙科生物功能材料专题,Scopus期刊
+1/7
招聘材料计算,分子动力学模拟相关讲师
+1/2
求一篇文献PDF Journal of Organic Chemistry (2026) 91 (28): 9771–9779.
+1/1
有人玩真心话吗
+1/1
4楼2012-12-21 08:27:59
2楼2012-12-07 13:08:58









回复此楼