38 logical,
public :: what(MAX_OUTPUT_TYPES)
43 integer :: ks_multipoles
48 type(elec_matrix_elements_t) :: elec_me
54 integer :: vxc_diag_nmin
55 integer :: vxc_diag_nmax
56 integer :: vxc_offdiag_nmin
57 integer :: vxc_offdiag_nmax
59 character(len=80) :: wfn_filename
60 logical :: calc_exchange
61 logical :: calc_vmtxel
62 integer :: vmtxel_ncband
63 integer :: vmtxel_nvband
64 real(real64) :: vmtxel_polarization(3)
73 logical,
public :: what(MAX_OUTPUT_TYPES)
74 integer(int64),
public :: how(0:MAX_OUTPUT_TYPES)
76 type(output_me_t) :: me
79 integer,
public :: output_interval(0:MAX_OUTPUT_TYPES)
80 integer,
public :: restart_write_interval
81 logical,
public :: duringscf
82 character(len=80),
public :: wfs_list
83 character(len=MAX_PATH_LEN),
public :: iter_dir
85 type(mesh_plane_t) :: plane
86 type(mesh_line_t) :: line
88 type(output_bgw_t) :: bgw
100 class(output_t),
intent(in) :: this
101 integer(int64),
intent(in) :: what_id
102 integer,
intent(in) :: iter
107 if ((what_id > 0) .and. (this%output_interval(what_id) > 0))
then
108 if (this%what(what_id) .and. (iter == -1 .or. mod(iter, this%output_interval(what_id)) == 0))
then
118 class(output_t),
intent(in) :: this
119 integer,
intent(in) :: iter
121 integer(int64) :: what_it
126 do what_it = lbound(this%output_interval, 1), ubound(this%output_interval, 1)
127 if (this%what_now(what_it, iter))
then
This module defines the meshes, which are used in Octopus.
this module contains the output system
logical function output_what_now(this, what_id, iter)
logical function output_anything_now(this, iter)
return true if any output is to be written now