24小时热门版块排行榜    

查看: 426  |  回复: 1
当前主题已经存档。

freebjx

金虫 (小有名气)


[资源] 【讨论】一个matlab解复变量方程实例

忙了较长一段时间了,终于有点结果,首先得感谢fspdlh,大部分工作是他完成的。下面是程序和结果供大家讨论,还望大家多指点,结果的数据有点发散,理论上应是光滑曲线,请高手指点。其中S.a,S.b分别有三个数据 ,我取了 S.a(1),S.b(1)。其它的也试过
function equation()
clear
clc
%--------------------------------------------------------------------------
kappa = 0.44;
beta=9.6;
kt=1.2;
gamma1=0.16;
gamma2 =2.4;
g0 = 0.6;
wc =0;
wa=0;
E=0.296e4;
s_j=E/(i*(sqrt(2*kappa)));
ns=gamma1*gamma2/(4*g0^2);
nloop =4001;
wlist = linspace(-30,30,nloop);
pt1 = zeros(nloop,1);
pr1=zeros(nloop,1);
c0=E/(sqrt(2*ns)*kt);
c1=4*g0^2/(2*kt*gamma2);
%--------------------------------------------------------------------------
fun1='2*a^3+2*a*b^2+a*c2+a*c1-2*b*c3*a^2-2*c3*b^3-b*c3*c2+b*c4-2*c0*a^2-2*c0*b^2-c0*c2=0';
fun2='2*b*a^2+2*b^3+b*c2+b*c1+2*c3*a^3+2*a*c3*b^2+a*c3*c2-a*c4=0';
fun1=subfun(fun1,'c0',c0);
fun1=subfun(fun1,'c1',c1);
fun2=subfun(fun2,'c0',c0);
fun2=subfun(fun2,'c1',c1);
for k = 1:nloop
    wl=wlist(k);
    c2=(wa-wl)^2/kt^2+1;
    c3=((wc-wl)-beta)/kt ;
    c4=c1*(wa-wl)/gamma2;
    temp_fun1=subfun(fun1,'c2',c2);
    temp_fun1=subfun(temp_fun1,'c3',c3);
    temp_fun1=subfun(temp_fun1,'c4',c4);
    temp_fun2=subfun(fun2,'c2',c2);
    temp_fun2=subfun(temp_fun2,'c3',c3);
    temp_fun2=subfun(temp_fun2,'c4',c4);
    S=solve(temp_fun1,temp_fun2,'a','b');
   
    a1=S.a(1);
    b1=S.b(1);
    x1=real(a1)+i*(b1);
    asw1=sqrt(ns)*x1;
    x2=c0/(1+i*((wc-x1)+beta)/kt );
    asw2=sqrt(ns)*x2;
    ac=sqrt(2)*(asw1+asw2)/2;
    acc=sqrt(2)*(asw1-asw2)/2;
    %----------------------------------------------------------------------
    t=s_j+(i*sqrt(2*kappa))*ac;
    pt(k)=t'*t;
    r=(i*sqrt(2*kappa))*acc;
    pr(k)=r'*r;
   end
   
%--------------------------------------------------------------------------
pt=eval(pt);
pr=eval(pr);
plot(wlist,real(pt),wlist,real(pr));
xlabel('dwl'); ylabel('cavity transmission/reflection');
legend('transmission','reflection');

%==========================================================================
function fun=subfun(fun,str,para)
para=cat(2,'(',num2str(para),')');
fun=strrep(fun,str,para);

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

freebjx

金虫 (小有名气)


结果应该是双峰,高手请看看有什么问题
2楼2009-04-21 09:42:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 freebjx 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] FileCode能看出啥? +4 要乐观耀哥 2026-08-10 8/400 2026-08-10 15:02 by 天神眷顾
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +6 家与远方 2026-08-10 9/450 2026-08-10 14:29 by 爱看书的可乐
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 关于代码变化问题,想知道的进来 +16 且听虎啸 2026-08-07 23/1150 2026-08-10 12:35 by majunge000
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 化学口download_prp&fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
信息提示
请填处理意见