epsalt.inc

References to this file elsewhere.
1 
2       subroutine epsalt(f,t,ssw,epsr,epsi)
3 !     returns the complex dielectric constant of sea water, using the
4 !     model of Klein and Swift (1977)
5 !
6 !     Input   f = frequency (GHz)
7 !             t = temperature (C)
8 !             ssw = salinity (permil) (if ssw < 0, ssw = 32.54)
9 !     Output  epsr,epsi  = real and imaginary parts of dielectric constant
10 
11       real, intent(in    ) :: f,t
12       real, intent(inout ) :: ssw
13       real, intent(out   ) :: epsr,epsi
14       real :: pi
15       real :: ssw2,ssw3,t2,t3,es,a,tau,b,delt
16       real :: beta,sig,delt2,om
17 
18       complex cdum1,cdum2,cdum3
19       parameter (pi = 3.14159265)
20 !
21       if (ssw .lt. 0.0) ssw = 32.54
22       ssw2 = ssw*ssw
23       ssw3 = ssw2*ssw
24       t2 = t*t
25       t3 = t2*t
26       es = 87.134 - 1.949e-1*t - 1.276e-2*t2 + 2.491e-4*t3
27       a = 1.0 + 1.613e-5*ssw*t - 3.656e-3*ssw + 3.21e-5*ssw2 - &
28          4.232e-7*ssw3
29       es = es*a
30 !
31       tau = 1.768e-11 - 6.086e-13*t + 1.104e-14*t2 - 8.111e-17*t3
32       b = 1.0 + 2.282e-5*ssw*t - 7.638e-4*ssw - 7.760e-6*ssw2 + &
33          1.105e-8*ssw3
34       tau = tau*b
35 !
36       sig = ssw*(0.182521 - 1.46192e-3*ssw + 2.09324e-5*ssw2 - &
37          1.28205e-7*ssw3)
38       delt = 25.0 - t
39       delt2 = delt*delt
40       beta = 2.033e-2 + 1.266e-4*delt + 2.464e-6*delt2 - &
41          ssw*(1.849e-5 - 2.551e-7*delt + 2.551e-8*delt2)
42       sig = sig*exp(-beta*delt)
43 !
44       om = 2.0e9*pi*f
45       cdum1 = cmplx(0.0,om*tau)
46       cdum2 = cmplx(0.0,sig/(om*8.854e-12))
47 
48       cdum3 = 4.9 + (es-4.9)/(1.0 + cdum1) - cdum2
49       epsr = real(cdum3)
50       epsi = -aimag(cdum3)
51 
52       end subroutine epsalt
53