以下为《四个实验含答案》的无排版文字预览,完整内容请下载
1.电量q均匀分布在半径为a的圆环上,求环心处的电场强度及均匀带电圆环轴线上的电场强度;若同样的电量均匀分布在半径为a的圆盘上,求均匀带电圆盘轴线上的电场强度。(提示:可先用解析法分析,再利用数值法进行编程实现)
k=9*10^9;a=1;?q=1;z=0:0.1:3;r=sqrt(a^2+z.^2);costheta=z./sqrt(a^2+z.^2);Ez=k*q*costheta./(r.^2);plot(z,Ez)
xlabel('z/a')
ylabel('Ez/q')
/
k=9*10^9;
q=1;a=1;
z=0:0.01:1;
l=length(z);
syms r;
sigma=q/(pi*a*a);
costheta=z./sqrt(r^2+z.^2);
dq=2*pi*r*sigma;
fz=ones(1,l);
dEz=k.*dq.*costheta./(r.^2)
fz1=fz(z);
plot(z,Ez)
xlabel('z/a')
ylabel('Ez/q')
2. 设两个同轴矩形金属槽如图所示,外金属槽电位为零,内金属槽电位为,金属槽尺寸为a=12 cm,b=8 cm,a1=4 cm,a2=8 cm,b1=2 cm,b2=6 cm,请利用有限差分法中的简单迭代法和超松弛迭代法求矩形槽内的电位和电场线的分布。(精确到小数点后两位)
opt=3
l1=8*opt;
l2=12*opt;
U1=zeros(l1,l2);
for i=3/8*l1-1:6/8*l1+1
for j=5/12*l2-1:8/12*l2+1
U1(i,j)=50;
end
end
err=1;
U2=U1;
k=0;
while (err>0.1&&k0.5*pi
dt=-dt;
end %设置入射光变化的范围
t=t+dt;
A=t;
Xi=0.4*tan(A);
set(Hi,'xdata',[Xi,0]); %入射光发生改变
Ao=asin(sin(A)/n);
Xo=Xi+tan(Ao);
set(Ho,'xdata',[Xi,Xo]); %绘制最后折射光
Xr=Xi+tan(A);
set(Hr,'xdata',[Xi,Xr]); %绘制最后反射光
set(HL,'Facecolor',rand(1,3))
end
figure(gcf); %显示图形窗口/ /
function ZHEFAN; % 光的折射 光的反射
set(gcf,'doublebuffer','on'); %设置图片属性,双缓存防止图闪烁
axis([-2,2,-1,1]);hold on; %设置坐标轴范围(x轴-2到2,y轴-1到1)
rectangle('Position',[-2,-1,4,1],...
'FaceColor',[0.86,0.86,0.86]); %给图形下半部分设置成水的颜色
text(1.4,0.4,'air1','color','r','fontsize',14)
text(1.4,-0.4,'air2','color','r','fontsize',14) %注明空气和水,并且设置字体
n=2;t=0; %设置折射率
text(0.7,-0.6,['n= ',num2str(n)],'fontsize',14); %在图形上标明折射率
HL=rectangle('Position',[-0.02,0.4,0.04,0.2],...
'FaceColor',[ 0.3,0.8,0.4]); %在图形上画出光源
Hi=plot([0,0],[0,0.4],'b'); %设置入射光
Ho=plot([0,0],[0,-1]); %设置折射光
Hr=plot([0,0],[0,1],'r'); %设置反射光
xlabel('请按空格停止','fontsize',14,'color','r'); % 设置结束提示
tti=text(-1.5,0.8,['\thetai=0'])
ttr=text(-1.5,0.7,['\thetar=0'])
tto=text(-1.5,0.6,['\thetao=0'])
ttV_r=text(-1.5,0.5,['V:Rf=-0.33'])
ttP_r=text(-1.5,0.4,['V:Rf=0.33'])
ttV_o=text(-1.5,0.3,['P:Ro=0.66'])
ttP_o=text(-1.5,0.2,['V:Ro=0.66'])
k=1;
dt=0.1; %初始化k方便循环,设置入射光变化量
while k %循环体
pause(0.5); % 设置每次图形变换间隔为0.5秒
s=get(gcf,'currentkey');
if strcmp(s,'space');
clc;k=0;
end %输入空格终止演示,是图形停止
if abs(t)>0.5*pi
dt=-dt;
end %设置入射光变化的范围
t=t+dt;
set(tti,'string',['\thetar=',num2str(t)])
%A=t;
set(ttr,'string',['\thetar=',num2str(t)])
Xi=0.4*tan(t);
set(Hi,'xdata',[Xi,0]); %入射光发生改变
Ao=asin(sin(t)/n);
set(tto,'string',['\thetar=',num2str(Ao)])
Xo=Xi+tan(Ao);
set(Ho,'xdata',[Xi,Xo]); %绘制最后折射光
Xr=Xi+tan(t);
set(Hr,'xdata',[Xi,Xr]); %绘制最后反射光
set(HL,'Facecolor',rand(1,3))
V_ratior=(cos(t)-2*cos(Ao))/(cos(t)+2*cos(Ao))
P_ratior=(2*cos(t)-cos(Ao))/(2*cos(t)+cos(Ao))
V_ratioo=2*cos(t)/(cos(t)+2*cos(Ao))
P_ratioo=2*cos(t)/(2*cos(t)+cos(Ao))
set(ttV_r,'string',['V:Rf=',num2str(V_ratior)])
set(ttP_r,'string',['P:Rf=',num2str(P_ratior)])
set(ttV_o,'string',['V:Ro=',num2str(V_ratioo)])
set(ttP_o,'string',['P:Ro=',num2str(P_ratioo)])
end
figure(gcf); %显示图形窗口
练习题部分
考查方式:给出理论依据、设计思路、程序代码和最后结果
function U1 = project7jiandan%函数名称和输出
U1=zeros(8, 12); %建立一个0矩阵
for i=3:6,
for j=5:8,
U1(i, j)=100 %给出边界条件
end
end
U2=U1;maxt=1;k=0;
while( (maxt 1000)
%达到精度要求跳出循环,限制迭代次数,防止死循环次数为1000
k=k+1;
maxt=0;
for i=2:7,
for j=2:11,
U2(i, j)=U1 (i, j)+(U1(i, j+1)+U1 (i+1, j)+U2(i-1, j) +U2(i, j-1)-4*U1(i, j))/4;
%用超松弛迭代法进行迭代计算
t=abs (U2(i, j)-U1(i, j);
if(t>maxt) maxt=t;
end
end
end
for a=3:6,
for b=5:8,
U2(a, b)=100 %约束条件
end
end
U1=U2;
end
end
6.2简单迭代法的运行M文件
即运行上述函数后画出电位图与电场线
project7no1. m
U1 = project7jiandan;
subplot(1, 2, 1), mesh(U1) ;
y=1:1:8;
x=1:1:12;
[dx, dy]=gradient(-U1) ;
subplot (1, 2, 2), streamslice(x, y, dx,dy) ;
project7chao.m
function U1 = project7chao( w )%有限差分法计算电位
U1-zeros(8,12); %建立- -个矩阵
for i=3:6,
for. j=5:8,
U1(iJj)=100 %边界条件
end
end
U2=U1;maxt=l;k=0;
while(-(maxt 1000))
%达到精度要求跳出循环,限制迭代次数,防止死循环,次数为1000
k=k+1;
maxt=0;
for i=2:7,
for j=2:11,
U2(j)=Ul(ij)+w*(U1(j+1)+Ul(i+1j)+U2(-1j)+U2(j-1)-4*U1(j))/4;
%用超松弛迭代法进行迭代计算
t=abs(U2(j)-U1(J));
if(t>maxt) maxt=t;
end
end
end
for a=3:6, .
for b=5:8,
U2(a,b)=100
end
U1=U2;
end
end
project7no2.m
U1 -proijct7chao(1.5);
subplot(1,2,1),mesh(Ul);
y-1:1:8;
x=l:l:12;
[dx,dy]-gradien(-UI);
subplot(1,2,2), ,streamslice(x,y,dx,dy);
(3).我们首先假设光从空气进入水中,此时n=1.5。用一次函数图像来表示光的传播路线,通
过改变光的入射点来改变光的入射角和入射方向,并根据反射光、折射光与入射光的斜率关
系来控制反射角、折射角与入射角关系,设计程序如下:
(3).我们首先假设光从空气进入水中,此时n=1.5。用一次函数图像来表示光的传播路线,通过改变光 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 光变化的范围
t=t+dt;
A=t;
Xi=0.4*tan(A);
set(Hi,'xdata',[Xi,0]); %入射光发生改变
Ao=asin(sin(A)/n);
Xo=Xi+tan(Ao);
set(Ho,'xdata',[Xi,Xo]); %绘制最后折射光
Xr=Xi+tan(A);
set(Hr,'xdata',[Xi,Xr]); %绘制最后反射光
set(HL,'Facecolor',rand(1,3))
end
figure(gcf); %显示图形窗口
运行程序,得到运动的图形,即入射角改变,折射光和反射光的变化。得到截图如下:
//
[文章尾部最后500字内容到此结束,中间部分内容请查看底下的图片预览]
以上为《四个实验含答案》的无排版文字预览,完整内容请下载
四个实验含答案由用户“xiaoggg”分享发布,转载请注明出处