Jpp test-rotations-old
the software that should make you happy
Loading...
Searching...
No Matches
JACOUSTICS::JAttenuationLength Struct Reference

Auxiliary data structure for calculation of attenuation length. More...

#include <JAcousticsSupportkit.hh>

Public Member Functions

 JAttenuationLength (const double T, const double S, const double pH)
 Constructor.
 
double operator() (const double D_m, const double f_kHz) const
 Get attentuation length for given frequency at given depth.
 

Public Attributes

double T
 
double S
 
double pH
 

Detailed Description

Auxiliary data structure for calculation of attenuation length.

Attenuation according to Ainslie and McColm, J. Acoust. Soc. AM. 103 (3) 1671 1998.
See also http://resource.npl.co.uk/acoustics/techguides/seaabsorption/physics.html for numerical values.

Definition at line 30 of file JAcousticsSupportkit.hh.

Constructor & Destructor Documentation

◆ JAttenuationLength()

JACOUSTICS::JAttenuationLength::JAttenuationLength ( const double T,
const double S,
const double pH )
inline

Constructor.

Parameters
Ttemperature [C]
Ssalinity [pm]
pHpH

Definition at line 38 of file JAcousticsSupportkit.hh.

Member Function Documentation

◆ operator()()

double JACOUSTICS::JAttenuationLength::operator() ( const double D_m,
const double f_kHz ) const
inline

Get attentuation length for given frequency at given depth.

Parameters
D_mdepth [m]
f_kHzfrequency [kHz]
Returns
attenuation length [m]

Definition at line 54 of file JAcousticsSupportkit.hh.

56 {
57 const double z = D_m * 1.0e-3;
58 const double f1 = 0.78 * sqrt(S/35.0) * exp(T/26.0);
59 const double f2 = 42.0 * exp(T/17.0);
60 const double a1 = 0.106 * f1*(f_kHz*f_kHz) / (f_kHz*f_kHz + f1*f1) * exp((pH-8.0)/0.56);
61 const double a2 = 0.52 * (1.0 + T/43.0) * (S/35.0) * f2 * f_kHz*f_kHz / (f_kHz*f_kHz + f2*f2) * exp(-z/6.0);
62 const double a0 = 0.00049 * exp(-T/27.0 + z/17.0) * f_kHz*f_kHz;
63 const double A = a0 + a1 + a2; // dB/km
64
65 return 10.0e3 / (A*log(10.0));
66 }
const JPolynome f1(1.0, 2.0, 3.0)
Function.

Member Data Documentation

◆ T

double JACOUSTICS::JAttenuationLength::T

Definition at line 68 of file JAcousticsSupportkit.hh.

◆ S

double JACOUSTICS::JAttenuationLength::S

Definition at line 69 of file JAcousticsSupportkit.hh.

◆ pH

double JACOUSTICS::JAttenuationLength::pH

Definition at line 70 of file JAcousticsSupportkit.hh.


The documentation for this struct was generated from the following file: