# Wave Propagation Through Solids

Member

Hello, I am trying to analyze wave propagation along a solid. I have worked on it but I couldn't even solve the analysis. Any experience on a subject like that? Also, I have several questions.

1-) How can I introduce waves into the system? The only examples that I have found use a fluid enclosure such as air. How can I set-up the model to propagate waves along a solid?

2-) Which component should I use for this kind of analysis? Harmonic Acoustics maybe?

• Member
edited October 30

Hi

We need to use the transient structural or explicit dynamics system for waves in solids (not acoustics). THis is because in solids we have longitudinal/pressure and shear waves (plus lots of other waves like guided and surface waves that are combinations of these two wave types - see image below), so we can not use the acoustic system, which is valid for a fluid or gas (say air) where we only have pressure waves.

1) In order to excite elasto-dynamic waves in solids we need to apply a transient load (force or pressure), in the transient or explicit dynamic systems.

2) We can not use a harmonic system (since we need a transient force and not a harmonic one, and also as mentioned above in solids we have both shear and pressure/P waves, and not only pressure waves like we have in acoustics, so acoustics can not be used).

Thank you

Erik

• Member
edited October 30

Hi Erik,

I would like to thank you for this valuable info. It seems like I completely misunderstood what Acoustics expansion can do and cannot do.

I will keep working on it and keep this post updated.

Thanks a lot again.

Edit: Do you have any tutorial or example for generating waves by transient structural or explicit dynamics by any chance?

• Member

Hello Peter, thank you for providing this link. I have a question if you do not mind.

How can excite a structure at ultrasonic frequencies? I have found a signal function which includes exponential functions, when I input this function into ANSYS as force component, the force values are always zero. However, when I try a function such as = 100*sin(360*150e3*time)*sin(360*15e3*time), it just works. I think it has something to do with the exponential functions. Any ideas about this? Or where can I find a wave function what excites the structure at a specific frequency?

• Member
edited November 3

@brnbln Just use Excel or matlab to create a table of (time, pressure) from the equation, then copy that data into a Transient Structural analysis. Open Mechanical and paste that data into the tabular input for a Pressure scoped to a face. You have to enter an End Time in the Analysis settings at least as large as the last time value in your table to have success at pasting the data. When you paste thousands of rows into Mechanical, it will take a very long time so be patient.

I can build you a wavelet pulse that excites a specific frequency using the vibrationdata GUI in matlab. What frequency and amplitude did you want?

The Problem of using FEA Simulation for Ultrasound Frequencies

I did a "back of the envelope" calculation to scope out the problem for pressure waves (longitudinal). As Erik points out, there are shear waves, but they typically have slower speeds.

What is the maximum frequency, f, of ultrasound you want to use? Typical medical ultrasound goes between 1 and 18 MHz.

Do you know the speed of sound, c, in your material? The speed of sound in bone is 2811 m/s.

Let's calculate the wavelength of a 15 MHz sound in bone: lambda = c/f = 2811/15e6 = 0.187 mm.

At least 6 quadratic elements are needed along one wavelength to adequately represent the wave. That means the maximum element size in the model would be 0.031 mm for 15 MHz. If you take a 10 mm cube of material, and mesh it with 0.5 mm elements (16 times too large), you end up with > 35000 nodes. With the Student license, the limit on nodes + elements is 32000 before it will not solve.

Even if you are on a Research license, a 10 mm cube of material with an element size of 0.1 mm (3.2 times too large) creates 4 million nodes connecting 1 million quadratic elements, so a 0.031 mm element size would create a very large model on a very tiny sample. How large is your body?

It is difficult to use the Finite Element Method for ultrasound. Other methods such as the Boundary Element Method were developed to solve this kind of problem.

• Member
edited November 3

Definitely as Peter says we need a size where we have 6-10 elements per wavelength - also the time step is to have 10 time steps in every excitation cycle.

So a student licence will be not enough since you will need many elements even for small samples.

So for these reasons one can use explicit codes that can be heavily parallelised (so using many cores).

One can use LS-Dyna and Autodyn, but again you have a size limit (nodes and elements). The time step in these cases is dt =0.9 * (c_speedsound/element length).

Some indication on speed up can be seen when using CPU and graphic card acceleration (solution) - see the Imperial college website (Dr Peter Huthwaite) as reference

Thank you

Erik

• Member

Hi again, thank you for explanations and advices. You are right about element and node limit. I only can get my hands on student license, which is limited to 32000 nodes/elements as you indicated. My actual (real-life) geometry will be lot bigger, I have to shrink my model. I have made calculations, I have managed to stay under node limit and made some analysis. It seems like I am on the right path, I can see the waves propagating by animating in bigger scales on Workbench but I cannot animate the results as at the image which provided by @ekostson . Do you have any recommendations about that?

• Member
edited November 9

Please insert an image of your model with the mesh and a snapshot of the pressure wave contour plot.

• Member

Hi Peter, you can find the images at the attachments. I can not find pressure wave contour plot option, so I can not provide it. Instead, I can provide strain, stress or deformation plots. I have fixed the XY plane and excited the structure through Z-direction with a sinusoidal displacement function. Another thing is, I would like to insert another loadstep and remove the sinusoidal displacement. I have tried it by inserting another load step but I have not been able to remove displacement function only in load step number to. To clarify, I would like to apply displacement at loadstep 1 and remove the displacement at loadstep 2.