(git:7fc1fe1)
Loading...
Searching...
No Matches
nlo_current Module Reference

Local full-tensor independent-particle current response through fifth field order. More...

Functions/Subroutines

subroutine, public nlo_current_tensor_derivatives (order, omega, energies, rate1, rate2, transition_width, hamiltonian, connection, curvature, rho0, velocity, current, elements)
 Compute intrinsically permutation-symmetric χ^(n) current at one k point.

Detailed Description

Local full-tensor independent-particle current response through fifth field order.

Note
This is a Bloch-point kernel. It does not integrate the Brillouin zone, convert current to susceptibility, or build AO derivatives from CP2K data.

Function/Subroutine Documentation

◆ nlo_current_tensor_derivatives()

subroutine, public nlo_current::nlo_current_tensor_derivatives ( integer, intent(in) order,
real(kind=dp), dimension(:), intent(in) omega,
real(kind=dp), dimension(:), intent(in) energies,
real(kind=dp), intent(in) rate1,
real(kind=dp), intent(in) rate2,
real(kind=dp), intent(in) transition_width,
complex(dp), dimension(:, :, :), intent(in) hamiltonian,
complex(dp), dimension(:, :, :, :), intent(in) connection,
complex(dp), dimension(:, :, :), intent(in) curvature,
complex(dp), dimension(:, :, :), intent(in) rho0,
complex(dp), dimension(:, :, :), intent(in) velocity,
complex(dp), dimension(:, :), intent(out) current,
logical, dimension(:, :), intent(in), optional elements )

Compute intrinsically permutation-symmetric χ^(n) current at one k point.

Parameters
orderNumber of incident fields, 2:5
omegaIncident photon energies in Hartree
energiesCentral band energies in Hartree
rate1Population damping energy in Hartree
rate2Coherence damping energy in Hartree
transition_widthBand-energy width of their smooth transition in Hartree
hamiltonianOrthogonal Bloch Hamiltonian normalized k derivatives through grade n
connectionOrthogonal Bloch position connection derivatives through grade n-1
curvatureThree position-curvature matrices for this k point and spin
rho0Equilibrium density derivatives through grade n
velocityPhysical central-band velocity in bohr/atomic time
currentComplex current tensor, 3 by 3**order
elementsOptional output/input selection, same shape and indexing as current. Only required subset responses are evaluated. Unselected outputs remain zero.
Note
Label the n incident fields by j=1,...,n, each with frequency ω_j and Cartesian direction a_j. For every nonempty labeled subset S, form Ω_S=Σ_{j∈S}ω_j and the normalized density response ρ_S = |S|⁻¹ Σ_(j in S) R(Ω_S)L_(a_j)ρ_(S without j), where R L is the analytic normalized k-derivative step of nlo_density_step_derivatives. This average equals the sum of all ordered responses divided by n!. Only k-derivative grades n-|S| are retained for each subset. States with the same labeled subset and field directions are reused across all full-tensor components, retaining only two adjacent field orders in memory. The final current is -Tr[v_c ρ_{1,...,n}] minus n⁻¹ Σ_j Tr[F_(c,a_j) ρ_(S without j)], in atomic units. This follows from v_c(E)=i[H+E_a r_a,r_c]=v_c(0)+E_a F_ca, with [r_c,r_a]=iF_ca. The curvature term is always included. The second array index stores a_1,...,a_n as 1+Σ_j(a_j-1)3^(j-1).

Definition at line 67 of file nlo_current_tensor_derivatives.F.

Here is the call graph for this function:
Here is the caller graph for this function: