<?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: Ultrasound propagation in droplets</title>
		<link>http://www.k-wave.org/forum/topic/ultrasound-propagation-in-droplets</link>
		<description>Support for the k-Wave MATLAB toolbox</description>
		<language>en-US</language>
		<pubDate>Tue, 12 May 2026 22:34: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/ultrasound-propagation-in-droplets" rel="self" type="application/rss+xml" />

		<item>
			<title>Bradley Treeby on "Ultrasound propagation in droplets"</title>
			<link>http://www.k-wave.org/forum/topic/ultrasound-propagation-in-droplets#post-8208</link>
			<pubDate>Fri, 11 Jun 2021 11:27:16 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">8208@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Zeng,&#60;/p&#62;
&#60;p&#62;I don't know anything about your particular problem, but yes, you can model lots of small scatterers in k-Wave by perturbing the acoustic density / sound speed. Keep in mind that if you run your simulation in 2D, what you're actually modelling is scattering by infinite cylinders. &#60;/p&#62;
&#60;p&#62;Also, the code you posted uses a disc-shaped initial pressure. You will want to look at some of the other examples for how to create a monochromatic (single frequency) plane wave.&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>zengqw2021 on "Ultrasound propagation in droplets"</title>
			<link>http://www.k-wave.org/forum/topic/ultrasound-propagation-in-droplets#post-8206</link>
			<pubDate>Fri, 11 Jun 2021 08:15:57 +0000</pubDate>
			<dc:creator>zengqw2021</dc:creator>
			<guid isPermaLink="false">8206@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hello,&#60;br /&#62;
     I have created a code as follows:&#60;/p&#62;
&#60;p&#62;% Based on Heterogeneous Propagation Medium Example&#60;/p&#62;
&#60;p&#62;clearvars;&#60;/p&#62;
&#60;p&#62;% =========================================================================&#60;br /&#62;
% SIMULATION&#60;br /&#62;
% =========================================================================&#60;/p&#62;
&#60;p&#62;% create the computational grid&#60;br /&#62;
Nx = 512;           % number of grid points in the x (row) direction&#60;br /&#62;
Ny = Nx;           % number of grid points in the y (column) direction&#60;br /&#62;
dx = 1e-6;        % grid point spacing in the x direction [m]&#60;br /&#62;
dy = 1e-6;        % grid point spacing in the y direction [m]&#60;br /&#62;
kgrid = kWaveGrid(Nx, dx, Ny, dy);&#60;/p&#62;
&#60;p&#62;% define the properties of the propagation medium&#60;br /&#62;
Air_speed  = 330;&#60;br /&#62;
Air_rho0   =  1;&#60;br /&#62;
Air_BonA   = 0.4;&#60;br /&#62;
Air_absob  = 2.0;&#60;/p&#62;
&#60;p&#62;source_f0           = 1.1e6;    % source frequency [Hz]&#60;br /&#62;
water_temp          = 22;&#60;br /&#62;
water_speed         = waterSoundSpeed(water_temp);&#60;br /&#62;
water_rho0          = waterDensity(water_temp);&#60;br /&#62;
water_BonA          = waterNonlinearity(water_temp);&#60;br /&#62;
water_absob         = waterAbsorption(source_f0 * 1e-6, water_temp);&#60;/p&#62;
&#60;p&#62;% reference sound speed&#60;br /&#62;
medium.sound_speed_ref                      = Air_speed;&#60;br /&#62;
% sound speed&#60;br /&#62;
medium.sound_speed                          = Air_speed* ones(Nx, Ny);&#60;br /&#62;
% sound density&#60;br /&#62;
medium.density                              = Air_rho0 * ones(Nx, Ny);&#60;br /&#62;
% nonlinearity&#60;br /&#62;
medium.BonA                                 = Air_BonA * ones(Nx, Ny);&#60;br /&#62;
% absorption&#60;br /&#62;
medium.alpha_coeff                          = Air_absob * ones(Nx, Ny);&#60;/p&#62;
&#60;p&#62;medium.alpha_power = 2.0;&#60;/p&#62;
&#60;p&#62;%========create water droplets disk===&#60;/p&#62;
&#60;p&#62;N= 10;     %Number of water droplets&#60;br /&#62;
drop_pos_x = randperm(Nx-10);   % Center of particle position&#60;br /&#62;
drop_pos_y = randperm(Nx-10);   %&#60;/p&#62;
&#60;p&#62;for i=1:N&#60;br /&#62;
    % droplets geometry&#60;br /&#62;
    drop_radius = 5;       %radius of droplet,grid point spacing&#60;br /&#62;
    cx          = drop_pos_x(i);&#60;br /&#62;
    cy          = drop_pos_y(i);&#60;br /&#62;
    drop_mask = makeDisc(Nx, Ny, cx, cy, drop_radius);&#60;/p&#62;
