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 207 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 492 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 641 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 757 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 805 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 872 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 882 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 975 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 1026 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 1196 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 1228 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 1243 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 1262 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 1355 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 1371 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 1407 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 1429 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 1473 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 1494 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 1549 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 1574 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 1652 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 1666 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 1712 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 1730 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 1825 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 1894 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 2082 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 2190 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 2471 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 2508 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 2615 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 2884 of file output.F90.