1、MATLAB数学建模6常用计算方法常用计算方法1超越方程的求解一超越方程为x(2lnx 3) -100 = 0求超越方程的解。算法方法一:用迭代算法。将方程改为其中x0是一个初始值,由此计算终值x。取最大误差为e = 10-4,当| x - x0| e时,就用x的值换成x0的值,重新进行计算;否则| x - x0| 1000,break,end %如果项数太多则退出循环 if abs(x0-x) 0),相距为2a,画出电场线和等势线。解析如B5图所示,等量异号点电荷在场点P(x,y)产生的电势为 (1)其中,k为静电力常量,r1和r2是场点P到电荷的距离, (2)电场强度可根据电势梯度计算E
2、= -U (3)其中,劈形算符为 (4)在xy平面上,场强只有两个分量, (5)两个点电荷在P点产生的电场强度的大小分别为, (6)场强的两个分量也能根据公式计算 (7a) (7b)算法取a为坐标单位,则电势可表示为 (1*)其中,U0 = kQ/a。U0是Q在原点产生的电势,作为电势的单位。r1*和r2*是约化距离, (2*)其中,x* = x/a,y* = y/a。x*和y*是无量纲的坐标或约化坐标。场强的x分量用梯度可表示为即 (5a*)其中,E0 = U0/a,U* = U/U0。E0是场强的单位,U*是无量纲的电势。同理可得 (5b*)两个点电荷的电场强度的两个分量用公式可表示为,
3、(7*)将物理量无量纲化之后,只要作纯数值计算就行了。MATLAB的梯度函数gradient可直接计算场强的数值分量,场强的数值解和解析解可相互比较。等势线可根据等值线指令contour绘制,电场线可根据流线指令streamline绘制。程序P0_24gradient.m如下。%等量异号点电荷的电场线和等势线(请在“创建图形窗口”处设置断点,以观察画图过程)clear %清除变量xm=2.5; %横坐标范围ym=2; %纵坐标范围x=linspace(-xm,xm,400); %横坐标向量y=linspace(-ym,ym,400); %纵坐标向量X,Y=meshgrid(x,y); %坐标网
4、点(矩阵)R1=sqrt(X+1).2+Y.2); %左边第一个正电荷到场点的距离R2=sqrt(X-1).2+Y.2); %右边第二个负电荷到场点的距离U=1./R1-1./R2; %计算电势u=-4:0.5:4; %等势线的电势向量figure %创建图形窗口C=contour(X,Y,U,u,LineWidth,2); %画等势线并取等势线的坐标clabel(C,FontSize,16) %标记等势线的值grid on %加网格hold on %保持图像plot(-xm;xm,0;0,0;0,-ym;ym) %画水平和竖直线plot(-1,0,o,1,0,o,MarkerSize,12)
5、 %画电荷 Ex,Ey=gradient(-U,x(2)-x(1),y(2)-y(1);%用电势梯度求场强的两个分量%Ex,Ey=gradient(-U); %用电势梯度求场强的两个分量dth=20; %电场线角度间隔th=(dth:dth:360-dth)*pi/180; %电场线的起始角度r0=0.1; %电场线起点半径x0=r0*cos(th); %电场线的起点横坐标y0=r0*sin(th); %电场线的起点纵坐标streamline(X,Y,Ex,Ey,x0-1,y0) %画左边电场线(中间部分达到右边)streamline(X,Y,-Ex,-Ey,x0+1,y0) %画右边电场线(
6、中间部分达到左边)axis equal tight %使坐标间隔相等title(等量异号点电荷的电场线和等势线,FontSize,20)%显示标题xlabel(itx/a,FontSize,16) %显示横坐标ylabel(ity/a,FontSize,16) %显示纵坐标text(-xm,ym-0.5,电势单位:itkQ/a,FontSize,16)%显示电势单位Ex=(X+1)./R1.3-(X-1)./R2.3; %用公式求场强的x分量Ey=Y./R1.3-Y./R2.3; %用公式求场强的y分量streamline(X,Y,Ex,Ey,x0-1,y0) %重画左边电场线(曲线重合)streamline(X,Y,-Ex,-Ey,x0+1,y0) %重画右上电场线(曲线重合)图示如P0_24图所示,左边表示正电荷,右边表示负电荷,等量异号点电荷的电场线和等势线关于原点是对称分布的。电场线从正电荷出发,终止于负电荷。电场线与等势线垂直,任何两条电场线都不相交。除了电势为零的直线外,等势线分别包围着各自的电荷。电场强度大的地方,电场线较密,等势线也较密。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1