New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
phycst.f90 in utils/tools/SIREN/src – NEMO

source: utils/tools/SIREN/src/phycst.f90 @ 13369

Last change on this file since 13369 was 13369, checked in by jpaul, 4 years ago

update: cf changelog inside documentation

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