Home > atmlab > h2o > parametrisations > eps_water_liebe93.m

eps_water_liebe93

PURPOSE ^

EPS_WATER_LIEBE93 Dielectric constant for pure water according to Liebe 93

SYNOPSIS ^

function e = eps_water_liebe93( f, t, modT )

DESCRIPTION ^

 EPS_WATER_LIEBE93   Dielectric constant for pure water according to Liebe 93

    Provides the complex dielectric constant following the Liebe 1993
    paper.

    Note that the function *epswater93* solves the same task. This function
    was primarily implemented to compare if different versions of the 
    mathematical expressions give the same result (which they did). In fact,
    this function contains two parallel versions, giving identical
    results. This function uses just SI units for input arguments, in 
    contrast to *epswater93*.

    The actual limits of the parameterisation are not known. Studies
    indicated that it degenerates for T<248K (T. Kuhn, WATS study;
    J.Mendrok, ESA planet toolbox study). Hence, the following
    limits are here applied:
      f: [ 10 MHz, 1000 GHz] 
      t: [ 248 K, 374 K ]
    The modT flags allows a workaround at lower temperatures. Then, epsilon is
    set to the one of the lowest allowed temperature (T=248K), i.e. assuming
    epsilon to be constant below 248K. 

 FORMAT    e = eps_water_liebe93( f, t [, modT] )
        
 OUT   e    Complex dielectric constant
 IN    f    Frequency
       t    Temperature
 OPT   modT flag, whether to use modified t if t<248K (liebe formula 
            degenerates at these temperatures). Default is false.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

DOWNLOAD ^

eps_water_liebe93.m

SOURCE CODE ^

0001 % EPS_WATER_LIEBE93   Dielectric constant for pure water according to Liebe 93
0002 %
0003 %    Provides the complex dielectric constant following the Liebe 1993
0004 %    paper.
0005 %
0006 %    Note that the function *epswater93* solves the same task. This function
0007 %    was primarily implemented to compare if different versions of the
0008 %    mathematical expressions give the same result (which they did). In fact,
0009 %    this function contains two parallel versions, giving identical
0010 %    results. This function uses just SI units for input arguments, in
0011 %    contrast to *epswater93*.
0012 %
0013 %    The actual limits of the parameterisation are not known. Studies
0014 %    indicated that it degenerates for T<248K (T. Kuhn, WATS study;
0015 %    J.Mendrok, ESA planet toolbox study). Hence, the following
0016 %    limits are here applied:
0017 %      f: [ 10 MHz, 1000 GHz]
0018 %      t: [ 248 K, 374 K ]
0019 %    The modT flags allows a workaround at lower temperatures. Then, epsilon is
0020 %    set to the one of the lowest allowed temperature (T=248K), i.e. assuming
0021 %    epsilon to be constant below 248K.
0022 %
0023 % FORMAT    e = eps_water_liebe93( f, t [, modT] )
0024 %
0025 % OUT   e    Complex dielectric constant
0026 % IN    f    Frequency
0027 %       t    Temperature
0028 % OPT   modT flag, whether to use modified t if t<248K (liebe formula
0029 %            degenerates at these temperatures). Default is false.
0030 
0031 % 2004-10-22   Created by Patrick Eriksson
0032 % 2013-10-04   Jana Mendrok introduced modT flag
0033 
0034 
0035 function e = eps_water_liebe93( f, t, modT )
0036 
0037 % Expressions directly from the Liebe 93 paper
0038 
0039 if ~exist('modT', 'var') || isempty(modT); modT=0; end
0040 
0041 fghz  = f/1e9;
0042 if fghz<0.01  |  fghz>1000
0043   error('Valid range for frequency is 0.01-1000 GHz'); 
0044 end
0045 
0046 if t>374
0047   error('Temperature above valid range (248-374 K)'); 
0048 end
0049 if t<248
0050   if modT
0051     theta = 300 ./ 248.;
0052   else
0053     error('Temperature below valid range (248-374 K)');
0054   end
0055 else
0056   theta = 300 ./ t;
0057 end
0058 
0059 
0060 e0 = 77.66 + 103.3 * ( theta - 1 );
0061 e1 = 0.0671 * e0;
0062 e2 = 3.52;
0063 
0064 g1 = 20.2 - 146 * ( theta -1 ) + 316 * ( theta -1 ).^2;
0065 g2 = 39.8 * g1;
0066 
0067 % epswater93 uses 146.4, but the 1993 paper says just 146
0068 % With 146.4 exactly the same results are obtained.
0069 
0070 e  = e0 - fghz .* ( (e0-e1)./(fghz+i*g1) + (e1-e2)./(fghz+i*g2) );

Generated on Mon 15-Sep-2014 13:31:28 by m2html © 2005