<?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: Coupled elastic and thermal modeling</title>
		<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling</link>
		<description>Support for the k-Wave MATLAB toolbox</description>
		<language>en-US</language>
		<pubDate>Tue, 12 May 2026 23:29:47 +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/coupled-elastic-and-thermal-modeling" rel="self" type="application/rss+xml" />

		<item>
			<title>Bradley Treeby on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5762</link>
			<pubDate>Tue, 22 Nov 2016 16:45:39 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">5762@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Daniel,&#60;/p&#62;
&#60;p&#62;I'm afraid not!&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>DLam on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5754</link>
			<pubDate>Mon, 21 Nov 2016 16:26:02 +0000</pubDate>
			<dc:creator>DLam</dc:creator>
			<guid isPermaLink="false">5754@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Sorry for necro-ing this thread, but I just wanted to ask --- do you mean that, in the next release, the code for pstdElastic will feature the ability to vary the power-law absorption power as your 2014 paper suggests, instead of having it set to 2?&#60;/p&#62;
&#60;p&#62;Daniel
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Bradley Treeby on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5586</link>
			<pubDate>Wed, 13 Jul 2016 15:44:52 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">5586@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi jlc4kk,&#60;/p&#62;
&#60;p&#62;If you look at Fig. 3 in &#60;a href=&#34;http://www.homepages.ucl.ac.uk/~rmapbtr/papers/JOURN_23_2014_Treeby_JASA_PowerLawAbsorptionElastic.pdf&#34;&#62;this paper&#60;/a&#62;, you can see that the velocity components each live on a staggered grid (ux is staggered in the x-direction, and so on). Equation 46 in the same paper then shows how to do the splitting, where using Einstein summation notation:&#60;/p&#62;
&#60;pre&#62;&#60;code&#62;u_i^p = k_i k_j u_j
u_i^s = (delta_ij - k_i k_j) u_j&#60;/code&#62;&#60;/pre&#62;
&#60;p&#62;Because the split field components in each direction also depend on the velocity in other directions (which are staggered in different directions), these components must first be shifted before they are combined. The shift operators are labelled verbosely, so it should be clear what they do (&#60;code&#62;shift_neg_y_pos_x&#60;/code&#62; will shift in the negative y-direction and positive x-direction). &#60;/p&#62;
&#60;p&#62;In 2D, there are only two possibilities, moving from the x-staggered points to the y-staggered points, and vice versa. In 3D, there will be six possibilities (x &#38;lt;-&#38;gt; y, x &#38;lt;-&#38;gt; z, y &#38;lt;-&#38;gt; z), so you should create the required variables. Here, exp(1i*kgrid.kx*kgrid.dx/2) will produce a positive shift in the x-direction, while exp(-1i*kgrid.kx*kgrid.dx/2) will produce a negative shift (similarly for other directions).&#60;/p&#62;
&#60;p&#62;It should then be clear how to calculate the various components. For example, the compression component of the particle velocity in the x-direction is given by&#60;/p&#62;
&#60;p&#62;&#60;code&#62;u_x^p = k_x k_x u_x + k_x k_y u_y + k_x k_z u_z&#60;/code&#62;&#60;/p&#62;
&#60;p&#62;In matlab code, this would look like&#60;/p&#62;
&#60;p&#62;&#60;code&#62;ux_sgx^p = real(ifftn( kx_norm.^2 .* fftn(ux_sgx) + kx_norm .* ky_norm .* shift_neg_y_pos_x .* fftn(uy_sgy) + kx_norm .* kz_norm .* shift_neg_z_pos_x .* fftn(uz_sgz) ));&#60;/code&#62;&#60;/p&#62;
&#60;p&#62;Hope that makes sense.&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>jlc4kk on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5583</link>
			<pubDate>Thu, 07 Jul 2016 12:15:15 +0000</pubDate>
			<dc:creator>jlc4kk</dc:creator>
			<guid isPermaLink="false">5583@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hello,&#60;/p&#62;
