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 634 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 750 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 798 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 865 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 875 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 968 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 1019 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 1189 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 1221 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 1236 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 1255 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 1348 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 1364 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 1400 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 1422 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 1466 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 1487 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 1542 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 1567 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 1645 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 1659 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 1705 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 1723 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 1818 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 1887 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 2075 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 2183 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 2464 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 2501 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 2608 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 2877 of file output.F90.