声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 4789|回复: 4

[编程技巧] 求助_关于三角波和方波的产生方法

[复制链接]
发表于 2007-6-8 23:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
初学Matlab,rt,今要用lsim(G,u t)命令求系统对输入u的响应,u若为三角波和方波,在令
t=[0:0.01:1]后,如何确定u的表达式,有没有通用的方法,即时间区段t变为[0:0.01:x](x为任意实数)后仍然要适用。谢谢了
回复
分享到:

使用道具 举报

发表于 2007-6-8 23:22 | 显示全部楼层
原帖由 yemulg 于 2007-6-8 23:17 发表
初学Matlab,rt,今要用lsim(G,u t)命令求系统对输入u的响应,u若为三角波和方波,在令
t=[0:0.01:1]后,如何确定u的表达式,有没有通用的方法,即时间区段t变为[0:0.01:x](x为任意实数)后仍然要适用。谢谢了


help gensig
 楼主| 发表于 2007-6-8 23:32 | 显示全部楼层
谢谢了,[u,t]=gensig('square',10,100,0.01);类似的命令可以产生方波,请问三角波有类似的命令吗?
发表于 2007-6-8 23:38 | 显示全部楼层
三角波:

  1. function x = triang(N,p)
  2. % generates a triangular waveform
  3. %
  4. % inputs :   - N : # of data samples
  5. %            - p : period
  6. %
  7. % output :   - x : signal

  8. K = ceil(N/(2*p-2));
  9. w = zeros(1,K*(2*p-2)+1);
  10. rp = linspace(-1,1,p);
  11. rn = linspace(1,-1,p);
  12. r = [rp rn(2:p)];
  13. for k = 1:K
  14. w(1+(k-1)*(2*p-2):1+k*(2*p-2)) = r;
  15. end
  16. x = w(1:N);
复制代码

[ 本帖最后由 eight 于 2007-6-8 23:47 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2007-6-9 13:28 | 显示全部楼层

回复 #4 eight 的帖子

很好的函数,谢谢了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-4-28 20:02 , Processed in 0.063522 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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