查看: 5019|回复: 6|关注: 0

[已解决] 如何产生一段周期振荡信号?

[复制链接]

新手

15 麦片

财富积分


050


14

主题

38

帖子

0

最佳答案
t=0:0.002:1
t1=0.2:0.002:0.3
t2=0.5:0.002:0.6
t3=0.8:0.002:0.9
x1=sin(2*pi*100*t1)


我的意思是在t1、t2、t3这三个时间段,Y=x1这个正弦函数,
在其余的时间段,Y=0,怎么进行这个编程啊?
希望诸位大大不吝赐教
回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

权威

4337 麦片

财富积分



3

主题

8872

帖子

987

最佳答案
QQ
  • 关注者: 298
发表于 2015-10-10 18:34:45 | 显示全部楼层

  1. t1=[0.2:0.002:0.3,0.5:0.002:0.6,0.8:0.002:0.9];
  2. x1=sin(2*pi*100*t1);
  3. x1 = [0:0.2,x1,0.9:1];
  4. plot(x1)
复制代码
回复此楼 已获打赏: 0 积分

举报

新手

15 麦片

财富积分


050


14

主题

38

帖子

0

最佳答案
 楼主| 发表于 2015-10-11 15:34:54 | 显示全部楼层

不对呀,这样的话 在0—0.2和0.9—1这两个时间段X1并不等于0啊
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

专家

2133 麦片

财富积分


20003000


6

主题

9403

帖子

452

最佳答案
QQ
  • 关注者: 371
发表于 2015-10-11 16:53:34 | 显示全部楼层
本帖最后由 OlaBaby 于 2015-10-11 17:12 编辑

动脑子是不会死人的,这种问题的难的是0,我无法理解你的思维是不是固化了
给你举点例
t1=0:0.002:0.2;
t2=0.2:0.002:0.3
d1=zeros(1,length(t1)-1);
d2=sin(2*pi*100*t2)
data=[d1,d2];
x=0:0.002:0.3;
plot(x,data)
将所有段的数据全部拼起来就可以了,你只要注意下,两段链接处的值,是属于那端就行了
untitled.jpg
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

入门

429 麦片

财富积分


50500


1

主题

1022

帖子

90

最佳答案
  • 关注者: 15
发表于 2015-10-11 17:07:38 | 显示全部楼层 |此回复为最佳答案
都是基础的东西 光论坛上就有N个分段函数的帖子了
  1. t = 0:0.002:1;
  2. t_index = (t>0.2&t<0.3)|(t>0.5&t<0.6)|(t>0.8&t<0.9);
  3. x = t_index.*sin(2*pi*100*t);
  4. plot(t,x);
复制代码
回复此楼 已获打赏: 0 积分

举报

新手

15 麦片

财富积分


050


14

主题

38

帖子

0

最佳答案
 楼主| 发表于 2015-10-12 10:04:22 | 显示全部楼层
zype1128 发表于 2015-10-11 17:07
都是基础的东西 光论坛上就有N个分段函数的帖子了

谢谢!我在论坛上搜索好好久 没有找到  可能是搜索的关键词不对  
基础确实比较差
回复此楼 已获打赏: 0 积分

举报

新手

15 麦片

财富积分


050


14

主题

38

帖子

0

最佳答案
 楼主| 发表于 2015-10-12 10:06:10 | 显示全部楼层
OlaBaby 发表于 2015-10-11 16:53
动脑子是不会死人的,这种问题的难的是0,我无法理解你的思维是不是固化了
给你举点例
t1=0:0.002:0.2;

我之前采用的就是  将所有段都拼接起来的笨方法
不过我想找到一种编程  可以不用拼接的方法才在论坛上提问的
还是感谢您的耐心解答!:handshake
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /5 下一条

快速回复 返回顶部 返回列表