&#60;p&#62;One part I am not sure on how change for pstdElastic3D is starting at line 494 of the updated pstdelastic2D code you provided:&#60;/p&#62;
&#60;p&#62;shift_neg_y_pos_x = ifftshift( exp(1i*kgrid.kx*kgrid.dx/2 - 1i*kgrid.ky*kgrid.dy/2) );&#60;br /&#62;
shift_neg_x_pos_y = ifftshift( exp(1i*kgrid.ky*kgrid.dy/2 - 1i*kgrid.kx*kgrid.dx/2) );&#60;/p&#62;
&#60;p&#62;How do I define the shift operator for pstdElastic3D? I think the other changes look straightforward to change, just not sure about this part.&#60;br /&#62;
Thank you for your help!
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Bradley Treeby on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5580</link>
			<pubDate>Wed, 06 Jul 2016 08:22:27 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">5580@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi JF,&#60;/p&#62;
&#60;p&#62;We haven't yet rolled the changes into the 3D code (we plan to do this before the next release). However, it should be fairly straightforward to do so. If you do a diff on pstdElastic2D between the release version and the code above, you should see the lines of code to change. I think the other subscripts are already setup to work in the 3D case. Please let me know if you get stuck!&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>jf.aubry on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5578</link>
			<pubDate>Wed, 06 Jul 2016 02:42:52 +0000</pubDate>
			<dc:creator>jf.aubry</dc:creator>
			<guid isPermaLink="false">5578@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Thanks Brad,&#60;/p&#62;
&#60;p&#62;We are actually using pstdElastic3D. Do you have the equivalent updated matlab file, or shall we change the same part of the code ourself?&#60;/p&#62;
&#60;p&#62;Best,&#60;br /&#62;
JF
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Bradley Treeby on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5564</link>
			<pubDate>Mon, 04 Jul 2016 17:17:07 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">5564@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi JF,&#60;/p&#62;
&#60;p&#62;These changes will be part of the next release. In the meantime, I have copied the relevant bits of code into the appropriate places in V1.1.1, which you can download &#60;a href=&#34;http://www.k-wave.org/downloads/u_split_velocity.zip&#34;&#62;here&#60;/a&#62;. To save the split velocity field, add &#60;code&#62;&#38;#39;u_split_field&#38;#39;&#60;/code&#62; to the input for &#60;code&#62;sensor.record&#60;/code&#62;. The part of the code where the field is split starts at line 788 in &#60;code&#62;pstdElastic2D&#60;/code&#62;. Let me know if you have any questions, or if something doesn't work.&#60;/p&#62;
&#60;p&#62;Brad
&#60;/p&#62;</description>
		</item>
		<item>
			<title>jf.aubry on "Coupled elastic and thermal modeling"</title>
			<link>http://www.k-wave.org/forum/topic/coupled-elastic-and-thermal-modeling#post-5555</link>
			<pubDate>Fri, 01 Jul 2016 10:09:26 +0000</pubDate>
			<dc:creator>jf.aubry</dc:creator>
			<guid isPermaLink="false">5555@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi,&#60;/p&#62;
&#60;p&#62;We're having troubles performing coupled elastic and thermal modeling, similar to the ones you published recently [The Contribution of Shear Wave Absorption to Ultrasound Heating in Bones: Coupled Elastic and Thermal Modeling] and [Modeling power law absorption and dispersion in viscoelastic solids using a split-field and the fractional Laplacian].&#60;br /&#62;
It is stated in the latter article that &#34;The model equations given in Sec.III A&#60;br /&#62;
were implemented in MATLAB as an extension to the open-source k-Wave toolbox.&#60;br /&#62;
but we did not find any trace in the latest version of the toolbox: we do not see how to extract the compressional and shear parts of the particle velocity.&#60;/p&#62;
&#60;p&#62;Thanks for your help.
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>
