用四4阶龙格库塔法 matlab,在matlab中画出下图两个函数的图像 步长为1,从1~100,给出具体m函数

《Matlab与工程计算》&&期末作业
《Matlab与工程计算》
姓名: &&&王琛&&
学号: &&&&&&&&&&&&&&&&&&&
系别: &&电子工程系&
&&&&&&&&&&&&&&&&&&
福利彩票双色球玩法为:投注区分为红球号码区和蓝球号码区,红球号码范围为01~33,蓝球号码范围为01~16。双色球每期从01-33个红球中开出6个号码,从01-16个蓝球中开出1个号码作为中奖号码;
a) 请编写一个函数文件,模拟上述彩票的开奖过程;函数返回开奖号码;调用该函数时,若不带任何输入参数,则开奖一次,若带一个大于或等于1的整数k,则返回k次开奖号码;
b) 开奖10次,统计红球号码区和蓝球号码区每个号码出现的次数。
解:fun_1.m模拟开奖过程,返回开奖号码;调用该函数时,若不带任何输入参数,则开奖一次,若带一个大于或等于1的整数k,则返回k次开奖号码;
wangchen1.m 调用fun_1.m并输入开奖次数为10,然后可以统计红球号码区和蓝球号码区每个号码出现的次数。
function wangchen1(k)
k=input('请输入开奖次数:');
%------不输入k或者k不是大于0的整数默认开奖一次------
k&0&&&&&&&&&&&&&&&&
Tc=fun_1(k);
Tc=fun_1(1);
fprintf('红球区各个号码出现的次数:\n')
for i=1:33
a(i)=length(find(Tc(:,1:6)==i));&&&&&
%统计红球号码 i 的出现次数 a(i)
fprintf(' 号码-出现%d次 ',i,a(i));%输出号码i
mod(i,8)==0&&&&&&&&&&&&&&&&&&
%每8组数据换行
fprintf('\n');
fprintf('\n蓝球区各个号码出现的次数:\n')
for i=1:16
b(i)=length(find(Tc(:,7)==i));&&&&&&&
%统计蓝球号码 i 的出现次数 b(i)
fprintf(' 号码-出现%d次 ',i,b(i));%输出号码i
mod(i,8)==0&&&&&&&&&&&&&&&&&&&
%每8组数据换行
fprintf('\n');
%%%%%%%%%---------------------------------------------------
function Tc=fun_1(k)
A=[1:1:33];&&&&&&&&&&&&&&&&&&
B=[1:1:16];&&&&&&&&&&&&
&&&&&&%蓝球
j=1:6&&&&&&&&&&&&&&&&&&&&
%从红球中随机开出6次
t=randperm(length(A));&&&&
%对1到length(A)的整数进行随机排序,作为数组A的下标
b=A(t);&&&&&&&&&&&&&&
%随机排序后的下标对应的A中的元素赋值给b
Tc(i,j)=b(1);&&&&&&&&&&
%选择b中的第一个元素作为从A中随机选取的数字
A(t(1))=[];
&&&&&&&&&&&%删除已选取的数字
t=randperm(length(B));&&&&&
%从蓝球中随机开出1次
Tc(i,7)=b(1);&&&&&&&&&&&&&&&&&
fprintf('开奖号码构成的矩阵');
Tc&&&&&&&&&&&&&&&&&&&&&&&&&&
%k次开奖号码构成的矩阵
运行结果:
<img WIDTH="550" HEIGHT="315" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
定义正整数(&1)的素数阶乘为不大于该整数的所有素数的乘积。试编写一个函数,该函数接受任意大于1的正整数输入,返回该正整数的素数阶乘的精确值。要求函数能接受任意维度和大小的数组(矩阵)输入,返回结果与输入数组(矩阵)具有同样的维度和大小。
解:运行程序wangchen2.m文件,可以对任意维度和大小的数组进行操作,使数组内的每一个元素对应的所有比其本身小的素数乘积所得结果构成一个新的数组。
out = wangchen2(M)
M=input('请输入数组M:');
size(M);&&&&&&&&&
%输入数组的维数
zeros(m,n);&&&&&&&&&
%初试零矩阵
M(i,j)&2&&&&&&
%如果含有小于2的元素则判定输入有误
&&&&&&&&&&&
disp('-------输入有误!请输入大于1的整数-----');
&&&&&&&&&&&
end&&&&&&&
prime = primes(M(i,j));%数组中任一元素的所有素数&&&&&
K = cumprod(prime,2);& %每一个元素的素数顺序相乘
size(K);&&&&&&&
%求数组k列的维数
out(i,j) =
K(y);&&&&&&
%最后一列是包含所有素数的累乘
运行结果:
当输入数组是M= [2 3 4; 5 6
7; 8 9 10]时,输出结果如下
<img WIDTH="303" HEIGHT="107" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
编写一个函数完成以下功能:将二维矩阵的最外层元素进行旋转。
如下面的红色元素为该矩阵(a)的最外层元素,逆时针旋转一个位置后,矩阵变为(b); 逆时针旋转两个位置后,矩阵变为(c);顺时针旋转一个位置后,矩阵变为(d);顺时针旋转一个位置后,矩阵变为(e);
<img WIDTH="196" HEIGHT="118" ALT="文本框: 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 (a) " V:SHAPES="_x"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="237" HEIGHT="118" ALT="文本框: 2 3 13 8 16 11 10 12 5 7 6 1 9 4 14 15 (b) " V:SHAPES="_x"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="208" HEIGHT="118" ALT="文本框: 3 13 8 12 2 11 10 1 16 7 6 15 5 9 4 14 (c) " V:SHAPES="_x"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="223" HEIGHT="118" ALT="文本框: 5 16 2 3 9 11 10 13 4 7 6 8 14 15 1 12 (d) " V:SHAPES="_x"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="196" HEIGHT="118" ALT="文本框: 9 5 16 2 4 11 10 3 14 7 6 13 15 1 12 8 (e) " V:SHAPES="_x"
TITLE="《Matlab与工程计算》&&期末作业" />
要求函数的输入参数为一个二维矩阵M和整数k,函数返回将矩阵M的最外层元素旋转k个位置后的矩阵;k为正时表示逆时针旋转,k为负时表示顺时针旋转,k=0表示不旋转;要求k的默认值为1。
解:调用程序wangchen3.m,对于输入的任一个二维矩阵M和旋转系数k,均可以满足题目中要求。
function B=wangchen3(M,k)
M=input('输入二维数组M:')
k=input('输入旋转系数k:')
length(size(M))~=2&&&&&&&&&
%判断是否二维矩阵
error('此矩阵不是二维矩阵');
nargin==1&&&&&&&&&&&&&&&&&&&
%不带参数k时,默认为1
[m,n]=size(M);&&&&&&&&&&&&&&&&
%把外围元素变成一个一维矩阵u
t1=M(1,:);&&&&&&&&&&&&&&&&&&&&&
t2=M(2:m-1,n)';&&&&&&&&&&&&&&&
%矩阵右侧,不包含首尾行
t3=M(m,n:-1:1);&&&&&&&&&&&&&&&
t4=M(m-1:-1:2,1)';&&&&&&&&&&&
%矩阵左侧,不包含首尾行
u=[t1,t2,t3,t4];
i=1:length(u)&&&&&&&&&&&&
abs(k)&length(u)&&&&&&
k=mod(k,length(u));&&
%矩阵以k为参数旋转,k大于外围元素个数时求余
k&0&(i-k)&=0&&&&&&&&&&&
%矩阵外层元素逆时针旋转
y(i-k+length(u))=u(i);
elseif k&0&(i-k)&0
&&&&&&y(i-k)=u(i);
elseif k&0&(i-k)&length(u) %矩阵外层元素顺时针旋转
y(i-k-length(u))=u(i);
elseif k&0&(i-k)&=length(u)
y(i-k)=y(i);
Z=M;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
%矩阵y的元素赋给外围矩阵
Z(1,:)=y(1:n);&&&&&&&&&&&
Z(2:m-1,n)=y(n+1:n+m-2)';
Z(m,n:-1:1)=y(n+m-1:2*n+m-2);
Z(m-1:-1:2,1)=y(2*n+m-1:length(u))';
运行程序:当输入二维数组M= [1 2 3
; 4 5 6; 7 8 9]和k=2时,数组外围元素逆时针旋转两次。
<img WIDTH="317" HEIGHT="321" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
用fft函数编程求如图所示方波的傅立叶级数展开系数,绘制功率谱图,
并舍去高次谐波成分,重构原来的方波,用图形观察重构效果.
<img WIDTH="488" HEIGHT="283" V:SHAPES="_x _x _x _x _x _x _x _x _x _x _x _x _x _x _x _x _x _x _x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
解:调用程序wangchen4.m,首先构造图示方波信号,其次是绘制功率谱图,最后是舍去高次谐波,重构原来的方波。
wangchen4(K)
K=input('请输入重构谐波次数K:');
tol=0.001;
t=[0:tol:10-tol];
N=length(t);
y=0.5*square(w*t)+0.5;%方波信号
fx=fftshift(abs(fft(y,N).^2)/N/N);%功率谱,并令关于中心对称
f=(0:length(fx)-1)*N/length(fx);&
1:2:K&&&&&&&&&&&
%K次谐波重构原信号
s + sin(w*t*n)/n;
(2/pi)*s+0.5;
subplot(311);
plot(t,y,'r')
title('方波信号');&&&&&&&&
%绘制方波信号
subplot(312);
plot(f,fx,'r');&&&&&&&&&&&&
%绘制功率谱图
title('功率谱图');
subplot(313);
plot(t,y1,'r');&&&&&&&&&&&&
%K次谐波重构原信号
title([num2str(K) '次谐波重构']);
运行程序:输入重构谐波次数
<img WIDTH="233" HEIGHT="39" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="404" HEIGHT="302" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
计算下列积分:
多峰函数在平面多边形区域内的积分,该多边形的顶点为
(可能用到的函数:
inpolygon)
解:调用程序wangchen5_1.m文件,多峰函数peaks在多边形区域内积分
wangchen5_1
X1=[-1:0.01:1];
Y1=[-1:0.01:1];
[x1,y1]=meshgrid(X1,Y1);&&&&&&&
%定义二维区间
-0.8 -0.8 0.3 1];%多边形顶点坐标
0.9 -0.5 -0.8 0];
s=inpolygon(x1,y1,xv,yv);&
z1=s.*peaks(x1,y1);&&&&&&&&&&
%获得多边形区域
mesh(x1,y1,z1)&&&&&&&&&&&&&&&&
%绘制多边形区域的三维图
out1=trapz(Y1,trapz(X1,z1,2))&&&&
%计算积分值
运行结果:
out1 = 2.4945
多峰函数在x^2+(y/2)^2=1所描绘的平面曲线上的积分;
解:调用程序wangchen5_2.m文件,多峰函数peaks在x^2+(y/2)^2=1区域内积分
wangchen5_2
f2=inline('peaks(cos(t),2*sin(t)).*sqrt(sin(t).^2+4*cos(t).^2)');
%构建参数方程,化曲线积分为参数t积分
[out2,n]=quadl(f2,0,2*pi);
运行结果:
out2 = 8.8050
函数f(x,y,z)=x^2+y^2+z^2在多峰函数所表示的空间曲面上的积分,x和y的积分区间均为[-3
解:调用程序wangchen5_3.m文件,函数f(x,y,z)=x^2+y^2+z^2在多峰函数所表示的空间曲面上的积分
wangchen5_3
x3=[-1:0.1:1];
y3=[-1:0.1:1];
z3=[-1:0.1:1];
[X3,Y3,Z3]=meshgrid(x3,y3,z3);%剖分网格
Z3=peaks(X3,Y3);
f3=X3.^2+Y3.^2+Z3.^2;
out3=trapz(z3,trapz(y3,trapz(x3,f3,2)),3)
运行结果:
编写一个函数完成以下功能:输入一个正实数R和一个大于2的整数n,函数绘制半径为R的圆以及该圆的内接正n边形和外切正n边形,函数返回内接正n边形和外切正n边形间的面积S。例如
<img WIDTH="288" HEIGHT="214" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
解:调用程序wangchen6.m文件,通过手动输入任意大于0的圆的半径和任意大于2的整数多边形,均可以画出一个圆及其内接多边形和外切多边形,并且在图中显示两个多边形之间的面积。
[S] = wangchen6( R,n )
R=input('请输入圆的半径R:');&&&&
n=input('请输入正实数n:');
disp('n 输入有误,请重新输入!') %n&3不能构成多边形
t1=[0:2*pi/n:2*pi];&&&&&&
%用来画多边形
t2=[0:2*pi/1000:2*pi];&&&
%用来画近似圆形
r1=R/cos(a);&&&&&&&&&&&&&&
%外切多边形顶点距圆心长度
s1=(n*R*R*sin((2*pi)/n))/2; %内接多边形面积
s2=(n*r1*r1*sin((2*pi)/n))/2;%外切多边形面积
S=s2-s1;&&&&&&&&&&&&&&&&&&&&
%两多边形的面积差
x=r1*sin(t1);&&&&&&&&&&
%画外切多边形
y=r1*cos(t1);
plot(x,y,'b');
&&&&&&&&&&&&&&&
x=R*sin(t2);
y=R*cos(t2);
plot(x,y,'k');
x=R*sin(t1);&&&&&&&&&&
%画内接多边形
y=R*cos(t1);
plot(x,y,'r')
xlabel('x');ylabel('y');
title(['R=',num2str(R),';n=',num2str(n),';S=',num2str(S)]);
运行结果:
请输入圆的半径R:1
请输入正实数n:5
<img WIDTH="404" HEIGHT="302" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
两曲面在空间的交线通常为三维空间曲线,例如下图(b)是曲面z=sqrt(abs(sin(x))+y^2)和多峰函数(peaks)曲面的交线
<img WIDTH="288" HEIGHT="216" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="264" HEIGHT="198" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
&&&&&&&&&&&&&&
(a)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
请编程绘制(b)图曲线,要求曲线尽量光滑。提示:可能用到的函数:peaks,contourc,interp1等。
解:调用程序wangchen7.m文件,可以获得曲面z=sqrt(abs(sin(x))+y^2)和多峰函数(peaks)曲面的交线。
function wangchen7
[x, y] = meshgrid(-4:0.01:4); %生成网格采样点
z1 = sqrt(abs(sin(x)) + y.^2);%曲面1
z2 = peaks(x,
y);&&&&&&&&&&&&
%多峰函数曲面
z2;&&&&&&&&&&&&
C = contours(x, y, z,[0 0]);&
%计算曲线轮廓
xL = C(1, 2:end);
yL = C(2, 2:end);
zL = interp2(x, y, z1, xL,
yL);%二维插值
line(xL, yL, zL, 'Color',
'r');%画交线
xlabel('x');ylabel('y');zlabel('z');
运行结果:
<img WIDTH="404" HEIGHT="302" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
已知一元三阶微分方程
<img WIDTH="105" HEIGHT="24" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
,x为自变量,y为应变量。
若已知x=0时,应变量及其一阶、二阶导数的值均为1,求y在[-10,10]区间的值;(注求x&0时的y值,意味着由当前时刻预知未来,而求x&0时的y值,意味着由当前时刻反推或再现过去。)
解:本题中采用四阶、五阶龙格-库塔法ode45函数来计算,由于边界条件在x=0处,所以计算[-10.0]之间的值需要由0到-10反推过去。
function wangchen8_1
Hf8=set(Hf8,'color','g')
tDelt=0.05;T1=-10;T2=10; %变量的间隔和终值
ts1=[0:-tDelt:T1];
ts2=[0:tDelt:T2];
y0 = [1,1,2];&
[x,y] = ode45('fun8_1',ts1,y0);
subplot(211)
plot(x,y(:,1),'r+'); %y关于x的函数
title('y在[-10
0]上的值');
xlabel('x');
ylabel('y');
[x,y] = ode45('fun8_1',ts2,y0);
subplot(212)
plot(x,y(:,1),'r+');
title('y在[0
10]上的值');
xlabel('x');
ylabel('y');
%%%%%%%%%%%%%%%%%%%
function dy = fun8_1(x,y)
dy = zeros(3,1);
dy(1) = y(2);
dy(2) = y(3);
dy(3) = 2*y(3)+6*x*y(1);
运行结果:
<img WIDTH="404" HEIGHT="302" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
若已知x=0时,y=2;x=5时,y及其一阶导数均为零。求y在[0,5]区间的值。
解:本题是一个两点边值问题,利用两点边值问题求解器bvp4c函数。函数调用格式是:
bvp4c(odefun,bcfun,solinit,options,p1,p2...)
程序如下:
function wangchen8_2
solinit=bvpinit(linspace(0,5,6),[0;0;0]);
sol=bvp4c(@fun8_2_1,@fun8_2_2,solinit);
x=linspace(0,5);
y=deval_r(sol,x);
plot(x,y(1,:),'r');%y是x的函数
xlabel('x');
ylabel('y');
title('y在区间[0,5]上的值');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function odefun1=fun8_2_1(x,y);
odefun1=[y(2);y(3);2*y(3)+6*x*y(1)];%微分方程
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function bcfun1=fun8_2_2(ya,yb);
bcfun1=[ya(1)-2;yb(1);yb(2)]; %根据两点边值设置留数
运行结果:
<img WIDTH="404" HEIGHT="302" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
结合自己所学专业、课题方向或是自己所感兴趣的问题,编写一段实际工程或是自己所在专业案例的应用程序,程序要能运行成功,并能解决实际生活中的问题或是能解决专业问题。
解:对于解决电磁场边值问题,许多实际问题由于边界形状过于复杂,很难用解析法求解或者运算量很大以及结果不直观,很多时候采用数值解法来求得电磁场的边值问题。数值法的基本思想是将所要求的整个连续分布的场域空间的场转换为所求解的场域空间中各个离散点上的场的集合。
本题中采用有限差分法来求解电磁场问题,有限差分法的基本思想是将场域划分成网格,把求解场域内连续的场分布用求解网格节点上的离散的数值解来代替,一般情况下,只要将网格划分的足够细,所得结果就越精确。划分网格的方式很多,本题中采用正方形网格划分方法。
如图所示:屏蔽边长是40mm的正方形,微带贴片部分电势为1V,周围屏蔽电势为0V,贴片高是2mm,长度是10mm,贴片下面蓝色区域介质高20mm贴片上部分区域介电常数
<img WIDTH="21" HEIGHT="24" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
=1,贴片下部分区域介电常数
<img WIDTH="21" HEIGHT="24" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
=5,剖分网格数是80,即每一小网格的边长是0.5mm。
对正方形区域外的部分赋初值为屏蔽电势为0,贴片部分电势为1.按照下面简单迭代法的公式进行迭代。直到相邻两次迭代值之间的最大误差不超过允许范围时迭代终止,并将结果作为区域内各节点上的最终数值解。
<img WIDTH="412" HEIGHT="42" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
<img WIDTH="537" HEIGHT="303" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
l=40;&&&&&&&&&&&&&
&%正方形边长
h=2;&&&&&&&&&&&&&&&
b=10;&&&&&&&&&&&&&&
a=20;&&&&&&&&&&&&&&
%电介质高,即贴片下面介质的宽度
tol=1e-6;&&&&&&&&&&
&%精度要求
u0=1;&&&&&&&&&&&&&&
%微带电位值
num=80;&&&&&&&&&&&
%划分网格数
m=l/&&&&&&&&&&
&%小网格边长
ep_a=1;&&&&&&&&&&&&
%贴片上侧空气的相对介电常数
ep_b=5;&&&&&&&&&&&
&%贴片下侧电介质的相对介电常数
k=ep_b/ep_a;&&&&&&&
%电介质与空气相对介电常数之比
E(num+1,1:num+1)=zeros(1,num+1); %屏蔽上边界赋值
E(1,1:num+1)=zeros(1,num+1);&&&&
%屏蔽下边界赋值
E(2:num+1,num+1)=zeros(num,1);&&
%屏蔽右边界赋值
E((a/m):((a+h)/m+1),1:(b/m+1))= u0*ones((h/m+2),b/m+1);
%贴片电势赋值
A=zeros(num+1,num+1);&&&&&&&&&&
%初始化代换矩阵
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%以下是迭代过程
norm(E-A)&tol&&&&&&&&
i=((a+h)/m+2):num&&&
%贴片纵向上侧左边界 46到80个网格
E(i,1)=0.25*(0+E(i-1,1)+E(i+1,1)+2*E(i,2));
i=2:(a/m-1)&&&&&&&
&&&%贴片纵向下侧左边界 2到39个网格
E(i,1)=0.25*(0+E(i-1,1)+E(i+1,1)+2*E(i,2));
i=((h+a)/m+2):num&&&
%贴片以上纵向白色区域 46到80个网格
j=2:num&&&&&&&&&
%贴片以上横向白色区域2到80个网格
&&&&&&&&&&&
E(i,j)=0.25*(E(i-1,j)+E(i+1,j)+E(i,j+1)+E(i,j-1));
i=(a/m+1):((a+h)/m+1)& %贴片右侧区域纵向 41到45个网格
j=b/m+2:num&&&
&%贴片右侧区域横向22到80个网格
&&&&&&&&&&&
E(i,j)=0.25*(E(i-1,j)+E(i+1,j)+E(i,j+1)+E(i,j-1));
j=b/m+2:num&&&&&&&&
%贴片右侧区域与下侧区域的边界处第22到80个网格
E((a/m),j)=0.25*(2*E((a/m+1),j)/(1+k)+2*k*E((a/m-1),j)/(1+k)+E((a/m),j+1)+E((a/m),j-1));
i=2:(a/m-1)&&&&&&&&&&
%贴片下部分区域纵向第2到39个网格
j=2:num&&&&&&&&
&%贴片下部分区域横向第2到80个网格
&&&&&&&&&&&
E(i,j)=0.25*(E(i-1,j)+E(i+1,j)+E(i,j+1)+E(i,j-1));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[x,y]=meshgrid(linspace(1,num+1,num+1),linspace(1,num+1,num+1));%画等高线&&&&&&&&&&&&
contour(x,y,E,20);
gradient(E);&&&&&&&
%画电力线及表示电场方向大小的箭头
quiver(-px,-py,2);
<img WIDTH="505" HEIGHT="378" V:SHAPES="_x"
ALT="《Matlab与工程计算》&&期末作业"
TITLE="《Matlab与工程计算》&&期末作业" />
结论:图中箭头的疏密反应出电场的强弱,箭头越密集的区域其电场越强,反之越弱。在电场较强的区域内箭头的尺寸也相对较大;由图中等势线和颜色棒可以看出等势线间隔越小的区域,其电场较强,由图中的颜色分布可以看出不同区域内的颜色的差异与等势线和箭头的疏密一致变化。还可以看出在微带贴片的附近区域电场比较大,距离其较远处电场强度较小。
有限差分法通过对场域剖分网格计算区域内部的场强分布,程序和过程都比较清晰和简洁。所以说该方法是解决电磁场边值问题的一种有效的数值解法。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。四阶龙格-库塔法
four-order Range-Kuttle method
四阶龙格-库塔法
基于1个网页-
提出了用四元素四阶龙格-库塔法作为捷联惯导系统的姿态更新算法,并叙述了算法仿真程序。
Using four-order quaternion Runge-Kutta method to update attitude algorithm is presented, the corresponding simulation programs are described.
通过对磁介质磁化曲线采用数理统计方法拟合,找出拟合函数,然后运用四阶龙格-库塔法求解微分方程。
Symbolic-statistics method was used to find fitting function of magnetization curve, and then the Runge-Kutta method was used to resolve differential equation.
建立拉管风雨激振的单自由度模型,并使用Matlab软件编制基于四阶龙格-库塔法的拉管运动微分方程求解程序。
Setting up the SODF model of stay tube and using MATLAB software to write program for solving the differential equation of stay tube movement basing on fourth order Runge-Kutta method.
$firstVoiceSent
- 来自原声例句
请问您想要如何调整此模块?
感谢您的反馈,我们会尽快进行适当修改!
请问您想要如何调整此模块?
感谢您的反馈,我们会尽快进行适当修改!急!!求matlab 用二、三、四阶龙格-库塔法求解常微分方程 y'=-2xy,y(0)=1,0&#8810;x&# 取步长 h=最好是输出图形求matlab 用二、三、四阶龙格-库塔法求解常微分方程 y'=-2xy,y(0)=1,0&#8810;x&# 取步长 h=0.2
为您推荐:
扫描下载二维码计算方法上机作业――龙格库塔法_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
计算方法上机作业――龙格库塔法
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢数值分析上机作业1-1_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
数值分析上机作业1-1
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩6页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 一阶龙格库塔法 的文章

 

随机推荐