hi,
i tryed introducing absorption to my simulation, and noticed results didn't fit expectations in terms of the absotption per length.
i created this simple simulation in order to examine the absorption modeling:
clear
alpha=8;
Nx=100;
Ny=100;
Nz=100;
medium.alpha_coeff=alpha*ones(Nx,Ny,Nz);
medium.alpha_power=1.1;
medium.sound_speed(:,:,:)=1624;
medium.density(:,:,:)=1109;
dx =0.001; % grid point spacing in the x direction [m]
dy =0.001; % grid point spacing in the y direction [m]
dz =0.001; % grid point spacing in the z direction [m]
kgrid = makeGrid(Nx, dx, Ny, dy, Nz, dz);
[kgrid.t_array, dt] = makeTime(kgrid, medium.sound_speed,[],2*10^(-4));
source.p_mask=zeros(Nx,Ny,Nz);
source.p_mask(20,40,40)=1;
sensor.mask=zeros(Nx,Ny,Nz);
sensor.mask(80,40,40)=1;
f0=200000;
source.p=20*sin(2*pi*f0*kgrid.t_array);
source.p = filterTimeSeries(kgrid, medium, source.p);
med=medium.sound_speed;
t=kgrid.t_array;
sensor.record = {'p', 'p_final'};
input_args = {'DisplayMask', source.p_mask, 'DataCast', 'single', 'CartInterp', 'nearest'};
simple_data8=kspaceFirstOrder3D(kgrid, medium, source, sensor, input_args{:});
as u can see, the distance between source and sensor is 60*1mm= 6cm and the frequency is 0.2MHz. I ran the simulation with different alpha_coeff values changing from alpha=2 to alpha=12 (alpha power is constantly=1.1).
Now, i examine the difference between amplitude measured with differnent alpha.
for example, for alpha=12 and alpha=2, I would expect a difference in power of (12-2)*6cm*0.2^1.1 [dB] = 10.21dB in the recieved signal 6cm from source. In practice, the sensor wave amplitude measured is: h2(amplitude for alpha=2)=0.0151 and h12=0.0329 , which means aan energy loss of 20*log(h12/h2)=6.74dB.
I tryed the same calculation for a few more alpha values - and it just dosen't make sense...
Any explatnation for that?
Benji