| 查看: 2234 | 回复: 2 | |||
| 【悬赏金币】回答本帖问题,作者束文生将赠送您 25 个金币 | |||
[求助]
求助介电常数(复数)怎么用一阶德拜方程拟合 已有1人参与
|
|||
|
介电常数在每个频点的数据为复数,现在知道部分频点的介电常数,需要用一阶德拜方程来拟合,如何得到德拜方程的系数呢?用matlab还是origin? 一阶德拜方程: y=(a+(b-a)/(1+(2*pi*f*c)^2))-j*(d/(2*pi*f*(1/(36*pi)*10^-9))+((b-a)*2*pi*f*c)/(1+(2*pi*f*c)^2));其中f为频率,a b c d 为需要拟合的系数; 频率: 3000000 4000000 5000000 6000000 7000000 8000000 9000000 10000000 15000000 20000000 25000000 30000000 40000000 50000000 60000000 70000000 80000000 90000000 100000000 介电常数实部: 13.5 10.61 8.8 7.58 6.7 6.04 5.53 5.12 3.92 3.35 3 2.78 2.52 2.37 2.26 2.18 2.11 2.048 2.01 介电常数虚部: 17.85 15.28 13.35 11.86 10.67 9.72 8.93 8.27 6.07 4.83 4.02 3.46 2.72 2.25 1.92 1.67 1.47 1.3 1.17 |
» 猜你喜欢
366求调剂
已经有9人回复
材料工程085601,270求调剂
已经有37人回复
279学硕食品专业求调剂院校
已经有18人回复
290调剂生物0860
已经有31人回复
一志愿085802 323分求调剂
已经有13人回复
277求调剂
已经有23人回复
322求调剂,08工科
已经有4人回复
材料工程281还有调剂机会吗
已经有30人回复
化学070300 求调剂
已经有16人回复
化工学硕294分,求导师收留
已经有12人回复
【答案】应助回帖
|
用OpenLu(可从www.forcal.net下载)求解。 !!!using["luopt","math","win"]; //使用命名空间 g(a,b,c,d,f)= (a+(b-a)/(1+(2*pi*f*c)^2))-1.0i*(d/(2*pi*f*(1/(36*pi)*1e-9))+((b-a)*2*pi*f*c)/(1+(2*pi*f*c)^2)); 目标函数(a,b,c,d : i,s, e11,e22 : max, f, e1, e2)= { i=-1, s=0, while{++i<max, toreal[g(a,b,c,d,f(i,0)), &e11,&e22], s=s+[e1(i,0)-e11]^2+[e2(i,0)-e22]^2 }, s }; main(: tArray : max, f, e1, e2)= { tArray=matrix{ //存放实验数据 //f e1[realPart] e2[imagPart] "3000000 13.5 17.85 4000000 10.61 15.28 5000000 8.8 13.35 6000000 7.58 11.86 7000000 6.7 10.67 8000000 6.04 9.72 9000000 5.53 8.93 10000000 5.12 8.27 15000000 3.92 6.07 20000000 3.35 4.83 25000000 3 4.02 30000000 2.78 3.46 40000000 2.52 2.72 50000000 2.37 2.25 60000000 2.26 1.92 70000000 2.18 1.67 80000000 2.11 1.47 90000000 2.048 1.3 100000000 2.01 1.17 " }, len[tArray,0,&max], f=tArray(all:0), e1=tArray(all:1),e2=tArray(all:2), //用len函数取矩阵的行数,f等取矩阵的列 Opt1[@目标函数] //Opt1函数全局优化 }; 结果(a,b,c,d,最小值): 2.393920870707986 18.24067405097755 -3.758382749525807e-008 -1.610640545623026e-003 3.654009362095743 |
2楼2021-08-09 13:59:26
3楼2021-08-09 16:18:04













回复此楼