If you want to play around with the DTFT MATLAB App from this video, you can find it here: github.com/aerojunkie/control-tools/tree/master/DTFT%20MATLAB%20App
If i were given an opportunity to add as many likes as possible, it would top the list of mine. Watched many videos but this one is straight to the point. Thank you so much to the makers of this video.
This was truly amazing! This guy has MIT level brainpower. Like woah, his ability to explain and efficiently articulate this stuff is unreal. This channel will be my saving grace in dsp for sure! Already subscribed too. He's a legend for sure!
I learned about DFT and z-transform many years ago, but it wasn't until I watched this video that I truly understood what the 'e' and 'z' in these two transformations actually do.
I thought so too at first, but for the Laplace Transformation it's F(s) = Integral( 0, +inf, f(t)*e^-s) Where s = gamma + i*omega, because the expanded Integral definition is Integral from 0 to infinity of f(t) * e^(-i*omega) * e^(-gamma). The Laplace Transform adds a real part to the complex term s, to sweep through exponentials, whereas the Z-Transform, adds another imaginary part. For me it looks like it adds the amplitude of the sinusoids (r*e(-i*omega*x), instead of adding exponentials
I've googled it, and it seems like it is in fact the discrete version of the Laplace Transformation, but to make it happen the added part has to be this way, dont know why at this point
Your explanations and teachings are awesome. This opens my eyes to so many things, and in just 1 video!. Brain, you have been blessed with an amazing gift. Thank you for sharing this with us.
I've been able to solve a Fourier Transform in analytical form back at uni, without understanding what it was for. I've been able to implement a Discrete Fourier Transform algorithm in code to do simple frequency analysis of a signal, without understanding why the algorithm was the way it is. With your explanation, I think I finally get the "why" of the Discrete Fourier Transform, the way it uses correlation. Thanks for this explanation; I feel like one more thing is clicking into place.
Hi Brian, thanks for great explanation. At your DTFT demo 10:10, your input data signal clearly has magnitude of 1, so you choose the probing signals also have magnitude of 1 so it fits perfectly in your "dot product". If the input data signal is a combination of many frequencies with different magnitudes, it seems that we still keep the magnitude of probing signals (sine and cosine) as 1. I wonder why that still works? Shouldn't we adjust magnitude of probing signals according to the input signal?
I think I understand your question, but I might be off a bit. Let me give it a try. If a particular frequency in the input signal had an amplitude that wasn't 1 there would still be correlation between it and the probing signal with an amplitude of 1. Since we're multiplying the two signals, having a larger amplitude in one is just like multiplying the product of the two signals by a gain. So that frequency would have a larger value in the lower plot. Which is exactly what you want because you want to see "how much" of each frequency there is in the original signal. For example, if the signal is 5*sin(t) and the probing signal is sin(t), then the product of the two is 5*sin^2(t) and so the summation would be 5 times larger. Was that your question and did my answer make sense?
This is how I see it, lets assume the input signal is a sum of many sinusoidal signals like x1.sin(w1.t) + x2.sin(w2.t) + x3.sin(w3.t) + .... When you have infinite data point, you can prove mathematically that with each probing signal, ONLY the exact probing signal that have the same frequency as one of the input's frequency components would have a NON-ZERO dot product (you can intuitively understand the reason why this happen by taking the integration of the product of two sinusoidal signals with different frequencies, the value would be 0), so the value of x1, x2, x3 or any amplitude of the input's frequency component is not that important (except when you need to know the amplitude of the component frequency) since the output plot would only have pulses at those exact frequencies (when you have infinite data point).
Brian is amazing! This video is extremely clear :) One note on time delay [n-1] implying z^-1, it wasn't clear to me at first how the first example with a pulse function translated to all general cases, but it later occured to me that y^0, which in a delayed sequence matched z^-1, and every term afterward matches the original function, so hence it is the case for the general case. Such that time delay [n-2] does not imply z^-2, and so on. If I have understood correctly.
We know that we can use FT on account of e^{i /omega n} forming an orthogonal basis for all n. I'm wondering, since z^{-n} spans all complex exponentials (assuming no limit like n>0), if there are any non-zero inner products between differently-based exponential functions. I mean, just by definition you're sweeping over scalar multiples of a basis, making all elements (r e^{i /omega})^{-n} LD on (e^{i /omega})^{-n}, right?
I wonder why at 10:11, we did not make the cosine wave an imaginary signal. why choose the sine wave over the cosine wave? what would be the result if we just made the cosine wave imaginary?
Hi Brian, since I am studying how to develop MATLAB apps, would it be possible for you to share the app that you have used during the discussion on the DTFT? Thanks
@@BrianBDouglas Thank you so much for the feedback. Very much appreciated you asking! Yes! I do have questions that, if possible, I'd love to see them answers. 1) Can you give a couple more examples of how to go from the zero+poles representation to the filter equation? 2) Can you explain butter filters design and their relation to the Z-transform? What does the butter function does? 3) Can you explain `sos` for filter design? Why `sos` is more stable than the `butter` function in some cases? These are some topics I came across when first watching this video. I would find very helpful to have them addressed, but if you consider a bit out of scope for the next video you're planning that is fine. I looking forward to it anyways, your videos are great and I've learned a lot! Thank you for all the effort and quality put into them!
I'm almost done with it! I had to change what I'm going to cover in it because I found a video by Youngmoo Kim that covers pretty much what I wanted to and it's brilliantly done. I'm going to call it out in my video and cover a few different things now. I'd put the link but my comment will be removed but search TH-cam for "Applied DSP No. 9: The z-Domain and Parametric Filter Design"
Yes, that's right. This is why you have to see what is the application for which you are going to choose certain transform. For instance, z-transform is used in digital filter design, whereas the Laplace transform is mainly used in applications such as AC circuit analysis, and so on.
I am wondering why Mathworks took so long time to make such videos? We are in 2023 and version 2023 has been released. These control methods were introduced and had been modified since version 2006 .
Thank you very much Brian. I love you man (I'm not gay 😂). I have a master degree in CS and system control but I never really understood system control and that's why when I have free time I enjoy watching your videos. software engineering sucks, I spend my day refactoring complex, buggy programs written by idiots and unconscious people. I'd like to do something more meaningful and intellectually stimulating like systems controls. Unfortunately, I wasn't taught the latter and maths very well, and thanks to some books and youtube videos, I'm in the process of fixing that. I have a question : Why don't we use exponential functions based on 'e' to scan/probe the sampled signal ? Is it because the signal is sampled and it doesn't make sense to use a function that expresses continuous growth/decay ? after all we can pose r = e^something.
This subject (like many others) is so complex that a single video is not enough to explain it in depth. You need to watch several videos by different people to improve your understanding of the subject.
If you want to play around with the DTFT MATLAB App from this video, you can find it here: github.com/aerojunkie/control-tools/tree/master/DTFT%20MATLAB%20App
Thanks Brian
How you design those matlab app? How can i learn this? any tutorial video?
In university, we were taught how to do the DFT and Z-transform, but never taught why. And this video explains them in crystal clear. Great Job!
Thanks for the feedback!
OMG! I've been waiting for the series of discrete-time control for nearly 5 years!
Hopefully, it's worth the wait!
@@BrianBDouglashow did you get such a perfect understanding for all this?
I was blown away by the clearness of the explanation! Looking forward to more!
This is by far the best video about the dtft and z transform i've ever seen. Very good and very detailed explanation.
Brian is basically my mentor at this point
🤓 aww thanks!
@@BrianBDouglas You responding has literally made my day. Thank you for your awesome videos!
Is there a list of the Matlab videos made by Brian?
Hi @martinsanchez-hw4fi, You can find all of our Tech Talks on this page: bit.ly/MATLAB-Tech-Talks
If i were given an opportunity to add as many likes as possible, it would top the list of mine. Watched many videos but this one is straight to the point. Thank you so much to the makers of this video.
I'm glad you found it helpful! Brian Douglas makes excellent videos. Look for his other videos in this channel.
The input signal at @ 1:31 is delta[n] and not u[n].
Amazing explanation. Thanks so much for explaining things in a more intuitive way.
This was truly amazing! This guy has MIT level brainpower. Like woah, his ability to explain and efficiently articulate this stuff is unreal. This channel will be my saving grace in dsp for sure! Already subscribed too. He's a legend for sure!
🤓 haha thanks so much!
Or MIT has Brian Douglas’ level brainpower? 😊
bless my soul that i landed on this video. the use of complex domain in dft was a "magic" for me. today i stand near to the oz who does the "magic"
One of the best introductions I have ever watched
I learned about DFT and z-transform many years ago, but it wasn't until I watched this video that I truly understood what the 'e' and 'z' in these two transformations actually do.
Excelllent explanation! It is the first time someone made the DFT's relation to finite length input clear to me! Thankyou!!!
been watching ur vids since 2014
ty so much for this ,brian
Correct me if I'm wrong, but based on how you've explained it, the z transform is just a discrete version of the Laplace transform?
I thought so too at first, but for the Laplace Transformation it's F(s) = Integral( 0, +inf, f(t)*e^-s)
Where s = gamma + i*omega, because the expanded Integral definition is Integral from 0 to infinity of f(t) * e^(-i*omega) * e^(-gamma).
The Laplace Transform adds a real part to the complex term s, to sweep through exponentials, whereas the Z-Transform, adds another imaginary part. For me it looks like it adds the amplitude of the sinusoids (r*e(-i*omega*x), instead of adding exponentials
I've googled it, and it seems like it is in fact the discrete version of the Laplace Transformation, but to make it happen the added part has to be this way, dont know why at this point
Honestly, the best explanation of the DFT I've ever seen)
This was the best explanation on DTFT I have ever seen! Bravo!
I appreciate that!
The most intutive and lucid explanation of DTFT and Z transform I have ever seen 💖
I'm glad you liked it!
Crazy explanation Brian, thank you!
Your explanations and teachings are awesome. This opens my eyes to so many things, and in just 1 video!. Brain, you have been blessed with an amazing gift. Thank you for sharing this with us.
Awesome explanation! When will the video on the Z-Domain be published? Really looking forward to it
I hope before the end of the year. I have 4-5 more videos in my queue before it though :(
1:27 Input u[n] generally refers to unit step function. And Unit impulse is represented by δ[n]
I've been able to solve a Fourier Transform in analytical form back at uni, without understanding what it was for.
I've been able to implement a Discrete Fourier Transform algorithm in code to do simple frequency analysis of a signal, without understanding why the algorithm was the way it is.
With your explanation, I think I finally get the "why" of the Discrete Fourier Transform, the way it uses correlation. Thanks for this explanation; I feel like one more thing is clicking into place.
Glad it helped!
my guy just made fourier transforms, laplace transorm and z transform all make sense , thank you
Good to hear! Thanks!
Hi Brian, thanks for great explanation. At your DTFT demo 10:10, your input data signal clearly has magnitude of 1, so you choose the probing signals also have magnitude of 1 so it fits perfectly in your "dot product". If the input data signal is a combination of many frequencies with different magnitudes, it seems that we still keep the magnitude of probing signals (sine and cosine) as 1. I wonder why that still works? Shouldn't we adjust magnitude of probing signals according to the input signal?
I think I understand your question, but I might be off a bit. Let me give it a try. If a particular frequency in the input signal had an amplitude that wasn't 1 there would still be correlation between it and the probing signal with an amplitude of 1. Since we're multiplying the two signals, having a larger amplitude in one is just like multiplying the product of the two signals by a gain. So that frequency would have a larger value in the lower plot. Which is exactly what you want because you want to see "how much" of each frequency there is in the original signal. For example, if the signal is 5*sin(t) and the probing signal is sin(t), then the product of the two is 5*sin^2(t) and so the summation would be 5 times larger. Was that your question and did my answer make sense?
This is how I see it, lets assume the input signal is a sum of many sinusoidal signals like x1.sin(w1.t) + x2.sin(w2.t) + x3.sin(w3.t) + .... When you have infinite data point, you can prove mathematically that with each probing signal, ONLY the exact probing signal that have the same frequency as one of the input's frequency components would have a NON-ZERO dot product (you can intuitively understand the reason why this happen by taking the integration of the product of two sinusoidal signals with different frequencies, the value would be 0), so the value of x1, x2, x3 or any amplitude of the input's frequency component is not that important (except when you need to know the amplitude of the component frequency) since the output plot would only have pulses at those exact frequencies (when you have infinite data point).
3:50 how did you come up with z-1/z-1??? Where did it come from, I am metaphorically mashing my head against the wall trying to understand it.
Brian is amazing! This video is extremely clear :)
One note on time delay [n-1] implying z^-1, it wasn't clear to me at first how the first example with a pulse function translated to all general cases, but it later occured to me that y^0, which in a delayed sequence matched z^-1, and every term afterward matches the original function, so hence it is the case for the general case. Such that time delay [n-2] does not imply z^-2, and so on. If I have understood correctly.
Thank you Sir Brian
This helps so much, please make more of these
My control systems professor should watch this video.
I am very sure he didnt learn the background of the concept. That is why he cant convey its knowledge properly.
@@sukursukur3617 TH-cam FTW
We know that we can use FT on account of e^{i /omega n} forming an orthogonal basis for all n. I'm wondering, since z^{-n} spans all complex exponentials (assuming no limit like n>0), if there are any non-zero inner products between differently-based exponential functions. I mean, just by definition you're sweeping over scalar multiples of a basis, making all elements (r e^{i /omega})^{-n} LD on (e^{i /omega})^{-n}, right?
I wonder why at 10:11, we did not make the cosine wave an imaginary signal. why choose the sine wave over the cosine wave? what would be the result if we just made the cosine wave imaginary?
Is the shown Matlab application available on any link? (The one that calculates the FFT in min 7:50)
I just put it on GitHub. Check the pinned comment above!
this is teaching at its finest
As with everything MATLAB, very clear and concise video. Thank you!
Thanks for the feedback. We appreciate it!
I can't find the link to the video about the Z domain.. will be happy to get it
Can’t wait for z domain video
please make more of this ! it really really help !!!!
Amazing and very intuitive video, thanks!
You are the best looking forward to watching more and more!
I never understand why we use complex number to do the transform, until now !!
TO CONSIDER THE PHASE !!
@Brian I’d love to see you do an explanation of ADRC controllers!
You are a wizard. Thank you!
Great video!
Excellent explanation, great job!
thank you. very nicely presented, and helpful.
You are Genius 🎉
Yes Brian is awesome!
Hi Brian, since I am studying how to develop MATLAB apps, would it be possible for you to share the app that you have used during the discussion on the DTFT? Thanks
he put the github link in the description
16:50 - Where is the Z-Domain video?
I'm just starting it now ☺ It took a while to get to it. Any particular questions you'd like answered in it while you're thinking about it? Thanks!
@@BrianBDouglas Thank you so much for the feedback. Very much appreciated you asking! Yes! I do have questions that, if possible, I'd love to see them answers. 1) Can you give a couple more examples of how to go from the zero+poles representation to the filter equation? 2) Can you explain butter filters design and their relation to the Z-transform? What does the butter function does? 3) Can you explain `sos` for filter design? Why `sos` is more stable than the `butter` function in some cases?
These are some topics I came across when first watching this video. I would find very helpful to have them addressed, but if you consider a bit out of scope for the next video you're planning that is fine. I looking forward to it anyways, your videos are great and I've learned a lot! Thank you for all the effort and quality put into them!
I love this, Im only 9 min in and it is all so clear to me now!
Thank you. (Unless the next 10 min gives me dementia).
Did it stick? :)
It has indeed. Thank you.
Thanks alot Brian 🎉
when will the z domain video come out?
I was hoping by now! But the video got pushed for a bit to get other work done. It will be here one day though. Sorry!
is there any open source on the internet about detail on z domain
So, is z-transform kind of discreet Laplace Transform?
Yep!
Thanks for te awesome content. Where can I find the list with Brian videos for this Channel?
I organize all of my MATLAB videos here: engineeringmedia.com/videos
Many thanks Brian!
Like how he explains. Like a documentary
love you Brian
Did that z domain video ever get published?
I'm almost done with it! I had to change what I'm going to cover in it because I found a video by Youngmoo Kim that covers pretty much what I wanted to and it's brilliantly done. I'm going to call it out in my video and cover a few different things now. I'd put the link but my comment will be removed but search TH-cam for "Applied DSP No. 9: The z-Domain and Parametric Filter Design"
Why an impulse would be integrated to a constant value of 1?
Thank you.
Common man I had math exam yesterday, where were you 😢
Is z transform discrete Laplace transform?
Yes, that's right. This is why you have to see what is the application for which you are going to choose certain transform. For instance, z-transform is used in digital filter design, whereas the Laplace transform is mainly used in applications such as AC circuit analysis, and so on.
Is this tool you showed for the DTFT somewhere available?
I just put it on GitHub. Check the pinned comment above!
DTFT: 5:28
5:25 sampai 12:09
If the components have both exponential and periodic signals, wouldn't that just the the Laplace transform?
The Laplace transform is for continuous signals, the Z-transform is the discrete equivalent.
So cool!
There is no integrator in discrete time. Discrete time has "accumulator".
Very good
Thanks!
when the video on the z domain will be made and published
I don't know, it keeps getting pushed back :( But I'll get it out eventually.
brilliant
Could it BE any more simpler to explain DFT?
I am wondering why Mathworks took so long time to make such videos?
We are in 2023 and version 2023 has been released.
These control methods were introduced and had been modified since version 2006 .
respect to matlab
For the videos, yes, but not for their software, which should be free for home users.
This looks like exactly what the Laplace transform does. What is the difference ??????
It's discreet as opposed to continuous.
Thank you very much Brian. I love you man (I'm not gay 😂). I have a master degree in CS and system control but I never really understood system control and that's why when I have free time I enjoy watching your videos. software engineering sucks, I spend my day refactoring complex, buggy programs written by idiots and unconscious people. I'd like to do something more meaningful and intellectually stimulating like systems controls. Unfortunately, I wasn't taught the latter and maths very well, and thanks to some books and youtube videos, I'm in the process of fixing that. I have a question : Why don't we use exponential functions based on 'e' to scan/probe the sampled signal ? Is it because the signal is sampled and it doesn't make sense to use a function that expresses continuous growth/decay ? after all we can pose r = e^something.
The middle of page 608 here: www.dspguide.com/CH33.PDF explains why we use r instead of e. Hope that helps!
респект авторам, но ничего не понятно для чего его использовать вообще
Halo saa disuru bu guru njelasin
This explanation is actually pretty bad in comparison to explanation of other authors on TH-cam)
I respectfully disagree😅
This subject (like many others) is so complex that a single video is not enough to explain it in depth. You need to watch several videos by different people to improve your understanding of the subject.
L 1
in cre di ble
Glad you liked it!
boring, but not for me :)