matlab对于一个区间的 *** 作

matlab对于一个区间的 *** 作,第1张

%修改过答案,这个是调试过的。

n = 9

mySpace = 0.5%每个穗没启区域的增长系数

x1 = [0,1] % 第一个区域

xmax = (n-1)*mySpace + x1 %最后一个区域

x =x1(1):0.1:xmax(2)%整个绘图区间

yTotal = zeros(size(x))%用来存放线条叠加的数据

%绘图准备和设置,也可无视以下这一段

figure()

xlim([x(1),x(end)])

ylim([-2,2])

box('on')

hold('all')

%

for n = 1:n

xn = (n-1)*0.5+x1%每条线的计算区域

yn = f(x).*((x<xn(2)) &( x>xn(1)))%计算各条线的值

%画线,也可以直接察肆plot(xn,yn),可以自行对比不同

index = find(yn~=0)

plot(x(index),yn(index),'Color',rand(1,3))%采用机颜色画线

hold on %

yTotal = yTotal + yn%累加

pause(0.5)%可有可无

end

plot(x,yTotal)%画那猜如条累加的线

正态分布袜衫的pdf的定义区间就是-inf到+inf,不存在定区间上的正态分布.如果楼主想求[-1,1]的近似正态分布,可利用randn()生成方差为1的标准正态分布随机数,再乘以1/3,生成标准差为1/3的正态分布随机变量.根据3σ准则,abs(X)>1的概率会很小,再加上条件,一旦abs(X)>1,重新生成弊虚以下,直到生成的X在指租好燃定区间上.

matlab的区间是不能写在迅羡一起的,要用&或|将两个区间合为一个,所以把你的代码改为下亩如拍面的即可:

if 0.52<t&t<0.555

n=3,T_0=t/橡丛(2.16*n)

elseif 0.555<t&t<0.60

n=4,T_0=t/(2.16*n)

elseif 0.60<t&t<0.635

n=5,T_0=t/(2.16*n)

else disp('系统阶次大于5')

end

你可以试试,应该没啥问题了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8245776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存