matlab画自定义函数

该博客展示了MATLAB中几种基本图形的绘制,包括矩形函数rect、三角形函数tri、指数函数exp以及组合函数comb的实现。通过循环和函数调用来生成图形,并使用meshgrid创建了二维圆的图形。每个函数都详细定义了其行为,如矩形函数在边界处的处理,三角形函数的定义,以及组合函数comb中comb函数的符号积分计算。最后,还展示了一个使用circ函数创建的二维圆形分布的图形。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值