24小时热门版块排行榜    

查看: 1867  |  回复: 7

lycid

禁虫 (著名写手)

本帖内容被屏蔽

已阅   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖


余泽成(金币+1): 谢谢参与应助! 2011-11-16 11:15:22
lycid(金币+5): 谢谢关注 2011-11-17 17:44:54
这种问题用1stOpt很容易解决啊,有个命令“SharedModel”专门处理这类问题。
2楼2011-11-16 09:09:45
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

zhchh008

金虫 (正式写手)


余泽成(金币+1): 谢谢参与应助!欢迎常来程序语言版! 2011-11-16 11:15:33
用 fmincon函数,或者优化工具箱
3楼2011-11-16 09:39:51
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

lycid

禁虫 (著名写手)

本帖内容被屏蔽

4楼2011-11-16 14:00:52
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

yqx1985

木虫 (著名写手)

云中仙

今天有点忙,等明天闲下来给你看
人面不知何时去,桃花依旧笑春风
5楼2011-11-16 21:14:01
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖


jjdg(金币+1): 感谢参与 2011-11-17 02:42:20
引用回帖:
4楼: Originally posted by lycid at 2011-11-16 14:00:52:
1stOpt 好像无法直接在里边编写这样的计算程序  得跟C或Fortan 联合 不太会啊 有点麻烦
用 fmincon函数 我也试过 但好像不太好使 运行一阵就提示中断   
优化工具箱没用过 不知道怎么用 是外部嵌入matlab的程序吗

1stOpt可以直接用Basic或Pascal语言描述复杂的模型,很简单好用的。你的模型代码没太看明白,用图片或Word格式描述一下,可以帮你跑跑!
6楼2011-11-16 21:48:08
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

yqx1985

木虫 (著名写手)

云中仙

【答案】应助回帖

★ ★ ★
余泽成(金币+3): 2011-11-19 12:19:58
余泽成: 谢谢参与应助! 2011-11-19 12:20:07
简单的来讲,这种问题可以采用如下方式估计,不过具体的函数参数设置还要你自己摸索。
(1)建立一个函数,名为fun
R=fun(p,data) %
x=data(:,1);y1=data(:,2);y2=data(:,3);
n0 = 1; % air
n1 = p(1)+p(2)./x.^2+p(3)./x.^2; % oxide
n2 = 3.4693+130149./x.^2+2.851e10./x.^4 + 1i*(0.52686-320950./x.^2+6.2225e10./x.^4); % silicon
d1 = p(4);
%Refracted angles
tet0 = pi*60/180; % incident beam angle
tet1 = asin((n0./n1)*sin(tet0));
tet2 = asin((n1./n2).*sin(tet1));

%Boundary reflection coefficients
r01s = (n0.*cos(tet0)-n1.*cos(tet1))./(n0.*cos(tet0)+n1.*cos(tet1));
r12s = (n1.*cos(tet1)-n2.*cos(tet2))./(n1.*cos(tet1)+n2.*cos(tet2));
r01p = (n1.*cos(tet0)-n0.*cos(tet1))./(n1.*cos(tet0)+n0.*cos(tet1));
r12p = (n2.*cos(tet1)-n1.*cos(tet2))./(n2.*cos(tet1)+n1.*cos(tet2));
dt1 = (2*pi./x).*n1.*d1.*cos(tet1);
%Reflection coefficients total
rs = (r01s+r12s.*exp(2*1i*dt1))./(1+r01s.*r12s.*exp(2*1i*dt1));
rp = -(r01p+r12p.*exp(2*1i*dt1))./(1+r01p.*r12p.*exp(2*1i*dt1));
F = rp./rs;
psi=atan(abs(F))*180/pi;
delta = angle(F)*180/pi;
m=find(delta<0);
delta(m(1:end))=delta(m(1:end))+360;

% y1=psi;
% y2=delta;

R1=(y1-psi).^2;
R2=(y2-delta).^2;
R=R1+R2;
% R1,R2和R的计算很重要,会影响到最终的参数估计,你可以%更具你的需要选一个最稳健的表达方法;这样,如果能选取到合适的参数的话,得到的R应该是一个尽可能接近于0的向量

options=statset; %根据需要设定参数,很重要
R=zeros(legth(data),1);
[beta,r,J,Sigma,mse] = nlinfit(data,R, @fun,p,options); % p是初始估计值

整体思路就是这个样子的,利用非线性回归的方法解决。中间的很多参数你得好好调整下。
人面不知何时去,桃花依旧笑春风
7楼2011-11-17 13:54:53
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

yqx1985

木虫 (著名写手)

云中仙

【答案】应助回帖


lycid(金币+20): 2011-11-17 17:44:27
余泽成(金币+1): 谢谢参与应助! 2011-11-19 12:20:18
竟然不能修改,fun函数到R=R1+R2就算结束了

下面的代码在command Windows中执行
options=statset; %根据需要设定参数,很重要
R=zeros(legth(data),1);
[beta,r,J,Sigma,mse] = nlinfit(data,R, @fun,p,options); % p是初始估计值
人面不知何时去,桃花依旧笑春风
8楼2011-11-17 13:56:53
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lycid 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +16 Ldrop2023 2026-08-13 20/1000 2026-08-20 11:07 by xskun
[基金申请] 言之凿凿,8月21号(明天)放榜 +12 医学老男孩 2026-08-20 14/700 2026-08-20 10:53 by ran2233
[基金申请] 时间戳变了,能看出什么问题? +13 基诺咪客 2026-08-17 17/850 2026-08-20 10:43 by wangyue2015
[基金申请] 只有每年这种时候来逛逛小木虫 +21 yaoyewhu2008 2026-08-20 21/1050 2026-08-20 10:37 by Vivilian
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +55 医学老男孩 2026-08-13 125/6250 2026-08-20 09:02 by 医学老男孩
[基金申请] 今天基金会出结果吗?20260819 +14 kkkl_v 2026-08-19 15/750 2026-08-20 08:21 by sunzitan
[教师之家] 为什么余额宝的年化利率越来越低?主要原因有哪些? +5 瞬息宇宙 2026-08-15 5/250 2026-08-19 20:23 by super2002521
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见