ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_physUnit.F90
Go to the documentation of this file.
1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3!!!! !!!!
4!!!! ParaMonte: Parallel Monte Carlo and Machine Learning Library. !!!!
5!!!! !!!!
6!!!! Copyright (C) 2012-present, The Computational Data Science Lab !!!!
7!!!! !!!!
8!!!! This file is part of the ParaMonte library. !!!!
9!!!! !!!!
10!!!! LICENSE !!!!
11!!!! !!!!
12!!!! https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md !!!!
13!!!! !!!!
14!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
15!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
38
39!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
40
42
43 use pm_kind, only: SK, RKB
44
45 implicit none
46
47 character(*,SK), parameter :: MODULE_NAME = "@pm_physUnit"
48
59 type uncertain_type
60 real(RKB) :: val
61 real(RKB) :: std
62 end type
63
64 real(RKB) , parameter :: PI = acos(-1._RKB)
65 real(RKB) , parameter :: NAPIER = exp(1._RKB)
66 real(RKB) , parameter :: AU2METER = 149597870700._RKB
67 real(RKB) , parameter :: DEGREE2RADIAN = PI / 180._RKB
68 real(RKB) , parameter :: ARCMIN2RADIAN = PI / 10800._RKB
69 real(RKB) , parameter :: ARCSEC2RADIAN = PI / 648000._RKB
70 type(uncertain_type) , parameter :: DALTON2KG = uncertain_type(1.660539040e-27_RKB, 2.e-35_RKB)
71 real(RKB) , parameter :: EV2JOULES = 1.602176634e-19_RKB
77 real(RKB) , parameter :: JOULES2ERGS = 1.e+7_RKB
78 real(RKB) , parameter :: ERGS2JOULES = 1.e-7_RKB
79 real(RKB) , parameter :: KEV2ERGS = 1000 * EV2JOULES * JOULES2ERGS
80 real(RKB) , parameter :: ERGS2KEV = 1._RKB / KEV2ERGS
81
82end module pm_physUnit ! LCOV_EXCL_LINE
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter RKB
The scalar integer constant of intrinsic default kind, representing the Best-precision real kind supp...
Definition: pm_kind.F90:1371
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
This module contains relevant physical constants.
Definition: pm_physUnit.F90:41
real(RKB), parameter JOULES2ERGS
The scalar constant of type real of kind RKB representing one Joules of energy in ergs.
Definition: pm_physUnit.F90:77
type(uncertain_type), parameter DALTON2KG
The scalar constant of type real of kind RKB representing one Dalton in kilograms.
Definition: pm_physUnit.F90:70
real(RKB), parameter ARCMIN2RADIAN
The scalar constant of type real of kind RKB representing one arcminute in radians.
Definition: pm_physUnit.F90:68
character(*, SK), parameter MODULE_NAME
Definition: pm_physUnit.F90:47
real(RKB), parameter DEGREE2RADIAN
The scalar constant of type real of kind RKB representing one degree in radians.
Definition: pm_physUnit.F90:67
real(RKB), parameter PI
The scalar constant of type real of kind RKB representing the irrational number .
Definition: pm_physUnit.F90:64
real(RKB), parameter AU2METER
The scalar constant of type real of kind RKB representing one astronomical unit unit of length in met...
Definition: pm_physUnit.F90:66
real(RKB), parameter ARCSEC2RADIAN
The scalar constant of type real of kind RKB representing one arcsecond in radians.
Definition: pm_physUnit.F90:69
real(RKB), parameter NAPIER
The scalar constant of type real of kind RKB representing the Napier constant (a.k....
Definition: pm_physUnit.F90:65
real(RKB), parameter EV2JOULES
The scalar constant of type real of kind RKB representing one electronvolt in Joules....
Definition: pm_physUnit.F90:71
real(RKB), parameter ERGS2KEV
The scalar constant of type real of kind RKB representing one ergs of energy in kilo-electronvolts.
Definition: pm_physUnit.F90:80
real(RKB), parameter KEV2ERGS
The scalar constant of type real of kind RKB representing one kilo-electronvolts of energy in ergs.
Definition: pm_physUnit.F90:79
real(RKB), parameter ERGS2JOULES
The scalar constant of type real of kind RKB representing one ergs of energy in Joules.
Definition: pm_physUnit.F90:78
This the derived type for constructing physical constants or unit conversions that are uncertain.
Definition: pm_physUnit.F90:59