- In “impulse(c2d(tf([1],[1 0 0]),1),10)”, the function is called with a time vector of 10 samples thus impulse is computed at these specific points.
- But in case of “impulse(c2d(tf([1],[1 0 0]),1))”, the function is called without a time vector, so MATLAB automatically determines the time vector based on system dynamics.
- So, when you specify 10 samples the time vector might not include a point at exactly t=1 so it might be interpolating between points, whereas MATLAB’s default time vector includes more points and might exactly capture the impulse response.
impulse(c2d(tf([1],[1 0 0]),1),10)与impulse(c2d(tf([1],[1 0 0]),1))的输出结果不同, 在t=1时候前者为0.5而后者为1?为什么?
2 ビュー (過去 30 日間)
古いコメントを表示
impulse(c2d(tf([1],[1 0 0]),1),10)与impulse(c2d(tf([1],[1 0 0]),1))的输出结果不同, 在t=1时候前者为0.5而后者为1?求各位大佬解答!
0 件のコメント
回答 (1 件)
Suraj Kumar
2024 年 8 月 6 日
Hi Qu Tianxiang,
From what I gather, you are trying to understand the reasoning behind the difference between the outputs of MATLAB commands “impulse(c2d(tf([1],[1 0 0]),1),10)” and “impulse(c2d(tf([1],[1 0 0]),1))” at t=1.
Let us understand the working of both the functions in detail:
Refer to the output below for a better understanding:
For more details on the “impulse” function in MATLAB, you can refer to the documentation below:
Hope this is helpful!
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Big Data Processing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!