Skip to content

Files

Latest commit

e70ba7f · Dec 3, 2024

History

History

2D-square-noise-example

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Dec 3, 2024
Nov 11, 2024
Dec 3, 2024
Dec 3, 2024
Dec 3, 2024
Nov 11, 2024
Dec 3, 2024
Dec 3, 2024
Nov 11, 2024

Unit Square Domain with Noisy Data

2D Plane wave propagation with noise in unit square domain.

  • Domain, Ω = ( 0 , 1 ) × ( 0 , 1 )
  • Boundary Conditions
    • Rigid boundary, u n = 0 at x = 0 and x = 1 ,
    • Pressure p = 1.0 at y = 0 ,
    • Impedance Z = 1.0 at y = 1 .

The boundary conditions are expressly chosen such that the exact solution can be computed analytically and the errors can be computed.

The exact solution here is given as,

u ex ( x , y ) = i p 0 k exp ( i k x ) e y , p ex ( x , y ) = p 0 exp ( i k y ) .

However, a noise field χ h ( x , y ) is added into this displacement field when included, i.e.

u SNR ( x , y ) = u ex ( x , y ) ( 1 + χ h ( x , y ) SNR ) .

Here, χ h ( x , y ) is the interpolated Gaussian noise N ( 0 , 1 ) , while the parameter SNR is the Signal-to-Noise ratio and varied between different runs.

Errors are computed for a range of mesh resolutions for interpolated exact displacement field. Errors are also computed for different projection techniques proposed for one and two orders of approximation.

Run

The following instructions run the example assuming you are in the current directory.

An automated script main.jl is provided to run scripts in a particular order,

julia +1.11.0 --project=.. main.jl

This should generate the meshes of various resolutions in the meshes folder. All output fields are written within .jld2 files and visualizations in .pdf files within the results folder.