最简单直接的方法是把写好函数的目录添加到matlab的库目录中
点击matlab,home栏里面的set
path按钮,会跳出对话框。
点击
add
folder
添加目录
选择要添加的目录,加入即可。
添加成功后可以看到,即使没有在选择的目录内,所选目录依然处于激活状态。可以直接调用里面的函数。
function result=pe_simu(totalbits,snr_db,E,R)这行开始,到最后复制粘贴到一个新的m文件中。保存后,把其前面的代码放在命令窗口运行,就可以。
你复制以下代码到你的电脑里,然后按你的要求修改。
clear all,close all,clc,clf
t=0:1e9:10e9; %可以改
fn=length(t);
i=1;
while i<=fn
T=2175e-12;
t0=t(i);
H1=cos(145015501550e-13t0t0/12+pi/2);
syms k;
n=100; %明确n次方值
f=exp(j2t(k-1)T);
H2=symsum(f,k,1,n);
H=H1H2;
fudu0=abs(sum(H));
fudu1=double(fudu0);
fudu(i)=fudu1;
i=i+1;
end
fudu1=10log10(fudu/max(fudu));
plot(t,fudu1,'r-')
粘贴一段程序过去时,中间几行没有箭头很正常,只有第一行才有;至于为什么不知道;
不过不知你发现没有,当最后一行有有换行时,粘贴过去就直接运行;最后一行没有换行时,粘贴后需要敲一个回车才能运行;
建议大段的程序运行最好放在m文件中,而不是在命令行运行
新建一个m文件,file-》new-》m—file,将下面程序粘贴并保存为
wholeaves
然后运行即可。
function wholeaves
%求解从一到n个人围成一圈,顺序排号。
%从第一个人开始报数(从1到m报数),凡报到m的人退出 ,并且下一个从1重新开始报数,求出出圈人的顺序。
n=input('请输入人数n: ');
m=input('请输入间隔m: ');
d=0;%
count=0;
a=[1:n];
while d<n
for i=1:n
if a(i)>0
count=count+1;
end
if count==m,
a(i)
a(i)=0;
count=0;
d=d+1;
end
end
end
请采纳答案,支持我一下。
对于光学的东西不是太懂,能做到的只是帮助你更容易地理解程序每一句话,希望对你有帮助
最好将下面的程序复制粘贴到matlab的编辑窗口中再阅读
clear % 清除matlab工作内存
lam=500e-9; %定义一个常数λ: 500乘以10的-9次方
a=1e-3;D=1; %定义常数a:10的-3次方;常数D=1
ym=3lamD/a; %定义ym
ny=51; %定义取点个数 ny=51
ys=linspace(-ym,ym,ny); %定义一个数组ys,从-ym到ym之间取ny个点
np=51; %定义取点个数 np=51
yp=linspace(0,a,np); %定义一个数组yp,从0到a之间取np个点
for i=1:ny %循环语句,一共循环51次
sinphi=ys(i)/D; %计算得到 sinΦ,
alpha=2piypsinphi/lam; % 计算得到 α=2Δ/λ=πypys/λD(由于yp是一个向量,这里得到的α也是一个向量,包含51个数)
sumcos=sum(cos(alpha)); % 计算得到 Σcosα
sumsin=sum(sin(alpha)); % 计算得到 Σsinα
B(i,:)=(sumcos^2+sumsin^2)/np^2; % 计算得到光强 I=I0(Σcosα)2+(Σsinα)2,并存储为矩阵B的第i行
end
N=255;
Br=(B/max(B))N; %计算得到光强分布矩阵
subplot(1,2,1) %将绘图区分成左右两部分,首先在左侧绘图区绘图
image(ym,ys,Br); %绘制光强分布图
colormap(gray(N)); %更改图像模式为灰度图像
subplot(1,2,2) %然后选择在右侧绘图区绘图
plot(B,ys); %绘制光强分布曲线
以上就是关于怎样将将写好的m文件加到matlab库函数中全部的内容,包括:怎样将将写好的m文件加到matlab库函数中、matlab运行程序具体步骤 谢谢、用MATLAB仿真下图的公式,参数什么的我就不写了,直接粘贴我的程序,新手,求教等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)