Octopus
output_oct_m Module Reference

this module contains the output system More...

Detailed Description

this module contains the output system

Functions/Subroutines

subroutine, public output_init (outp, namespace, space, st, gr, nst, ks)
 
subroutine, public output_all (outp, namespace, space, dir, gr, ions, iter, st, hm, ks)
 
subroutine output_localization_funct (outp, namespace, space, dir, st, hm, gr, ions, iter)
 
subroutine calc_electronic_pressure (st, hm, gr, pressure)
 
subroutine output_energy_density (outp, namespace, space, dir, hm, ks, st, ions, gr)
 
logical function, public output_need_exchange (outp)
 
subroutine output_dftu_orbitals (outp, dir, namespace, space, this, st, mesh, ions, has_phase)
 
logical function, public output_needs_current (outp, states_are_real)
 
subroutine output_etsf (outp, namespace, space, dir, st, gr, kpoints, ions, iter)
 To create an etsf file one has to do the following: More...
 
subroutine output_etsf_file_init (filename, filetype, dims, flags, ncid, namespace)
 
subroutine output_etsf_error (error_data, namespace)
 
subroutine output_etsf_geometry_dims (ions, symm, dims, flags)
 
subroutine output_etsf_geometry_write (ions, symm, ncid, namespace, box)
 
subroutine output_etsf_kpoints_dims (kpoints, dims, flags)
 
subroutine output_etsf_kpoints_write (kpoints, dim, ncid, namespace)
 
subroutine output_etsf_electrons_dims (st, dims, flags)
 
subroutine output_etsf_electrons_write (st, ncid, namespace)
 
subroutine output_etsf_density_dims (st, cube, dims, flags)
 
subroutine output_etsf_density_write (st, mesh, cube, cf, ncid, namespace)
 
subroutine output_etsf_wfs_rsp_dims (st, cube, dims, flags)
 
subroutine output_etsf_wfs_rsp_write (st, mesh, cube, cf, ncid, namespace)
 
subroutine output_etsf_basisdata_dims (flags)
 
subroutine output_etsf_basisdata_write (mesh, shell, ncid, namespace)
 
subroutine output_etsf_wfs_pw_dims (shell, dims, flags)
 
subroutine output_etsf_wfs_pw_write (st, mesh, cube, cf, shell, ncid, namespace)
 
subroutine output_etsf_io_low_error_handle (error_data)
 DAS: copied from ETSF_IO 1.0.3 etsf_io_low_level.f90, changed to send output to standard error *** m etsf_io_low_error_group/etsf_io_low_error_handle NAME etsf_io_low_error_handle. More...
 
subroutine, public output_states (outp, namespace, space, dir, st, gr, ions, hm, iter)
 
subroutine, public output_current_flow (outp, namespace, space, dir, gr, st, kpoints)
 
subroutine, public output_hamiltonian (outp, namespace, space, dir, hm, st, der, ions, gr, iter, grp)
 
subroutine, public output_scalar_pot (outp, namespace, space, dir, mesh, ions, ext_partners, time)
 
subroutine output_xc_torque (outp, namespace, dir, mesh, hm, st, ions, space)
 
subroutine, public zoutput_lr (outp, namespace, space, dir, st, mesh, lr, idir, isigma, ions, pert_unit)
 
subroutine, public doutput_lr (outp, namespace, space, dir, st, mesh, lr, idir, isigma, ions, pert_unit)
 

Function/Subroutine Documentation

◆ output_init()

subroutine, public output_oct_m::output_init ( type(output_t), intent(out)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
type(states_elec_t), intent(in)  st,
type(grid_t), intent(in)  gr,
integer, intent(in)  nst,
type(v_ks_t), intent(inout)  ks 
)

Definition at line 205 of file output.F90.

◆ output_all()

subroutine, public output_oct_m::output_all ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(grid_t), intent(in)  gr,
type(ions_t), intent(in)  ions,
integer, intent(in)  iter,
type(states_elec_t), intent(inout)  st,
type(hamiltonian_elec_t), intent(inout)  hm,
type(v_ks_t), intent(inout)  ks 
)

Definition at line 490 of file output.F90.

◆ output_localization_funct()

subroutine output_oct_m::output_localization_funct ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(states_elec_t), intent(inout)  st,
type(hamiltonian_elec_t), intent(in)  hm,
type(grid_t), intent(in)  gr,
type(ions_t), intent(in)  ions,
integer, intent(in)  iter 
)
private

Definition at line 632 of file output.F90.

◆ calc_electronic_pressure()

subroutine output_oct_m::calc_electronic_pressure ( type(states_elec_t), intent(inout)  st,
type(hamiltonian_elec_t), intent(in)  hm,
type(grid_t), intent(in)  gr,
real(real64), dimension(:), intent(out)  pressure 
)
private

Definition at line 754 of file output.F90.

◆ output_energy_density()

