ArrMod Module

Management of acoustic arrival data including storage, sorting, and output formatting


Uses

  • module~~arrmod~~UsesGraph module~arrmod ArrMod module~bellhopmod bellhopMod module~arrmod->module~bellhopmod module~mathconstants MathConstants module~arrmod->module~mathconstants module~bellhopmod->module~mathconstants

Used by

  • module~~arrmod~~UsedByGraph module~arrmod ArrMod module~influence Influence module~influence->module~arrmod module~influence3d Influence3D module~influence3d->module~arrmod proc~bellhopcore BellhopCore proc~bellhopcore->module~arrmod proc~bellhopcore~2 BellhopCore proc~bellhopcore~2->module~arrmod program~bellhop BELLHOP program~bellhop->module~influence program~bellhop3d BELLHOP3D program~bellhop3d->module~influence program~bellhop3d->module~influence3d

Variables

Type Visibility Attributes Name Initial
real, public, parameter :: PhaseTol = 0.05
integer, public :: MaxNArr
integer, public, ALLOCATABLE :: NArr(:,:)
integer, public, ALLOCATABLE :: NArr3D(:,:,:)
real(kind=4), public :: factor = 1.0
type(Arrival), public, ALLOCATABLE :: Arr(:,:,:)
type(Arrival), public, ALLOCATABLE :: Arr3D(:,:,:,:)

Derived Types

type, public ::  Arrival

Components

Type Visibility Attributes Name Initial
integer, public :: NTopBnc
integer, public :: NBotBnc
real, public :: SrcDeclAngle
real, public :: SrcAzimAngle
real, public :: RcvrDeclAngle
real, public :: RcvrAzimAngle
real, public :: A
real, public :: Phase
complex, public :: delay

Subroutines

public subroutine AddArr(omega, id, ir, Amp, Phase, delay, SrcDeclAngle, RcvrDeclAngle, NumTopBnc, NumBotBnc)

Adds an arrival to the arrival data structure

Arguments

Type IntentOptional Attributes Name
real(kind=8), intent(in) :: omega
integer, intent(in) :: id
integer, intent(in) :: ir
real(kind=8), intent(in) :: Amp
real(kind=8), intent(in) :: Phase
complex(kind=8), intent(in) :: delay
real(kind=8), intent(in) :: SrcDeclAngle
real(kind=8), intent(in) :: RcvrDeclAngle
integer, intent(in) :: NumTopBnc
integer, intent(in) :: NumBotBnc

public subroutine WriteArrivalsASCII(r, Nrd, Nr, SourceType)

Writes arrival data in ASCII format

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: r(Nr)
integer, intent(in) :: Nrd
integer, intent(in) :: Nr
character(len=1), intent(in) :: SourceType

public subroutine WriteArrivalsBinary(r, Nrd, Nr, SourceType)

Writes arrival data in binary format

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: r(Nr)
integer, intent(in) :: Nrd
integer, intent(in) :: Nr
character(len=1), intent(in) :: SourceType

public subroutine AddArr3D(omega, itheta, id, ir, Amp, Phase, delay, SrcDeclAngle, SrcAzimAngle, RcvrDeclAngle, RcvrAzimAngle, NumTopBnc, NumBotBnc)

Adds the amplitude and delay for an ARRival into a matrix of same.

Arguments

Type IntentOptional Attributes Name
real(kind=8), intent(in) :: omega
integer, intent(in) :: itheta
integer, intent(in) :: id
integer, intent(in) :: ir
real(kind=8), intent(in) :: Amp
real(kind=8), intent(in) :: Phase
complex(kind=8), intent(in) :: delay
real(kind=8), intent(in) :: SrcDeclAngle
real(kind=8), intent(in) :: SrcAzimAngle
real(kind=8), intent(in) :: RcvrDeclAngle
real(kind=8), intent(in) :: RcvrAzimAngle
integer, intent(in) :: NumTopBnc
integer, intent(in) :: NumBotBnc

public subroutine WriteArrivalsASCII3D(r, Ntheta, Nrd, Nr)

Writes the arrival data (Amplitude, delay for each eigenray); ASCII output file

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: r(Nr)
integer, intent(in) :: Ntheta
integer, intent(in) :: Nrd
integer, intent(in) :: Nr

public subroutine WriteArrivalsBinary3D(r, Ntheta, Nrd, Nr)

Writes the arrival data (amplitude, delay for each eigenray); Binary output file

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: r(Nr)
integer, intent(in) :: Ntheta
integer, intent(in) :: Nrd
integer, intent(in) :: Nr