&#60;p&#62;    % sound speed&#60;br /&#62;
    medium.sound_speed(drop_mask == 1)         = water_speed;&#60;br /&#62;
    % sound density&#60;br /&#62;
    medium.density(drop_mask == 1)              = water_rho0;&#60;br /&#62;
    % nonlinearity&#60;br /&#62;
    medium.BonA(drop_mask == 1)                 = water_BonA;&#60;br /&#62;
    % absorption&#60;br /&#62;
    medium.alpha_coeff(drop_mask == 1)          = water_absob;&#60;/p&#62;
&#60;p&#62;end&#60;/p&#62;
&#60;p&#62;% create initial pressure distribution using makeDisc&#60;br /&#62;
disc_magnitude = 5; % [Pa]&#60;br /&#62;
disc_x_pos = Nx/2;    % [grid points]&#60;br /&#62;
disc_y_pos = Ny/2;    % [grid points]&#60;br /&#62;
disc_radius = 20;    % [grid points]&#60;br /&#62;
disc_1 = disc_magnitude * makeDisc(Nx, Ny, disc_x_pos, disc_y_pos, disc_radius);&#60;/p&#62;
&#60;p&#62;source.p0 = disc_1 ;&#60;br /&#62;
init_p0   = source.p0;&#60;/p&#62;
&#60;p&#62;% define a centered Cartesian circular sensor&#60;br /&#62;
sensor_radius = 2e-4;      % [m]&#60;br /&#62;
sensor_angle = 2*pi ;      % [rad]&#60;br /&#62;
sensor_pos = [0, 0];       % [m]&#60;br /&#62;
num_sensor_points = 150;&#60;br /&#62;
cart_sensor_mask = makeCartCircle(sensor_radius, num_sensor_points, sensor_pos, sensor_angle);&#60;br /&#62;
% Cartesian sensors aren't support in the C++ code, convert it to a binary mask&#60;br /&#62;
[grid_sensor_mask, order_index, reorder_index] = cart2grid(kgrid, cart_sensor_mask);&#60;br /&#62;
sensor.mask = grid_sensor_mask;&#60;/p&#62;
&#60;p&#62;% create the time array&#60;br /&#62;
t1=kgrid.makeTime(medium.sound_speed);&#60;/p&#62;
&#60;p&#62;% run the simulation with optional inputs for plotting the simulation&#60;br /&#62;
% layout in addition to removing the PML from the display&#60;br /&#62;
sensor_data = kspaceFirstOrder2DC(kgrid, medium, source, sensor, ...&#60;br /&#62;
    'PlotLayout', false, 'PlotPML', false);&#60;/p&#62;
&#60;p&#62;Can the above code be used to analyze the simulated pressure amplitude for&#60;br /&#62;
the scattering of a  monochromatic plane wave by a sphere of micron-sized particles?&#60;br /&#62;
    Could anyone give me some suggestions? Thanks advance.&#60;br /&#62;
     Zeng
&#60;/p&#62;</description>
		</item>
		<item>
			<title>zengqw2021 on "Ultrasound propagation in droplets"</title>
			<link>http://www.k-wave.org/forum/topic/ultrasound-propagation-in-droplets#post-8202</link>
			<pubDate>Thu, 10 Jun 2021 02:20:08 +0000</pubDate>
			<dc:creator>zengqw2021</dc:creator>
			<guid isPermaLink="false">8202@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi everyone,&#60;br /&#62;
   Recently, I want to study the propagation of ultrasound in space filled with water droplets. In the paper &#34;Nonlinear ultrasound simulation in an axisymmetric coordinate system using a k-space pseudospectral method&#34;, I find the case &#34;D. Scattering of plane wave by a fluid sphere&#34;simulation seems to be similar to this situation.Scattering of acoustic signals is the main consideration.&#60;br /&#62;
I want to know if I can set many micron-sized particles in the medium properties by resetting the droplet density parameters to achieve my idea.&#60;br /&#62;
   I hope to receive your reply.&#60;br /&#62;
    Thanks.&#60;br /&#62;
    Zeng
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>
