MCTDH-X  v2.22
 All Classes Files Functions Variables Pages
input_output Module Reference

Routines handling the input and output of data of the main MCTDHB program are collected in this module. More...

Public Member Functions

subroutine read_oct_parameters (K)
 
subroutine write_oct_parameters (Iteration, WriteControls, Func_OCT_Value)
 
subroutine write_anyons (time, Syndrome, L)
 
subroutine write_coefficients_bdav (time, VIN)
 Writes the coefficients to an ASCII file with the name 'time'coef.dat. More...
 
subroutine write_coefficients (time, VIN)
 Writes the coefficients to an ASCII file with the name 'time'coef.dat. More...
 
subroutine write_bh (time, Full_Rho1_Elements, BH_Offset)
 This subroutine writes the output in the case of Bose-Hubbard computations. More...
 
subroutine write_nlevelorbitals (time, PSI, FT, Dilation)
 Write the NlevelOrbitals and density to the file 'time'orbs.dat. More...
 
subroutine write_orbitals (time, PSI, FT, Dilation)
 Write the Orbitals and density to the file 'time'orbs.dat or 'time'ftorbs.datz. More...
 
subroutine write_testing (morb, energy, Nocc, time, Npart, exec_tm, NDVR_X, NDVR_Y, NDVR_Z, dimmctdh, nprocs, nthreads, DVRX, DVRY, DVRZ)
 This routine writes the output for the checks in the test suite. More...
 
subroutine open_binary ()
 Open binary coefficients and orbitals in 'CIc_bin' and 'PSI_bin'. More...
 
subroutine close_binary ()
 
subroutine write_header (unitnum)
 Write the header data to binary files. More...
 
subroutine read_header (unitnum, rtype)
 Read the header of the binary files. More...
 
subroutine write_nlevelorbitals_binary (time, iter, PSI)
 Write the Multilevel Orbitals to binary file. More...
 
subroutine write_orbitals_binary (time, iter, PSI)
 Write the Orbitals to binary file. More...
 
subroutine write_coefficients_block_binary (time, iter, VIN)
 
subroutine write_coefficients_binary (time, iter, VIN)
 
subroutine read_bin_string (unitnum, time, iter, enrg, state)
 
subroutine analyse_binary (unitnum, required_time)
 Routine assesses whether the reading operation is possible. It's called after the header was read. More...
 
subroutine read_binary_nlevel (unitnum, required_time, VIN, PSI)
 Read Coefficients and Multilevel Orbitals from binary file specified with unitnum. Is called after the header was read. More...
 
subroutine read_binary_block (unitnum, required_time, VIN, PSI)
 Read Coefficients and Orbitals from binary file specified with unitnum for restarting a block diagonalization. Is called after the header was read. More...
 
subroutine read_binary (unitnum, required_time, VIN, PSI, Block)
 Read Coefficients and Orbitals from binary file specified with unitnum. If the optional argument Block is true then a specific state from a previous block relaxation is read. Is called after the header was read. More...
 
subroutine binary_guess
 Read the wavefunction from the binary files if GUESS=BINR was set. More...
 
subroutine guess_read_orb (PSI)
 Read Orbitals from an ASCII file. More...
 
subroutine guess_read_ci (VIN)
 Read Coefficients from an ASCII file. More...
 
subroutine read_input
 Read the input file MCTDHX.inp . More...
 

Detailed Description

Routines handling the input and output of data of the main MCTDHB program are collected in this module.

Member Function/Subroutine Documentation

subroutine input_output::analyse_binary ( integer  unitnum,
real*8  required_time 
)

Routine assesses whether the reading operation is possible. It's called after the header was read.

References read_bin_string().

Referenced by analysis_core::analysis_read_binaries(), and binary_guess().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::binary_guess ( )

Read the wavefunction from the binary files if GUESS=BINR was set.

References analyse_binary(), close_binary(), open_binary(), read_header(), and read_input().

Referenced by mctdhx::mctdhx_routine(), and program_mctdhx_main().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::close_binary ( )

Close binary coefficients and orbitals in 'CIc_bin' and 'PSI_bin'.

Referenced by analysis_core::analysis_read_binaries(), analysis_core::apply_analysis(), binary_guess(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::guess_read_ci ( complex*16, dimension(nconf)  VIN)

Read Coefficients from an ASCII file.

References function_library::binomialcoefficient(), addresses::get_configurationfromindex(), and addresses::get_indexfromconfiguration().

Referenced by get_initial_coefficients(), and get_initial_coefficients_bdav().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::guess_read_orb ( complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb)  PSI)

Read Orbitals from an ASCII file.

References function_library::schmidtortho().

Referenced by get_initial_orbitals().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::open_binary ( )

Open binary coefficients and orbitals in 'CIc_bin' and 'PSI_bin'.

Referenced by analysis_core::analysis_read_binaries(), analysis_core::apply_analysis(), binary_guess(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::read_bin_string ( integer  unitnum,
real*8  time,
integer  iter,
real*8  enrg,
integer  state 
)

Referenced by analyse_binary().

Here is the caller graph for this function:

subroutine input_output::read_binary ( integer  unitnum,
real*8  required_time,
complex*16, dimension(nconf)  VIN,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb)  PSI,
logical, optional  Block 
)

