To find out the index of the maximum element of a matrix in Matlab, use:
>> myMat = [1 2 3 4;2 3 4 5;5 6 2 1]
myMat =
1 2 3 4
2 3 4 5
5 6 2 1
>> [row, col] = find(myMat == max(myMat(:)))
row =
3
col =
2
>> myMat(3,2)
ans =
6
>> max(myMat(:))
ans =
6
Reference
How do I find the indices of the maximum (or minimum) value of my matrix? (MathWorks)
Information about Electrical, Electronic, Communication and Computer Engineering 電機、電子、通訊、電腦資訊工程的學習筆記
相關資訊~生醫工程:StudyBME
聽力科技相關資訊:電子耳資訊小站
iOS程式語言:Study Swift
樹莓派和Python:Study Raspberry Pi
2018/12/20
2018/12/15
Matlab: Frequency response and pole-zero plot of a 1000-Hz Butterworth lowpass filter
The following Matlab code shows the magnitude and phase response and the Z-plane of a 1000-Hz Butterworth lowpass filter.
clc;clear;close all;
Fs = 8000; %Sampling frequency
Fco = 1000; %Cutoff frequency
order = 4;
[b, a] = butter(order, Fco/(Fs/2), 'low');
zplane(b,a);title(['LPF Fco=',num2str(Fco),'Hz, Fs=',num2str(Fs),'Hz']);
w = 0:0.01:2*pi;
H = freqz(b, a, w);
mag = abs(H);
pha = angle(H);
figure
subplot(211);
plot(w,mag);title('Magnitude');xlabel('rad/s');
subplot(212)
plot(w,pha);title('Phase');xlabel('rad/s');
figure
w_Hz = w*Fs/(2*pi); %frequency in unit of Hz.
subplot(211);
plot(w_Hz,mag);title('Magnitude');xlabel('Hz');
subplot(212)
plot(w_Hz,pha);title('Phase');xlabel('Hz');
Result:
Pole-zero plot
Magnitude and phase responses with frequency in rad/s.
Magnitude and phase responses with frequency in Hz.
References:
How to plot the magnitude and phase of a given transfer function(z-domain)?
Pole-Zero plots of various filters
draw the Pole-Zero plot of the Z-transform
clc;clear;close all;
Fs = 8000; %Sampling frequency
Fco = 1000; %Cutoff frequency
order = 4;
[b, a] = butter(order, Fco/(Fs/2), 'low');
zplane(b,a);title(['LPF Fco=',num2str(Fco),'Hz, Fs=',num2str(Fs),'Hz']);
w = 0:0.01:2*pi;
H = freqz(b, a, w);
mag = abs(H);
pha = angle(H);
figure
subplot(211);
plot(w,mag);title('Magnitude');xlabel('rad/s');
subplot(212)
plot(w,pha);title('Phase');xlabel('rad/s');
figure
w_Hz = w*Fs/(2*pi); %frequency in unit of Hz.
subplot(211);
plot(w_Hz,mag);title('Magnitude');xlabel('Hz');
subplot(212)
plot(w_Hz,pha);title('Phase');xlabel('Hz');
Result:
Pole-zero plot
Magnitude and phase responses with frequency in rad/s.
Magnitude and phase responses with frequency in Hz.
References:
How to plot the magnitude and phase of a given transfer function(z-domain)?
Pole-Zero plots of various filters
draw the Pole-Zero plot of the Z-transform
訂閱:
文章 (Atom)