Plane wave in the acoustics solver

Numerical methods and mathematical models of Elmer
Post Reply
tilbury
Posts: 4
Joined: 26 Mar 2024, 04:58
Antispam: Yes

Plane wave in the acoustics solver

Post by tilbury »

I am trying to do acoustic analysis in box-shaped air with Linearized NavierStokes equation.
I want to create a plane wave at the x=0 boundary and apply a far-field condition on the other side at x=0.1 to ensure there are no reflected waves.

The far-field conditions were set appropriately thanks to Mika's help.
viewtopic.php?t=8275

But the analysis results still seem strange to me.
From the analysis, the characteristic impedance of air was calculated as (p / ||v||) and the results in the graph below were obtained.

Image

I expected the characteristic impedance (per mass) of air to be the same value 343+0i at all locations. However, the analysis results showed that the characteristic impedance of air varies depending on the x position.
I think it's probably because I gave the plane wave condition incorrectly. The current plane wave boundary conditions are as follows.

Boundary Condition 1
Name = "Radiator"
Target Boundaries(1) = 1
Im Surface Traction 1 = Real 1
Calculate Acoustic Impedance = Logical True
End

The full sif is as follows.

Code: Select all

Header
  CHECK KEYWORDS Warn
  Mesh DB "." "."
  Include Path ""
  Results Directory ""
End

Simulation
  Max Output Level = 5
  Coordinate System = Cartesian 3D
  Coordinate Mapping(3) = 1 2 3
  Simulation Type = Steady state
  Steady State Max Iterations = 1
  Steady State Min Iterations = 1
  Output Intervals(1) = 1
  Solver Input File = case.sif
  Post File = case.vtu
  Frequency = Real MATC "f"
$ f = 1000.0
$ U = 4.530183E-2
$ c = 343.0
$ p = 1.205
$ r = 1
End

Constants
  Gravity(4) = 0 -1 0 9.82
  Stefan Boltzmann = 5.670374419e-08
  Permittivity of Vacuum = 8.85418781e-12
  Permeability of Vacuum = 1.25663706e-6
  Boltzmann Constant = 1.380649e-23
  Unit Charge = 1.6021766e-19
End

Body 1
  Target Bodies(1) = 1
  Name = "Body 1"
  Equation = 1
  Material = 1
End

Solver 1
  Equation = Linearized NavierStokes
  Variable = "Flow"
  Variable DOFs = 10
  Procedure = "Acoustics" "AcousticsSolver"
  Element = "p:1 b:1" 
  Bubbles in Global System = False
  Linear System Solver = Iterative
  Linear System Iterative Method = BiCGStabl
  BiCGstabl polynomial degree = 2
  Linear System Preconditioning = ILUT
  Linear System ILUT Tolerance = 1.0e-3
  Linear System Max Iterations = 2000
  Linear System Convergence Tolerance = 1e-13
  Linear System Scaling = Logical False
  Linear System Row Equilibration = Logical True 
  Linear System Abort Not Converged = Logical True
  Linear System Residual Output = 10
End

Equation 1
  Name = "Equation 1"
  Active Solvers(1) = 1
End

Material 1
  Specific Heat = Real 1005.0
  Specific Heat Ratio = Real 1.401
  Equilibrium Density = Real MATC "p"
  Equilibrium Temperature = Real 293.15
  Heat Conductivity = Real 0.0257
  Viscosity = Real 1.983e-5
  Bulk Viscosity = Real 5.98e-06
End

Boundary Condition 1
  Name = "Radiator"
  Target Boundaries(1) = 1 
  Im Surface Traction 1 = Real MATC "2 * pi * f * p * U / c"
  Calculate Acoustic Impedance = Logical True
End

Boundary Condition 2
  Name = "Absorber"
  Target Boundaries(1) = 6 
  Re Specific Acoustic Impedance = Real MATC "-r * c"
  Im Specific Thermal Impedance = Real MATC "-2 * pi * f / (c * p)"
  Calculate Acoustic Impedance = Logical True
End

Boundary Condition 3
  Target Boundaries(4) = 2 3 4 5 
  Name = "Symmetry"
  Re Velocity 2 = 0
  Im Velocity 2 = 0
  Re Velocity 3 = 0
  Im Velocity 3 = 0
  Re Surface Traction 2 = 0
  Im Surface Traction 2 = 0
  Re Surface Traction 3 = 0
  Im Surface Traction 3 = 0
End
Is it normal for the characteristic impedance value to change like this?

In the Helmholtz solver, it was possible to create a plane wave by setting the imaginary part of the flux as shown below.
Wave Flux 2 = Real 18.3183
What is the correct way to apply plane wave boundary condition in the acoustics solver?
mika
Posts: 236
Joined: 15 Sep 2009, 07:44

Re: Plane wave in the acoustics solver

Post by mika »

Some comments on the BC named as "symmetry":

- to obtain symmetry the normal component of the velocity should be set to be zero, together with the do-nothing (default) BC for the temperature
- if a component of velocity is specified, the corresponding component of the surface traction cannot be specified at the same time

In addition, I think the value of specific thermal impedance shouldn't depend on the density, so should one write Im Specific Thermal Impedance = Real MATC "-2 * pi * f / c"? Outside viscous and thermal boundary layers the ratio between the pressure and fluid velocity for a propagating plane wave should be close to the product of sound speed and density.
Post Reply