55 integer,
public,
parameter :: MAX_PATH_LEN=512
56 integer,
public,
parameter :: MAX_OUTPUT_TYPES=43
60 logical :: devel_version
61 logical :: report_memory
62 character(len=256) :: share
63 character(len=256) :: git_commit
64 character(len=50) :: config_time
65 character(len=20) :: version
66 character(len=256) :: cc
67 character(len=256) :: cflags
68 character(len=256) :: cxx
69 character(len=256) :: cxxflags
70 character(len=256) :: fc
71 character(len=256) :: fcflags
72 integer :: target_states_block_size
75 type(conf_t),
public :: conf
77 float,
public,
parameter ::
r_small = cnst(1e-8)
83 float,
public,
parameter ::
m_pi = cnst(3.1415926535897932384626433832795029)
84 float,
public,
parameter ::
m_e = cnst(2.7182818284590452353602874713526625)
85 float,
public,
parameter ::
m_zero = cnst(0.0)
86 float,
public,
parameter ::
m_one = cnst(1.0)
87 float,
public,
parameter ::
m_two = cnst(2.0)
88 float,
public,
parameter ::
m_three = cnst(3.0)
89 float,
public,
parameter ::
m_four = cnst(4.0)
90 float,
public,
parameter ::
m_five = cnst(5.0)
91 float,
public,
parameter ::
m_half = cnst(0.5)
95 cmplx,
public,
parameter ::
m_z0 = (cnst(0.0), cnst(0.0))
96 cmplx,
public,
parameter ::
m_z1 = (cnst(1.0), cnst(0.0))
97 cmplx,
public,
parameter ::
m_z2 = (cnst(2.0), cnst(0.0))
98 cmplx,
public,
parameter ::
m_z2i = (cnst(0.0), cnst(2.0))
99 cmplx,
public,
parameter ::
m_zi = (cnst(0.0), cnst(1.0))
109 float,
public,
parameter ::
p_a_b = cnst(0.52917720859)
111 float,
public,
parameter ::
p_ry = cnst(13.60569193)
113 float,
public,
parameter ::
p_kb = cnst(8.617343e-5)/(
m_two*
p_ry)
114 float,
public,
parameter ::
p_c = cnst(137.035999679)
115 float,
public,
parameter ::
p_g = cnst(2.0023193043768)
121 integer,
public :: stderr, stdin, stdout
124 integer,
public :: s_epoch_sec, s_epoch_usec
127 character(len=80),
public :: sub_stack(50)
129 integer,
public :: no_sub_stack = 0
132 logical,
public :: in_profiling_mode = .false.
134 integer,
public :: global_alloc_err
135 integer(i8),
public :: global_sizeof
136 character(len=100),
public :: global_alloc_errmsg
139 character(len=*),
public,
parameter :: GS_DIR =
"gs/"
140 character(len=*),
public,
parameter ::
td_dir =
"td/"
141 character(len=*),
public,
parameter ::
static_dir =
"static/"
142 character(len=*),
public,
parameter ::
em_resp_dir =
"em_resp/"
143 character(len=*),
public,
parameter :: EM_RESP_FD_DIR =
"em_resp_fd/"
144 character(len=*),
public,
parameter :: KDOTP_DIR =
"kdotp/"
146 character(len=*),
public,
parameter ::
vdw_dir =
"vdw/"
147 character(len=*),
public,
parameter ::
casida_dir =
"casida/"
148 character(len=*),
public,
parameter ::
oct_dir =
"opt-control/"
149 character(len=*),
public,
parameter ::
pcm_dir =
"pcm/"
165 character(len=*),
intent(in) :: s, f
166 integer,
intent(in) :: l
170 interface operator (+)
172 end interface operator (+)
193 logical,
optional,
intent(in) :: is_serial
195 character(len=256) :: share
208 if (share /=
"")
then
209 conf%share = trim(share)
211 conf%share = share_dir
213 conf%git_commit = git_commit
214 conf%config_time = build_time
215 conf%version = package_version
233 conf%target_states_block_size = -1
250 float,
optional,
intent(in) :: opt
251 float,
intent(in) :: def
254 if (
present(opt)) val = opt
260 cmplx,
optional,
intent(in) :: opt
261 cmplx,
intent(in) :: def
264 if (
present(opt)) val = opt
269 integer pure function ioptional_default(opt, def) result(val)
270 integer,
optional,
intent(in) :: opt
271 integer,
intent(in) :: def
274 if (
present(opt)) val = opt
280 integer(i8),
optional,
intent(in) :: opt
281 integer(i8),
intent(in) :: def
284 if (
present(opt)) val = opt
290 logical,
optional,
intent(in) :: opt
291 logical,
intent(in) :: def
294 if (
present(opt)) val = opt
300 character(len=*),
optional,
intent(in) :: opt
301 character(len=*),
intent(in) :: def
304 if (
present(opt)) val = opt
325 function cat(str1, str2)
326 character(len=*),
intent(in) :: str1
327 character(len=*),
intent(in) :: str2
329 character(len=len(str1) + len(str2)) ::
cat
336 integer(i8) pure function
bitand48(val1, val2)
337 integer(i4),
intent(in) :: val1
338 integer(i8),
intent(in) :: val2
346 integer(i8) pure function
bitand84(val1, val2)
347 integer(i8),
intent(in) :: val1
348 integer(i4),
intent(in) :: val2
356 integer(i8) pure function
bitand88(val1, val2)
357 integer(i8),
intent(in) :: val1
358 integer(i8),
intent(in) :: val2
366 integer(i4) pure function
bitand44(val1, val2)
367 integer(i4),
intent(in) :: val1
368 integer(i4),
intent(in) :: val2
377 integer(i4),
intent(in) :: ii
385 integer(i8),
intent(in) :: ii
393 integer(i4),
intent(in) :: ii(:)
394 integer(i8) ::
i4_to_i8_1(lbound(ii, 1, kind=i8):ubound(ii, 1, kind=i8))
402 integer(i8),
intent(in) :: ii(:)
403 integer(i4) ::
i8_to_i4_1(lbound(ii, 1, kind=i8):ubound(ii, 1, kind=i8))
This function is defined in messages.F90.
real(8), parameter, public m_five
integer(i8) pure function i4_to_i8_0(ii)
complex(8), parameter, public m_z2i
real(8), parameter, public m_e
subroutine, public global_end()
integer(i4) pure function i8_to_i4_0(ii)
real(8), parameter, public m_pi
some mathematical constants
real(8), parameter, public m_twothird
complex(8), parameter, public m_z1
real(8), parameter, public m_two
integer pure function ioptional_default(opt, def)
real(8), parameter, public p_ang
integer(i8) pure function loptional_default(opt, def)
character(len= *), parameter, public casida_dir
real(8), parameter, public r_small
character(len= *), parameter, public pcm_dir
real(8), parameter, public p_c
real(8), parameter, public m_fourth
pure integer(i8) function, dimension(lbound(ii, 1, kind=i8):ubound(ii, 1, kind=i8)) i4_to_i8_1(ii)
real(8), parameter, public m_one
real(8), parameter, public p_a_b
some physical constants
character(len= *), parameter, public vib_modes_dir
real(8), parameter, public m_min_exp_arg
character(len= *), parameter, public partition_dir
character(len=len(str1)+len(str2)) function cat(str1, str2)
real(8), parameter, public m_huge
real(8), parameter, public p_mu
real(8) pure function doptional_default(opt, def)
pure integer(i4) function, dimension(lbound(ii, 1, kind=i8):ubound(ii, 1, kind=i8)) i8_to_i4_1(ii)
complex(8), parameter, public m_z0
complex(8), parameter, public m_zi
logical pure function looptional_default(opt, def)
real(8), parameter, public p_ep
complex(8) pure function zoptional_default(opt, def)
logical function, public not_in_openmp()
real(8), parameter, public p_g
Electron gyromagnetic ratio.
real(8), parameter, public m_max_exp_arg
real(8), parameter, public p_ev
character(len= *), parameter, public em_resp_dir
integer(i8) pure function bitand84(val1, val2)
integer(i8) pure function bitand48(val1, val2)
subroutine, public global_init(is_serial)
real(8), parameter, public m_tiny
real(8), parameter, public p_kb
Boltzmann constant in Ha/K.
real(8), parameter, public m_zero
real(8), parameter, public m_half
character(len=80) pure function soptional_default(opt, def)
integer(i8) pure function bitand88(val1, val2)
character(len= *), parameter, public td_dir
character(len= *), parameter, public static_dir
complex(8), parameter, public m_z2
real(8), parameter, public p_proton_charge
real(8), parameter, public m_four
real(8), parameter, public m_third
real(8), parameter, public r_min_atom_dist
Minimal distance between two distinguishable atoms.
real(8), parameter, public m_epsilon
real(8), parameter, public m_three
integer(i4) pure function bitand44(val1, val2)
real(8), parameter, public p_ry
character(len= *), parameter, public vdw_dir
character(len= *), parameter, public oct_dir
real(8), dimension(50), public time_stack
subroutine, public hardware_end
subroutine, public hardware_init
integer, parameter i4
define kinds
subroutine mpi_mod_init(is_serial)