AttenMod Module

Acoustic attenuation calculations including volume attenuation formulas and unit conversions

Converts real wave speed and attenuation to complex wave speed Computes Francois-Garrison volume attenuation


Uses

  • module~~attenmod~~UsesGraph module~attenmod AttenMod module~fatalerror FatalError module~attenmod->module~fatalerror

Used by

  • module~~attenmod~~UsedByGraph module~attenmod AttenMod module~readenvironmentbell ReadEnvironmentBell module~readenvironmentbell->module~attenmod proc~bellhopcore~2 BellhopCore proc~bellhopcore~2->module~attenmod proc~readssp ReadSSP proc~readssp->module~attenmod program~bellhop BELLHOP program~bellhop->module~readenvironmentbell program~bellhop3d BELLHOP3D program~bellhop3d->module~readenvironmentbell

Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: MaxBioLayers = 200
integer, public :: iBio
integer, public :: NBioLayers
real(kind=8), public :: T = 20
real(kind=8), public :: Salinity = 35
real(kind=8), public :: pH = 8
real(kind=8), public :: z_bar = 0
real(kind=8), public :: FG
type(bioStructure), public :: bio(MaxBioLayers)

Derived Types

type, public ::  bioStructure

Components

Type Visibility Attributes Name Initial
real(kind=8), public :: Z1
real(kind=8), public :: Z2
real(kind=8), public :: f0
real(kind=8), public :: Q
real(kind=8), public :: a0

Functions

public function CRCI(z, c, alpha, freq, freq0, AttenUnit, beta, fT)

Arguments

Type IntentOptional Attributes Name
real(kind=8), intent(in) :: z
real(kind=8), intent(in) :: c
real(kind=8), intent(in) :: alpha
real(kind=8), intent(in) :: freq
real(kind=8), intent(in) :: freq0
character(len=2), intent(in) :: AttenUnit
real(kind=8), intent(in) :: beta
real(kind=8), intent(in) :: fT

Return Value complex(kind=8)

public function Franc_Garr(f)

Arguments

Type IntentOptional Attributes Name
real(kind=8), intent(in) :: f

Return Value real(kind=8)