Dear Ben and Brad,
I'm currently doing 2D simulation on k-wave, an professional tool for photoacoustics.I notice the simulation results vary based on different 'sensor.directivity_size' parameters. Could you please explain in more detail how to define the best sensor.directivity_size?
To make my question specific, I post my model below:
% define the properties of the propagation medium
medium.sound_speed = 1500; % [m/s]
PML_size = 10;
Nx = 320 - 2 * PML_size;
Ny = 520 - 2 * PML_size;
dx = 0.0005; % m
dy = dx;
kgrid = kWaveGrid(Nx, dx, Ny, dy);
% create the time array
kgrid.makeTime(medium.sound_speed);
source.p0 = zeros(Nx,Ny);
source.p0(100,100) = 100;
sensor.mask = zeros(Nx, Ny);
sensor.mask(39:262,1) = 1;
% define the angle of max directivity for each sensor point:
dir_angles = (67.5:45/223:112.5)'/180*pi;
% assign to the directivity mask
sensor.directivity_angle = zeros(Nx, Ny);
sensor.directivity_angle(sensor.mask == 1) = dir_angles;
% define the directivity pattern
sensor.directivity_pattern = 'pressure';
% define the directivity size
sensor.directivity_size = 16 * kgrid.dx;
% define the frequency response of the sensor elements
center_freq = 0.35e6; % [Hz]
bandwidth = 50; % [%]
sensor.frequency_response = [center_freq, bandwidth];
% set the input arguements
input_args = {'PMLSize', PML_size, 'PMLInside', false, 'PlotPML', false, ...
'Smooth', false, 'DataCast', 'single', 'CartInterp', 'nearest'};
% run the simulation
sensor_data = kspaceFirstOrder2D(kgrid, medium, source, sensor, input_args{:});