UFO
gnssro_mod_constants.F90
Go to the documentation of this file.
1 !==========================================================================
3 !==========================================================================
4 
5 use kinds
6 use iso_c_binding
8 implicit none
9 public :: gnssro_ref_constants
10 real(kind_real), public :: n_a, n_b,n_c
11 integer, parameter, public :: max_string = 800
12 integer, parameter, public :: maxvarlen = 20
13 real(kind_real), parameter, public :: r1em6 = 1.0e-6_kind_real
14 real(kind_real), parameter, public :: r1em3 = 1.0e-3_kind_real
15 real(kind_real), parameter, public :: six = 6.0_kind_real
16 real(kind_real), parameter, public :: ds = 10000.0_kind_real
17 real(kind_real), parameter, public :: crit_gradrefr = 157.0_kind_real !criteria for the refractivity gradient
18 
19 contains
20 subroutine gnssro_ref_constants(use_compress)
21 implicit none
22 integer(c_int),intent(in) :: use_compress
23 
24 ! cucurull 2010, Healy 2011
25 if (use_compress .eq. 1) then
26  ! Constants for gpsro refractivity (Rueger 2002)
27  n_a = 0.776890_kind_real
28  n_b = 3.75463e3_kind_real
29  n_c = 0.712952_kind_real
30 else
31  ! Constants for gpsro refractivity (Bevis et al 1994)
32  n_a = 0.7760_kind_real
33  n_b = 3.739e3_kind_real
34  n_c = 0.704_kind_real
35 endif
36 
37 n_c = n_c - n_a
38 return
39 
40 end subroutine gnssro_ref_constants
41 
42 end module gnssro_mod_constants
43 
subroutine, public gnssro_ref_constants(use_compress)
real(kind_real), parameter, public crit_gradrefr
real(kind_real), public n_a
real(kind_real), parameter, public r1em3
real(kind_real), parameter, public six
real(kind_real), public n_b
real(kind_real), parameter, public ds
integer, parameter, public maxvarlen
integer, parameter, public max_string
real(kind_real), parameter, public r1em6
real(kind_real), public n_c