subroutine output_oct_m::output_energy_density ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(hamiltonian_elec_t), intent(in)  hm,
type(v_ks_t), intent(inout)  ks,
type(states_elec_t), intent(in)  st,
type(ions_t), intent(in)  ions,
type(grid_t), intent(in)  gr 
)
private

Definition at line 802 of file output.F90.

◆ output_need_exchange()

logical function, public output_oct_m::output_need_exchange ( type(output_t), intent(in)  outp)

Definition at line 876 of file output.F90.

◆ output_dftu_orbitals()

subroutine output_oct_m::output_dftu_orbitals ( type(output_t), intent(in)  outp,
character(len=*), intent(in)  dir,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
type(lda_u_t), intent(in)  this,
type(states_elec_t), intent(in)  st,
class(mesh_t), intent(in)  mesh,
type(ions_t), intent(in)  ions,
logical, intent(in)  has_phase 
)
private

Definition at line 886 of file output.F90.

◆ output_needs_current()

logical function, public output_oct_m::output_needs_current ( type(output_t), intent(in)  outp,
logical, intent(in)  states_are_real 
)

Definition at line 979 of file output.F90.

◆ output_etsf()

subroutine output_oct_m::output_etsf ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(states_elec_t), intent(in)  st,
type(grid_t), intent(in)  gr,
type(kpoints_t), intent(in)  kpoints,
type(ions_t), intent(in)  ions,
integer, intent(in)  iter 
)
private

To create an etsf file one has to do the following:

  • Calculate the dimensions and the flags with the _dims functions for all sets of values.
  • Init the data file with the flags and the dims.
  • Call the _write functions for all sets.
  • Close the file.
Note
to keep things clean, new data MUST be added following this scheme and using functions.

Definition at line 1030 of file output.F90.

◆ output_etsf_file_init()

