HungryAmoeba / acoustics

Reflection coefficient calculations
1 stars 0 forks source link

help-seeking #1

Closed corgi2580 closed 2 years ago

corgi2580 commented 2 years ago

Thank you bloggers for sharing. Your program is great. I am a graduate student at Chongqing Jiaotong University in China, just beginning to learn acoustic reflection. I want to ask how to solve the reflection coefficient of multi-layer porous ice and how to get the data that the x-axis is the incident angle and the y-axis is the reflection coefficient. My contact information is 2580298717@ qq.com example

HungryAmoeba commented 2 years ago

Hi, thanks for your message! There are several ways you should be able to get the reflection coefficient for multi-layer porous ice from the program. The most direct way is to use subroutines/rayleigh_strat.m. Simply input the densities of the layers of your ice as an array called rho, sound speed of each layer as an array called c, the thickness of the layers in an array called h, the incident angle as theta, frequency as frequency, and k_arr to be the wavenumber (although this is an optional parameter). A more recommended approach is to use subroutines/reflection_coeff.m. Simply pass in the vertical wavenumber (you can convert incident angle to horizontal wavenumber), densities of the layers as an array, wavenumbers of the layers, and heights of the layers. Hopefully this helps. Please let me know if you have a more specific use case that I can help set you up with, or an example code!

corgi2580 commented 2 years ago

Hi, thanks for your message! There are several ways you should be able to get the reflection coefficient for multi-layer porous ice from the program. The most direct way is to use subroutines/rayleigh_strat.m. Simply input the densities of the layers of your ice as an array called rho, sound speed of each layer as an array called c, the thickness of the layers in an array called h, the incident angle as theta, frequency as frequency, and k_arr to be the wavenumber (although this is an optional parameter). A more recommended approach is to use subroutines/reflection_coeff.m. Simply pass in the vertical wavenumber (you can convert incident angle to horizontal wavenumber), densities of the layers as an array, wavenumbers of the layers, and heights of the layers. Hopefully this helps. Please let me know if you have a more specific use case that I can help set you up with, or an example code!

Thank you ,that's impressive.