<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="bbPress/1.0.2" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>k-Wave User Forum &#187; Topic: Setting Incident Intensity of Acoustic Plane Wave</title>
		<link>http://www.k-wave.org/forum/topic/setting-incident-intensity-of-acoustic-plane-wave</link>
		<description>Support for the k-Wave MATLAB toolbox</description>
		<language>en-US</language>
		<pubDate>Wed, 13 May 2026 01:31:45 +0000</pubDate>
		<generator>http://bbpress.org/?v=1.0.2</generator>
		<textInput>
			<title><![CDATA[Search]]></title>
			<description><![CDATA[Search all topics from these forums.]]></description>
			<name>q</name>
			<link>http://www.k-wave.org/forum/search.php</link>
		</textInput>
		<atom:link href="http://www.k-wave.org/forum/rss/topic/setting-incident-intensity-of-acoustic-plane-wave" rel="self" type="application/rss+xml" />

		<item>
			<title>Bradley Treeby on "Setting Incident Intensity of Acoustic Plane Wave"</title>
			<link>http://www.k-wave.org/forum/topic/setting-incident-intensity-of-acoustic-plane-wave#post-4568</link>
			<pubDate>Tue, 10 Jun 2014 11:12:40 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">4568@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Jon,&#60;/p&#62;
&#60;p&#62;The behaviour you see is expected - what you are seeing is the underlying behaviour of the so-called band-limited interpolant. This is what is actually propagated by the simulation (see section III in &#60;a href=&#34;http://www.k-wave.org/papers/2011-Treeby-JASA.pdf&#34;&#62;this paper&#60;/a&#62; or Sec. 2.8 in the k-Wave manual if you want some more explanation). &#60;/p&#62;
&#60;p&#62;You only see it for the high-intensity simulation because the default plot scale is [-1, 1], while your pressure magnitude is ~1e5. If you add &#60;code&#62;&#38;#39;PlotScale&#38;#39;, [-source_mag, source_mag]&#60;/code&#62; to your optional inputs, you should see the same display (in the linear case) irrespective of your chosen intensity.&#60;/p&#62;
&#60;p&#62;Hope that helps,&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>jrosenfield on "Setting Incident Intensity of Acoustic Plane Wave"</title>
			<link>http://www.k-wave.org/forum/topic/setting-incident-intensity-of-acoustic-plane-wave#post-4565</link>
			<pubDate>Mon, 09 Jun 2014 19:37:38 +0000</pubDate>
			<dc:creator>jrosenfield</dc:creator>
			<guid isPermaLink="false">4565@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Brad,&#60;/p&#62;
&#60;p&#62;You probably recall that you were helping me some time ago to simulate monochromatic plane waves propagating through simple phantoms. I would like to set my time-averaged incident intensity to be 1 W/cm^2 (1e4 W/m^2) in my current simulation. I am including the code for your reference. When I set the incident intensity to be very low (1e-4 W/m^2), the simulation visually appears to run correctly. However, if I set the incident intensity to be the desired 1e4 W/m^2, the simulation does not seem to run correctly. In particular, the movie of the 2D simulation appears to show that the pressure field propagates the entire length of the phantom in one time step, and drastic changes in pressure can be observed. You only have to look at the first few time steps to see this. Could you please run the attached code and let me know what might be causing the apparent instability in the higher-intensity simulation?&#60;/p&#62;
&#60;p&#62;Thanks for your help.&#60;/p&#62;
&#60;p&#62;Sincerely,&#60;/p&#62;
&#60;p&#62;Jon&#60;/p&#62;
&#60;p&#62;function planewave(distance)&#60;/p&#62;
&#60;p&#62;% distance defines lesion-to-detector distance (cm)&#60;/p&#62;
&#60;p&#62;dx = 1e-4; % grid point spacing in the x direction [meters]&#60;br /&#62;
dy = 1e-4; % grid point spacing in the y direction [meters]&#60;br /&#62;
Nx = 587; % number of pixels in x-direction&#60;br /&#62;
Ny = 500; % number of pixels in y-direction&#60;br /&#62;
kgrid = makeGrid(Nx, dx, Ny, dy); % make computational grid&#60;br /&#62;
middle = 294;&#60;br /&#62;
x0 = middle;&#60;br /&#62;
frequency = 3.81;&#60;/p&#62;
&#60;p&#62;% define properties of the lesion&#60;br /&#62;
y0 = round(500 - (distance*(1/100)*(1/dy)));&#60;br /&#62;
medium.sound_speed = 1550*makeDisc(Nx,Ny,x0,y0,6); % [m/s]&#60;br /&#62;
medium.density = 1040*makeDisc(Nx,Ny,x0,y0,6); % [kg/m^3]&#60;br /&#62;
medium.alpha_coeff = .570*(frequency^1.3)*makeDisc(Nx,Ny,x0,y0,6); % [dB/(MHz^y*cm)]&#60;br /&#62;
medium.alpha_power = 0; % value of power y&#60;br /&#62;
lesionmask = makeDisc(Nx,Ny,x0,y0,6);&#60;/p&#62;
&#60;p&#62;medium.sound_speed(medium.sound_speed==0) = 1550;&#60;br /&#62;
medium.density(medium.density==0) = 1015;&#60;br /&#62;
medium.alpha_coeff(medium.alpha_coeff==0) = ((0.25*0.158*(frequency^1.7))...&#60;br /&#62;
    + (0.75*0.870*(frequency^1.5)));&#60;br /&#62;