subroutine output_oct_m::output_etsf_file_init ( character(len=*), intent(in)  filename,
character(len=*), intent(in)  filetype,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags,
integer, intent(out)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1200 of file output.F90.

◆ output_etsf_error()

subroutine output_oct_m::output_etsf_error ( type(etsf_io_low_error), intent(in)  error_data,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1232 of file output.F90.

◆ output_etsf_geometry_dims()

subroutine output_oct_m::output_etsf_geometry_dims ( type(ions_t), intent(in)  ions,
type(symmetries_t), intent(in)  symm,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags 
)
private

Definition at line 1247 of file output.F90.

◆ output_etsf_geometry_write()

subroutine output_oct_m::output_etsf_geometry_write ( type(ions_t), intent(in)  ions,
type(symmetries_t), intent(in)  symm,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace,
class(box_t), intent(in)  box 
)
private

Definition at line 1266 of file output.F90.

◆ output_etsf_kpoints_dims()

subroutine output_oct_m::output_etsf_kpoints_dims ( type(kpoints_t), intent(in)  kpoints,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags 
)
private

Definition at line 1359 of file output.F90.

◆ output_etsf_kpoints_write()

subroutine output_oct_m::output_etsf_kpoints_write ( type(kpoints_t), intent(in)  kpoints,
integer, intent(in)  dim,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1375 of file output.F90.

◆ output_etsf_electrons_dims()

subroutine output_oct_m::output_etsf_electrons_dims ( type(states_elec_t), intent(in)  st,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags 
)
private

Definition at line 1411 of file output.F90.

◆ output_etsf_electrons_write()

subroutine output_oct_m::output_etsf_electrons_write ( type(states_elec_t), intent(in)  st,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1433 of file output.F90.

◆ output_etsf_density_dims()

subroutine output_oct_m::output_etsf_density_dims ( type(states_elec_t), intent(in)  st,
type(cube_t), intent(in)  cube,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags 
)
private

Definition at line 1477 of file output.F90.

◆ output_etsf_density_write()

subroutine output_oct_m::output_etsf_density_write ( type(states_elec_t), intent(in)  st,
class(mesh_t), intent(in)  mesh,
type(cube_t), intent(inout)  cube,
type(cube_function_t), intent(inout)  cf,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1498 of file output.F90.

◆ output_etsf_wfs_rsp_dims()

subroutine output_oct_m::output_etsf_wfs_rsp_dims ( type(states_elec_t), intent(in)  st,
type(cube_t), intent(in)  cube,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags 
)
private

Definition at line 1553 of file output.F90.

◆ output_etsf_wfs_rsp_write()

subroutine output_oct_m::output_etsf_wfs_rsp_write ( type(states_elec_t), intent(in)  st,
class(mesh_t), intent(in)  mesh,
type(cube_t), intent(inout)  cube,
type(cube_function_t), intent(inout)  cf,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1578 of file output.F90.

◆ output_etsf_basisdata_dims()

subroutine output_oct_m::output_etsf_basisdata_dims ( type(etsf_groups_flags), intent(inout)  flags)
private

Definition at line 1656 of file output.F90.

◆ output_etsf_basisdata_write()

subroutine output_oct_m::output_etsf_basisdata_write ( class(mesh_t), intent(in)  mesh,
type(fourier_shell_t), intent(in)  shell,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1670 of file output.F90.

◆ output_etsf_wfs_pw_dims()

subroutine output_oct_m::output_etsf_wfs_pw_dims ( type(fourier_shell_t), intent(in)  shell,
type(etsf_dims), intent(inout)  dims,
type(etsf_groups_flags), intent(inout)  flags 
)
private

Definition at line 1716 of file output.F90.

◆ output_etsf_wfs_pw_write()

subroutine output_oct_m::output_etsf_wfs_pw_write ( type(states_elec_t), intent(in)  st,
class(mesh_t), intent(in)  mesh,
type(cube_t), intent(inout)  cube,
type(cube_function_t), intent(inout)  cf,
type(fourier_shell_t), intent(in)  shell,
integer, intent(in)  ncid,
type(namespace_t), intent(in)  namespace 
)
private

Definition at line 1734 of file output.F90.

◆ output_etsf_io_low_error_handle()

subroutine output_oct_m::output_etsf_io_low_error_handle ( type(etsf_io_low_error), intent(in)  error_data)
private

DAS: copied from ETSF_IO 1.0.3 etsf_io_low_level.f90, changed to send output to standard error *** m etsf_io_low_error_group/etsf_io_low_error_handle NAME etsf_io_low_error_handle.

FUNCTION This method can be used to output the informations contained in an error structure. The output is done on standard output. Write your own method if custom error handling is required.

COPYRIGHT Copyright (C) 2006, 2007 (Damien Caliste) This file is distributed under the terms of the GNU Lesser General Public License, see the COPYING file or http:

INPUTS

  • error_data <type(etsf_io_low_error)>=informations about an error.

SOURCE

Definition at line 1829 of file output.F90.

◆ output_states()

subroutine, public output_oct_m::output_states ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(states_elec_t), intent(in)  st,
type(grid_t), intent(in)  gr,
type(ions_t), intent(in)  ions,
type(hamiltonian_elec_t), intent(in)  hm,
integer, intent(in)  iter 
)

Definition at line 1898 of file output.F90.

◆ output_current_flow()

subroutine, public output_oct_m::output_current_flow ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(grid_t), intent(in)  gr,
type(states_elec_t), intent(in)  st,
type(kpoints_t), intent(in)  kpoints 
)

Definition at line 2094 of file output.F90.

◆ output_hamiltonian()

subroutine, public output_oct_m::output_hamiltonian ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(hamiltonian_elec_t), intent(in)  hm,
type(states_elec_t), intent(inout)  st,
type(derivatives_t), intent(in)  der,
type(ions_t), intent(in)  ions,
type(grid_t), intent(in)  gr,
integer, intent(in)  iter,
type(mpi_grp_t), intent(in), optional  grp 
)
Parameters
[in]grpthe group that shares the same data, must contain the domains group

Definition at line 2202 of file output.F90.

◆ output_scalar_pot()

subroutine, public output_oct_m::output_scalar_pot ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
class(mesh_t), intent(in)  mesh,
type(ions_t), intent(in)  ions,
type(partner_list_t), intent(in)  ext_partners,
real(real64), intent(in), optional  time 
)

Definition at line 2531 of file output.F90.

◆ output_xc_torque()

subroutine output_oct_m::output_xc_torque ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
character(len=*), intent(in)  dir,
class(mesh_t), intent(in)  mesh,
type(hamiltonian_elec_t), intent(in)  hm,
type(states_elec_t), intent(in)  st,
type(ions_t), intent(in)  ions,
class(space_t), intent(in)  space 
)
private

Definition at line 2568 of file output.F90.

◆ zoutput_lr()

subroutine, public output_oct_m::zoutput_lr ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(states_elec_t), intent(in)  st,
class(mesh_t), intent(in)  mesh,
type(lr_t), intent(in)  lr,
integer, intent(in)  idir,
integer, intent(in)  isigma,
type(ions_t), intent(in)  ions,
type(unit_t), intent(in)  pert_unit 
)
Parameters
[in]idirdirection of perturbation
[in]pert_unitunit for perturbation

Definition at line 2675 of file output.F90.

◆ doutput_lr()

subroutine, public output_oct_m::doutput_lr ( type(output_t), intent(in)  outp,
type(namespace_t), intent(in)  namespace,
class(space_t), intent(in)  space,
character(len=*), intent(in)  dir,
type(states_elec_t), intent(in)  st,
class(mesh_t), intent(in)  mesh,
type(lr_t), intent(in)  lr,
integer, intent(in)  idir,
integer, intent(in)  isigma,
type(ions_t), intent(in)  ions,
type(unit_t), intent(in)  pert_unit 
)
Parameters
[in]idirdirection of perturbation
[in]pert_unitunit for perturbation

Definition at line 2944 of file output.F90.