查看: 205|回复: 3|关注: 0

[已解决] 请教一下我这个怎么改啊

[复制链接]

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
c=2.99792458e8;  hb=(6.626196*10^-34)/(2*pi);  k_b=1.380662*10^-23;   
M=10*10^-18;  T=4;  wc=7.82*10^9;  wl=wc;     wm=24*10^6;    Q=15*10^3;  rm=wm/Q;
kap=5.6*10^6;   kapex=4*10^6;
Pin=0.5*10^-9;
Ep=sqrt(Pin/(hb*wl));     
g=35;
detp=0;
syms n0
n0=double(solve(n0*( kap^2 + ( detp - 2*g^2*n0/wm )^2 ) -  kapex*Ep^2==0,n0));
A=n0==real(n0);
y=n0(A);
n0=y;
disp(n0);
syms n
Xs=2*g*n0/wm;
    A=2*g*wm/( wm^2 - n^2 - i*rm*n);
    B=detp - g*Xs - g*n0*A;
    C= kap + i*(B - n) - g^2*n0^2*A^2/( kap - i*(B + n) );
  m=sqrt(kapex)/C;
  t= 1 - sqrt(kapex)*m;
    T=t*t';
fprintf('\n');
plot(n/1e6,T,'r');
x=n/wm; x1=x'; y1=T;
dlmwrite('x.txt',x1,'delimiter',' ');
dlmwrite('y1.txt',y1,'delimiter',' ');
hold on


麻烦帮我看一下。谢谢了

论坛优秀回答者

中级

626 麦片

财富积分


5001500


0

主题

283

帖子

48

最佳答案
  • 关注者: 8
发表于 7 天前 | 显示全部楼层
n设为变量,不是具体数,所以使用plot和dlmwrite报错
若要修改plot错误,将plot(n/1e6,T,'r');换为fplotfplot(T);即可
至于保存数据,因为你要保存的是变量,所以无法保存

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 7 天前 | 显示全部楼层
20141303 发表于 2019-12-2 19:21
n设为变量,不是具体数,所以使用plot和dlmwrite报错
若要修改plot错误,将plot(n/1e6,T,'r');换为fplotfpl ...

但是改了之后还是错误啊,老哥,咋办:(

论坛优秀回答者

中级

626 麦片

财富积分


5001500


0

主题

283

帖子

48

最佳答案
  • 关注者: 8
发表于 7 天前 | 显示全部楼层 |此回复为最佳答案
将保存删去之后无报错呀
c=2.99792458e8;  hb=(6.626196*10^-34)/(2*pi);  k_b=1.380662*10^-23;   
M=10*10^-18;  T=4;  wc=7.82*10^9;  wl=wc;     wm=24*10^6;    Q=15*10^3;  rm=wm/Q;
kap=5.6*10^6;   kapex=4*10^6;
Pin=0.5*10^-9;
Ep=sqrt(Pin/(hb*wl));     
g=35;
detp=0;
syms n0
n0=double(solve(n0*( kap^2 + ( detp - 2*g^2*n0/wm )^2 ) -  kapex*Ep^2==0,n0));
A=n0==real(n0);
y=n0(A);
n0=y;
disp(n0);
syms n
Xs=2*g*n0/wm;
    A=2*g*wm/( wm^2 - n^2 - i*rm*n);
    B=detp - g*Xs - g*n0*A;
    C= kap + i*(B - n) - g^2*n0^2*A^2/( kap - i*(B + n) );
  m=sqrt(kapex)/C;
  t= 1 - sqrt(kapex)*m;
    T=t*t';
fprintf('\n');
fplot(T);
x=n/wm; x1=x'; y1=T;
微信图片_20191202193530.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表