Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2009-04-25
年龄: 39
帖子: 2
声望力: 0 ![]() |
![]()
clear all
syms x0 x1 x2 x3 x4 y0 y1 y2 y3 y4 z0 z1 z2 z3 z4 t real; %定义符号变量 g1=0.8;w=15; delta=w/2/g1; R=0.5; for n=0:4 An = sqrt(delta*delta+4*(n+1+R*R*(n+2))); c=[sqrt((0.5*An+delta)/An) sqrt((n+1)/An/(0.5*An+delta)) R*sqrt((n+1)/An/(0.5*An+delta));sqrt((0.5*An-delta)/An) sqrt((n+1)/An/(0.5*An-delta)) R*sqrt((n+1)/An/(0.5*An-delta));0 -R*sqrt(1/(1+R*R)) sqrt(1/(1+R*R))]; E=[n*w+An/2 n*w-An/2 (n-0.5)*w]; ex='exp(-4)'; %考虑到精度把exp(-4)变为符号数 An1 = sqrt(delta*delta+4*(n+R*R*(n+1))); E1=[n*w+An1/2 n*w-An1/2 (n-0.5)*w]; c1=[sqrt((0.5*An1+delta)/An1) sqrt((n+1)/An1/(0.5*An1+delta)) R*sqrt((n+1)/An1/(0.5*An1+delta));sqrt((0.5*An1-delta)/An1) sqrt((n+1)/An1/(0.5*An1-delta)) R*sqrt((n+1)/An1/(0.5*An1-delta));0 -R*sqrt(1/(1+R*R)) sqrt(1/(1+R*R))]; G=zeros(3 ,3); %定义一个3×3的零矩阵 G=sym(G); %把G变为符号矩阵 U=zeros(1,3); %定义一个1×3的零矩阵 U=sym(U); %把U变为符号矩阵 F=0; for l=1:3 for j=1:3 Z(j,l)=(exp( 20*i*(t-E(j)+E1(l)))-ex)/( 0.2+ i*(t-E(j)+E1(l)) )/g1; for k=1:3 G(j,l)=G(j,l)+c(j,2)*c(j,k)*c1(l,k)*sqrt(n+k-1); end U(l)=U(l)+Z(j,l)*G(j,l); end F=F+conj(U(l))*U(l); end if (n==0) x0=t; y0=n; z0=0.4*g1*F; end if (n==1) x1=t; y1=n; z1=0.4*g1*F; end if (n==2) x2=t; y2=n; z2=0.4*g1*F; end if (n==3) x3=t; y3=n; z3=0.4*g1*F; end if (n==4) x4=t; y4=n; z4=0.4*g1*F; end end hold on; ezplot3(x0,y0,z0,[-10,10]); grid on; title('原子发射谱 |2>','FontSize',16); %legend('delta=0','None',1); axis([-10 10 0 5 0 15]); xlabel('X g1=0.8 '); ylabel('n R=0.5'); zlabel('Emission spectrum'); 我想在ezplot3(x0,y0,z0,[-10,10]); 的图形上继续画出ezplot3(x1,y1,z1,[-10,10]);ezplot3(x2,y2,z2,[-10,10]);等的图形, |
![]() |
![]() |