medium.alpha_power = 0; % value of power y&#60;/p&#62;
&#60;p&#62;% define sensor&#60;br /&#62;
sensor.mask = zeros(Nx,Ny);&#60;br /&#62;
sensor.mask(:,500) = 1;&#60;br /&#62;
sensor.record = {'p'};&#60;/p&#62;
&#60;p&#62;%define source&#60;br /&#62;
source.p_mask = zeros(Nx,Ny);&#60;br /&#62;
source.p_mask(:,1) = 1;&#60;br /&#62;
source_intensity = 1e-4; % [W/m^2]&#60;br /&#62;
rho0 = 1015; % [kg/m^3]&#60;br /&#62;
c0 = 1550; % [m/s]&#60;br /&#62;
source_mag = sqrt(2*source_intensity*rho0*c0); % [Pa]&#60;br /&#62;
source_freq = frequency*(1e6); % [Hz]&#60;/p&#62;
&#60;p&#62;% calculate the time length of one acoustic period&#60;br /&#62;
T = 1/source_freq;&#60;/p&#62;
&#60;p&#62;% create the time array using a nice number of points&#60;br /&#62;
points_per_period = 10;&#60;br /&#62;
dt = T/points_per_period;&#60;br /&#62;
t_end = (10/source_freq) + (3.4e-5);&#60;br /&#62;
kgrid.t_array = 0:dt:t_end;&#60;/p&#62;
&#60;p&#62;% define a time varying sinusoidal source&#60;/p&#62;
&#60;p&#62;source.p = source_mag*sin(2*pi*source_freq.*kgrid.t_array);&#60;/p&#62;
&#60;p&#62;% smooth startup using a cosine ramp&#60;br /&#62;
ramp_length = 40;&#60;br /&#62;
ramp = (-cos((0:(ramp_length-1))*pi/ramp_length ) + 1)/2;&#60;br /&#62;
source.p(1:length(ramp)) = source.p(1:length(ramp)) .* ramp;&#60;/p&#62;
&#60;p&#62;source.p = filterTimeSeries(kgrid, medium, source.p, 'PlotSpectrums', false, 'PPW', 2);&#60;/p&#62;
&#60;p&#62;num_cycles = 1;&#60;br /&#62;
sensor.record_start_index = kgrid.Nt - round(num_cycles * T / dt) + 1;&#60;/p&#62;
&#60;p&#62;medium.sound_speed = smooth(kgrid, medium.sound_speed, true);&#60;br /&#62;
medium.density = smooth(kgrid, medium.density, true);&#60;/p&#62;
&#60;p&#62;input_args = {'DisplayMask', (source.p_mask + sensor.mask + lesionmask), 'DataCast', 'single', 'PMLSize', [0, 20], 'PMLAlpha', [0, 2], 'PMLInside', false};&#60;/p&#62;
&#60;p&#62;sensor_data = kspaceFirstOrder2D(kgrid, medium, source, sensor, input_args{:});&#60;/p&#62;
&#60;p&#62;pressure = sensor_data.p;&#60;br /&#62;
pressure = pressure.^2;&#60;br /&#62;
pressure = transpose(pressure);&#60;br /&#62;
pressure = mean(pressure);&#60;br /&#62;
Iavg = pressure./(rho0*c0);&#60;br /&#62;
xaxis = -293*0.1:0.1:293*0.1;&#60;br /&#62;
plot(xaxis, Iavg)&#60;br /&#62;
xlabel('Lateral Position (mm)')&#60;br /&#62;
ylabel('Acoustic Intensity (W/m^2)')&#60;br /&#62;
hold on&#60;br /&#62;
end
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>
