- 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 views (last 30 days)
Show older comments
impulse(c2d(tf([1],[1 0 0]),1),10)与impulse(c2d(tf([1],[1 0 0]),1))的输出结果不同, 在t=1时候前者为0.5而后者为1?求各位大佬解答!
0 Comments
Answers (1)
Suraj Kumar
on 6 Aug 2024
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 Comments
See Also
Categories
Find more on Big Data Processing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!