Hello forum:
I'm trying to simulate PA signal with high frequency probe setting(central frequency=20MHz). However, I found the spectrum of PA signal I received was located at low frequency(approximate 5MHz), which did not match to the frequency response of my probe setting.
I've found that the bandwidth will increase when the grid is split into smaller size, but the improvement was limited.
Is there any wrong setting in my code, or any parameter I should modify, or maybe I just need to set smaller grid to get wider bandwidth?
%% My code %%%%%%%%%%%%%%%%%%
% Grid setting
Nx = 1024; % number of grid points in the x direction
Ny = 1024; % number of grid points in the y direction
dx = 0.05e-3; % grid point spacing in the x direction [m]
dy = 0.05e-3; % grid point spacing in the y direction [m]
kgrid = kWaveGrid(Nx, dx, Ny, dy);
kgrid.makeTime(1480);
% medium setting
medium.sound_speed = 1480 * ones(Nx, Ny);
medium.density = 1000 * ones(Nx, Ny);
% source setting
disc_magnitude = 5; % [Pa]
cx = 810; % [grid points]
cy = 512; % [grid points]
Disc_radius = 0; % [grid points]
Disc_1 = disc_magnitude * makeDisc(Nx, Ny, cx, cy, Disc_radius);
source.p0 = Disc_1;
% sensor setting
sensor.mask = [];
x_start = 10; x_end = 10;
for Nelement = 1:128
sensor.mask = [sensor.mask;
x_start, (Ny/2) + (Nelement-64)*6-6, x_end, (Ny/2) + (Nelement-64)*6-1];
end
sensor.mask = sensor.mask.';
% simulation
sensor_Data = kspaceFirstOrder2DG(kgrid, medium, source, sensor);
for Nelement = 1:128
temp = squeeze(sensor_Data(Nelement).p);
data(Nelement,:) = sum(temp, 1);
end
for i = 1:128
RFData(i,:) = gaussianFilter(data(i,:), 1/kgrid.dt, 20e6, 80);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%
Thanks.