- 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?为什么?
21 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
impulse(c2d(tf([1],[1 0 0]),1),10)与impulse(c2d(tf([1],[1 0 0]),1))的输出结果不同, 在t=1时候前者为0.5而后者为1?求各位大佬解答!
0 Commenti
Risposte (1)
Suraj Kumar
il 6 Ago 2024 alle 4:52
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 Commenti
Vedere anche
Categorie
Scopri di più su 多采样率信号处理 in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!