I wonder if it could be posible to simulate the problem of impedance tube (air-solid-air) with K-wave.
Thank you!
I wonder if it could be posible to simulate the problem of impedance tube (air-solid-air) with K-wave.
Thank you!
Hi Sergio,
This probably isn't the best way to model such a problem as we can't specify specific boundary conditions. You'd be better off using a finite element model. k-Wave can model reflecting surfaces by making the material properties different in different regions. There are two possible sources of error that could be a problem if you model an impedance tube in k-Wave. First, any impedance tubes are circular and care would have to be taken to ensure the errors from 'staircasing' were minimal (ie. it would be necessary to ensure there were sufficient points-per-wavelength). Second, if it's an air-filled solid (eg. steel) tube, then the contrast in the material properties may be too large for k-Wave to be accurate. It can cope well with differences in material properties up to about 400% or so.
Hope that helps,
Ben
Hi Ben,
Thank you for your quick response. I'm not an expert in acoustics field, because I am starting with this right now. Do you think the material of the tube is important to simulate the problem? I only want to obtain properties of the solid (porous) sample of acoustic material (inside air or other fluids) to know its absorbance and other acoustics properties at different frequencies, always with plane waves. Related to this, I want to know if the range of frequency is automatically defined by the grid size or can I choose the frequencies of the source (I am looking for accurate solutions but at range o freq. from 50Hz to 20KHz).
Thanks again!
Hi Sergio,
In an impedance tube, below a certain frequency there will only be plane waves propagating. If you are confident you are in this regime then you can model the problem one-dimensionally, and the walls of the impedance tube will not be important. However, if you are doing the modelling to work out what is going on at higher frequencies, then the material will be important and k-Wave is unlikely to be the best choice.
The range of supported frequencies is fixed by the grid spacing: whichever is that largest of dx
, dy
, dz
. If you try to input frequencies above that, the grid can't support them: the wavelengths are shorter than the spacing between the gird points.
Ben
Thank you Ben. That exactly what I am looking for. I only want to obtain the absorption and transmission properties of a known material with low frequencies planar waves. I want an accurate solution of the absorption coefficient at different frequencies, so I need a fine grid; but I do not know how to specify the frequency of the source, independently of the grid size, because maybe my grid can capture high freqs. (MHz) but I am only interested in low freqs.(KHz). Could you provide me a similar example code?. Thank you so much.
Hi Sergio,
If you only want to consider plane waves, then I would suggest using the function kspaceFirstOrder1D
. There are several examples of how to use this function within the toolbox, e.g., Simulations In One Dimension and Modelling Power Law Absorption (these are available through the MATLAB help browser).
The size of the grid doesn't affect the frequency of the source per se, just the maximum frequency that can be used in your simulation. There is more information in Section 3.2 of the k-Wave manual.
Hope that helps,
Brad.
You must log in to post.