Obtaining a dataset from bandpass function
2 次查看(过去 30 天)
显示 更早的评论
Greetings, I am trying to obtain a filtered dataset from the bandpass function I applied to my sampled data. I am trying to demodulate the higher harmonic signal and plot the time-dependent components as a function of a distance. For that I need the filtered time signal, however I don't know how to obtain it from the bandpass function. Any help would be much appreciated.
So far my code looks like this :
clear;
clc;
%Tip oscillation variables
a = 10e-9; % Radius of the tip
f = 50000; % frequency of 50kHz
w = 2*pi*f; % Angular frequency of the oscilating tip
epsilon_tip = -10+2*1i; % Complex permittivity of the gold tip at lambda = 633 nm
%FFT variables
fs = 12*f; %fft sampling frequency = 5 times the oscillation frequency
T = 1/fs; % sampling period
N = 360; % Length of the signal
tf = (0:N-1)*T; % time vector
kf = 0:N/2;
freq = kf.*fs./N;
z = 20e-9+20e-9*cos(2*pi.*f.*tf); % distance between the tip and the sample surface
% Calculation of the near-field dipole-dipole interraction
epsilon_sample = 15; % permittivity of silicon sample at lambda = 633 nm
alpha = 4*pi*a^3*((epsilon_tip-1)./(epsilon_tip+2)); % Polarizability of the gold tip
beta = (epsilon_sample-1)./(epsilon_sample+1); % Dielectric surface response of the mirror dipole induced in the sample
alpha_eff = (((alpha.*(1+beta))./(1-(alpha.*beta)./(16*pi.*(a+z).^3)))).*1e+23; % Effective polarizability of the coupled tip-sample system
figure (5);
bandpass (alpha_eff, [99000 101000], fs);
0 个评论
回答(1 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!