代码优化
我们要创建一个函数 f(x)=sin(x/100) 其中x=0,1,2....M-1
function y=sinfun(M)
x=0:M-1
for k=1:numel(x) %numel(x)给出数组x的元素数
y(k)=sin(x(k)/(100*pi));
end
tic和toc用于测量函数执行的时间
>>tic;sinfun(100);toc 使用此方法重复调动会得到不同的结果。
timeit可用于可靠的,可重复时间测量 语法:s=timeit(f) f是被计时的函数句柄,单位是秒
>>M=100;
>>f=@() sinfun(M)
>>timeit(f)
例1.1 meshgrid介绍
基于如下公式创建合成图像 f(x,y)=Asin(ux+vy)
function f=twosin(A,u,v,M,N)
f=zeros(M,N);
for c=1:N
Vy=v*(c-1);
for r=1:M
Ux=u*(r-1);
f(r,c)=A*sin(Ux+Vy);
end
end
meshgird用法
function f=twosin(A,u,v,M,N)
r=0:M-1
c=0:N-1
[C,R]=meshgrid(c,r)
f=A*sin(Ur+Vc);