Read Coefficients and Orbitals from binary file specified with unitnum. If the optional argument Block is true then a specific state from a previous block relaxation is read. Is called after the header was read.

Referenced by analysis_core::apply_analysis(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::read_binary_block ( integer  unitnum,
real*8  required_time,
complex*16, dimension(nconf*blocksize)  VIN,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb)  PSI 
)

Read Coefficients and Orbitals from binary file specified with unitnum for restarting a block diagonalization. Is called after the header was read.

Referenced by master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::read_binary_nlevel ( integer  unitnum,
real*8  required_time,
complex*16, dimension(nconf)  VIN,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb,nlevel)  PSI 
)

Read Coefficients and Multilevel Orbitals from binary file specified with unitnum. Is called after the header was read.

Referenced by analysis_core::apply_analysis(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::read_header ( integer  unitnum,
character*4  rtype 
)
subroutine input_output::read_input ( )

Read the input file MCTDHX.inp .

Setting defaults on input variables. Setting defaults on input variables. Setting defaults on input variables.

Catches for erroneous input.

Referenced by binary_guess(), and program_mctdhx_main().

Here is the caller graph for this function:

subroutine input_output::read_oct_parameters ( integer  K)

Referenced by program_mctdhx_main().

Here is the caller graph for this function:

subroutine input_output::write_anyons ( real*8  time,
real*8, dimension(l*(l-1))  Syndrome,
integer  L 
)

References auxiliary_routines::get_ijk_from_m().

Referenced by get_1bodypotential().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_bh ( real*8, intent(in)  time,
complex*16, dimension(morb,morb), intent(in)  Full_Rho1_Elements,
complex*16, dimension(morb), intent(in)  BH_Offset 
)

This subroutine writes the output in the case of Bose-Hubbard computations.

References auxiliary_routines::get_ijk_from_m(), and auxiliary_routines::getdoubleasstring().

Referenced by master_slave_parallelization::master_fci().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_coefficients ( real*8  time,
complex*16, dimension(nconf)  VIN 
)

Writes the coefficients to an ASCII file with the name 'time'coef.dat.

References addresses::get_configurationfromindex().

Referenced by analysis_core::apply_analysis(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_coefficients_bdav ( real*8  time,
complex*16, dimension(nconf*blocksize)  VIN 
)

Writes the coefficients to an ASCII file with the name 'time'coef.dat.

References addresses::get_configurationfromindex(), and auxiliary_routines::inttostr().

Referenced by master_slave_parallelization::master_mctdhbf().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_coefficients_binary ( real*8  time,
integer  iter,
complex*16, dimension(nconf)  VIN 
)
Parameters
timeWrites the CI coefficients to binary file

Referenced by master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::write_coefficients_block_binary ( real*8  time,
integer  iter,
complex*16, dimension(nconf*blocksize)  VIN 
)
Parameters
timeWrites the CI coefficients for Block Davidson computations to binary file

Referenced by master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::write_header ( integer  unitnum)

Write the header data to binary files.

Referenced by master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::write_nlevelorbitals ( real*8  time,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb,nlevel)  PSI,
logical, optional  FT,
integer, optional  Dilation 
)

Write the NlevelOrbitals and density to the file 'time'orbs.dat.

References auxiliary_routines::get_mom().

Referenced by analysis_core::apply_analysis(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_nlevelorbitals_binary ( real*8  time,
integer  iter,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb,nlevel)  PSI 
)

Write the Multilevel Orbitals to binary file.

Referenced by master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::write_oct_parameters ( integer  Iteration,
logical  WriteControls,
real*8, optional  Func_OCT_Value 
)

References auxiliary_routines::inttostr().

Referenced by nr::brent::dbrent::dfpmin::mnbrak::func_oct(), and program_mctdhx_main().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_orbitals ( real*8  time,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb)  PSI,
logical, optional  FT,
integer, optional  Dilation 
)

Write the Orbitals and density to the file 'time'orbs.dat or 'time'ftorbs.datz.

References auxiliary_routines::get_mom().

Referenced by analysis_core::apply_analysis(), master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine input_output::write_orbitals_binary ( real*8  time,
integer  iter,
complex*16, dimension(ndvr_x*ndvr_y*ndvr_z,morb)  PSI 
)

Write the Orbitals to binary file.

Referenced by master_slave_parallelization::master_fci(), and master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:

subroutine input_output::write_testing ( integer  morb,
real*8  energy,
real*8, dimension(morb)  Nocc,
real*8  time,
integer  Npart,
real*8  exec_tm,
integer  NDVR_X,
integer  NDVR_Y,
integer  NDVR_Z,
integer  dimmctdh,
integer  nprocs,
integer  nthreads,
integer  DVRX,
integer  DVRY,
integer  DVRZ 
)

This routine writes the output for the checks in the test suite.

Referenced by master_slave_parallelization::master_mctdhbf().

Here is the caller graph for this function:


The documentation for this module was generated from the following file: