# Acoustics in one dimension¶

The linearized acoustic equations can be derived from Navier-Stokes equations (which we solve in the example The compressible Navier-Stokes equations).

Considering an ideal gas with negligible viscosity Navier-Stokes equations are reduced to the compressible Euler equations:

Here we consider the one dimensional case and small perturbations around a known flow state \((1/\gamma, a(x), \rho_0(x))\). That is we replace

and neglect small quadratic terms. The resulting linearized equations are

This module considers three different cases

- Zero mean flow, \(a(x) = 0\) and constant mean density, \(\rho_0(x) = 1\).
- Constant mean flow, \(a(x) = a\) and constant density, \(\rho_0(x) = 1\).
- Variable mean flow with variable density.

## Case 1, zero mean flow and constant mean density¶

For this case the equations for the pressure and velocity are reduced to

The evolution of the above system using wall boundary conditions \(v = 0\) on both sides (which by using the PDE also means \(p_x = 0\)) and with the exact solution

is implemented in the file `/chides/acoustic/1D/acoustics1d_wall.f90`

Add description of PDE.Add description of enforcing BC.

## Case 2, Constant mean flow, \(a(x) = a\) and constant density \(\rho_0(x) = 1\)¶

For this case the equations for the pressure and velocity are reduced to

For this problem we consider periodic boundary conditions, as
implemented in `/chides/acoustic/1D/acoustics1d_per.f90`

and
characteristics based non-reflecting boundary conditions as
implemented in `/chides/acoustic/1D/acoustics1d_cbc.f90`

.

Add description of CBC, equations.Add description of CBC, how the extrapolation is done.

## Case 3, Varying mean flow and density with source terms¶

For this case the equations for the pressure and velocity are reduced to

which we reformulate as

For this problem we consider periodic boundary conditions, as
implemented in `/chides/acoustic/1D/acoustics1d_var.f90`

.

Add description of how`cofs(a,s,f_p,f_v,mp,dx,x,t)`

is used.Explain polynomial multiplication.Explain`point_to_Taylor`

.Explain the RK4 procedure.