Octopus
target.F90 File Reference

Go to the source code of this file.

Modules

module  target_oct_m
 Optimal-control targets: abstract base class and public interface.
 

Data Types

type  target_oct_m::target_t
 Abstract optimal-control target. More...
 
interface  target_oct_m::target_init_i
 Read the target definition from the input file. More...
 
interface  target_oct_m::target_j1_i
 Evaluate the target functional J1. More...
 
interface  target_oct_m::target_chi_i
 Apply the target operator to build the chi boundary condition. More...
 
interface  target_oct_m::target_output_i
 Write target-specific output. More...
 

Functions/Subroutines

subroutine, public target_oct_m::target_init_propagation (tg)
 This routine performs all the things that must be initialized prior to a forward evolution, regarding the target. More...
 
subroutine, public target_oct_m::target_get_state (tg, st)
 This just copies the states_elec_t variable present in target, into st. More...
 
subroutine, public target_oct_m::target_end (tg, oct)
 
subroutine, public target_oct_m::target_output (tg, namespace, space, gr, dir, ions, hm, outp)
 
subroutine, public target_oct_m::target_tdcalc (tg, namespace, space, hm, gr, ions, ext_partners, psi, time, max_time)
 Calculates, at a given point in time marked by the integer index, the integrand of the target functional: \( <Psi(t)|\hat{O}(t)|Psi(t)> \). More...
 
subroutine, public target_oct_m::target_inh (psi, gr, kpoints, tg, time, inh, iter)
 Calculates the inhomogeneous term that appears in the equation for chi, and places it into inh. More...
 
real(real64) function, public target_oct_m::target_j1 (tg, namespace, gr, kpoints, qcpsi, ions)
 Calculates the J1 functional, i.e.: \( <Psi(T)|\hat{O}|Psi(T)> \) in the time-independent case, or else \( \int_0^T dt <Psi(t)|\hat{O}(t)|Psi(t)> \) in the time-dependent case. More...
 
subroutine, public target_oct_m::target_chi (tg, namespace, gr, kpoints, qcpsi_in, qcchi_out, ions)
 Calculate \( |chi(T)> = \hat{O}(T) |psi(T)> \). More...
 
subroutine target_oct_m::target_cleanup_default (tg, oct)
 Default cleanup: nothing to release. More...
 
subroutine target_oct_m::target_tdcalc_default (tg, namespace, space, hm, gr, ions, ext_partners, psi, time, max_time)
 Default tdcalc: static targets accumulate nothing in time. More...
 
subroutine target_oct_m::target_inh_default (tg, psi, gr, kpoints, time, inh, iter)
 Default inh: only time-dependent targets define an inhomogeneous term, so reaching here is an internal error. More...
 
subroutine target_oct_m::target_init_propagation_default (tg)
 Default init_propagation: nothing to reset. More...
 
integer pure function, public target_oct_m::target_mode (tg)
 
integer pure function, public target_oct_m::target_type (tg)
 
integer pure function, public target_oct_m::target_curr_functional (tg)
 
logical pure function, public target_oct_m::target_move_ions (tg)
 

Variables

integer, parameter, public target_oct_m::oct_tg_groundstate = 1
 
integer, parameter, public target_oct_m::oct_tg_excited = 2
 
integer, parameter, public target_oct_m::oct_tg_gstransformation = 3
 
integer, parameter, public target_oct_m::oct_tg_userdefined = 4
 
integer, parameter, public target_oct_m::oct_tg_jdensity = 5
 
integer, parameter, public target_oct_m::oct_tg_local = 6
 
integer, parameter, public target_oct_m::oct_tg_td_local = 7
 
integer, parameter, public target_oct_m::oct_tg_exclude_state = 8
 
integer, parameter, public target_oct_m::oct_tg_hhg = 9
 
integer, parameter, public target_oct_m::oct_tg_velocity = 10
 
integer, parameter, public target_oct_m::oct_tg_hhgnew = 12
 
integer, parameter, public target_oct_m::oct_tg_classical = 13
 
integer, parameter, public target_oct_m::oct_tg_spin = 14
 
integer, parameter, public target_oct_m::oct_targetmode_static = 0
 
integer, parameter, public target_oct_m::oct_targetmode_td = 1
 
integer, parameter, public target_oct_m::oct_no_curr = 0
 
integer, parameter, public target_oct_m::oct_curr_square = 1
 
integer, parameter, public target_oct_m::oct_max_curr_ring = 2
 
integer, parameter, public target_oct_m::oct_curr_square_td = 3