我是靠谱客的博主 清新短靴,最近开发中收集的这篇文章主要介绍matlab画自定义函数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在这里插入图片描述
在这里插入图片描述

clc,clear
x = -3:0.1:3; 
s=size(x);
y=zeros(s(1),s(2));

for i=1:s(2)
y(i)=rect(x(i)/2);
end
plot(x,y)
ylim([min(y)-1 max(y)+1])

function  y = rect(x)
y=1.*(abs(x)<1/2)+1/2.*(abs(x)==1/2)+0.*~((abs(x)<1/2)|(abs(x)==1/2));
end

在这里插入图片描述

clc,clear
x = -9:0.1:3; 
s=size(x);
y=zeros(s(1),s(2));

for i=1:s(2)
y(i)=tri((x(i)+2)/2);
end
plot(x,y)
ylim([min(y)-1 max(y)+1])

function  y = tri(x)
ax=abs(x);
y=(1-ax).*(ax<1)+0.*~(ax<1);
end

在这里插入图片描述

clc,clear
x = -10:0.1:10; 
y=exp(-3*pi*(x.^2));
plot(x,y)
ylim([min(y-1) max(y+1)])

在这里插入图片描述

clc,clear
x=-10:0.1:10;
s=size(x);
y=zeros(s(1),s(2));

for i=1:s(2)
y(i)=[comb(x(i)/4)*tri(x(i))]*rect(x(i)/12);
end

plot(x,y)
ylim([min(y)-1 max(y)+1])

function  y = comb(x)
syms n;
y=eval(int(dirac(x-n),n,-inf,inf));
end
function  y = tri(x)
ax=abs(x);
y=(1-ax).*(ax<1)+0.*~(ax<1);
end
function  y = rect(x)
y=1.*(abs(x)<1/2)+1/2.*(abs(x)==1/2)+0.*~((abs(x)<1/2)|(abs(x)==1/2));
end

在这里插入图片描述

clc,clear
t = -3:0.1:3; 
[x,y] = meshgrid(t);
s=size(x)
z=zeros(s(1),s(2));
for i=1:s(1)
    for j=1:s(2)
        z(i,j)= circ(x(i,j)-2,y(i,j))+circ(x(i,j)+2,y(i,j));
    end
end
mesh(x,y,z)

function z=circ(x,y)
z=1.*(sqrt(x^2+y^2)<1/2)+...
    (1/2).*(sqrt(x^2+y^2)==1/2)+...
    0.*~((sqrt(x^2+y^2)<1/2)|(sqrt(x^2+y^2)==1/2));
end

在这里插入图片描述

最后

以上就是清新短靴为你收集整理的matlab画自定义函数的全部内容,希望文章能够帮你解决matlab画自定义函数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部