[4213] | 1 | !---------------------------------------------------------------------- |
---|
| 2 | ! NEMO system team, System and Interface for oceanic RElocable Nesting |
---|
| 3 | !---------------------------------------------------------------------- |
---|
| 4 | ! |
---|
| 5 | ! MODULE: phycst |
---|
| 6 | ! |
---|
| 7 | ! DESCRIPTION: |
---|
| 8 | !> @brief This module defines physical constant. |
---|
| 9 | ! |
---|
| 10 | !> @author |
---|
| 11 | !> J.paul |
---|
| 12 | ! REVISION HISTORY: |
---|
[5037] | 13 | !> @date November, 2013 - Initial Version |
---|
[6393] | 14 | !> @date September, 2015 |
---|
| 15 | !> - add physical constant to compute meshmask |
---|
[4213] | 16 | ! |
---|
| 17 | !> @note Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) |
---|
| 18 | !---------------------------------------------------------------------- |
---|
| 19 | MODULE phycst |
---|
| 20 | USE kind ! F90 kind parameter |
---|
| 21 | |
---|
| 22 | IMPLICIT NONE |
---|
| 23 | ! NOTE_avoid_public_variables_if_possible |
---|
| 24 | |
---|
[5037] | 25 | PUBLIC :: dp_pi !< pi |
---|
| 26 | PUBLIC :: dp_eps !< epsilon value |
---|
[6393] | 27 | PUBLIC :: dp_rearth !< earth radius [m] |
---|
[5037] | 28 | PUBLIC :: dp_deg2rad !< degree to radian ratio |
---|
[5609] | 29 | PUBLIC :: dp_rad2deg !< radian to degree ratio |
---|
[5037] | 30 | PUBLIC :: dp_delta !< |
---|
[6393] | 31 | PUBLIC :: dp_omega !< earth rotation parameter [s-1] |
---|
| 32 | PUBLIC :: dp_day !< day [s] |
---|
| 33 | PUBLIC :: dp_siyea !< sideral year [s] |
---|
| 34 | PUBLIC :: dp_siday !< sideral day [s] |
---|
[4213] | 35 | |
---|
[6393] | 36 | REAL(wp), PUBLIC :: rday = 24.*60.*60. !: day [s] |
---|
| 37 | REAL(wp), PUBLIC :: rsiyea !: sideral year [s] |
---|
| 38 | REAL(wp), PUBLIC :: rsiday !: sideral day [s] |
---|
| 39 | |
---|
[5037] | 40 | REAL(dp), PARAMETER :: dp_pi = 3.14159274101257_dp |
---|
| 41 | REAL(dp), PARAMETER :: dp_eps = EPSILON(1._dp) |
---|
[6393] | 42 | REAL(dp), PARAMETER :: dp_rearth = 6371229._dp |
---|
[5037] | 43 | REAL(dp), PARAMETER :: dp_deg2rad = dp_pi/180.0 |
---|
[5609] | 44 | REAL(dp), PARAMETER :: dp_rad2deg = 180.0/dp_pi |
---|
[5037] | 45 | |
---|
[6393] | 46 | REAL(dp), PARAMETER :: dp_day = 24.*60.*60. |
---|
| 47 | REAL(dp), PARAMETER :: dp_siyea = 365.25_wp * dp_day * & |
---|
| 48 | & 2._wp * dp_pi / 6.283076_dp |
---|
| 49 | REAL(dp), PARAMETER :: dp_siday = dp_day / ( 1._wp + dp_day / dp_siyea ) |
---|
| 50 | |
---|
[5609] | 51 | REAL(dp), PARAMETER :: dp_delta=1.e-6 |
---|
[6393] | 52 | REAL(dp), PARAMETER :: dp_omega= 2._dp * dp_pi / dp_siday |
---|
[4213] | 53 | END MODULE phycst |
---|
| 54 | |
---|