Functions provided

Models

modelJ(theta) 

# TheDancer.randHMethod.

randH(SiteEnergy, Edisorder, Jdisorder, modelJ, N)

Liberated from 'Sturm': https://github.com/jarvist/Teclo/blob/master/Sturm.jl

Generate a random tridiagonal TightBinding Hamiltonian, in a form suitable for the Sturm sequence

Given:

  • SiteEnergy - scalar eV; reference for site energy of monomer
  • Edisorder - scalar eV ; amount of Gaussian / normal energetic disorder, for trace of Hamiltonian
  • Jdisorder - scalar eV
  • modelJ(theta) - function, takes degrees, returns eV ; model for the transfer integral (e.g. E=(J0cos(thetaspi/180)).^2 )
  • N - integar ; size of diagonal of Hamiltonian

source

# TheDancer.nondispersive_wavepacketMethod.

Shamelessly copied from Wikipedia: https://en.wikipedia.org/wiki/Wave_packet

source

planewave(λ)
prepare_model()

Propagators

# TheDancer.SiteEnergyFromDipolesMethod.

Calculate site-energies for sites, from potential generated by dipoles at other sites.

source

# TheDancer.DipolesFromDensityMethod.

Step-forwards in time, and allow dipoles (dielectric response) of sites to respond to electron density.

source

AdiabaticPropagation(dipoles,E,dampening)
UnitaryPropagation(dipoles,E,psi,dt,dampening;slices::Int=1)

# TheDancer.TimeDependentPropagationMethod.

TimeDependentPropagation(psi,H,dt;slices::Int=1,decompose::Bool=false,verbose::Bool=false)

Propagate Wavefunction directly with Hamiltonian and time dependent Schrodinger equation.

Psi (N) is the wavefunction; H the Hamiltonian (NxN); dt the length of time to propgate along; slices is how many slices to decompose the Unitary operator into; verbose sets the display of info on the unitary nature of U, whether U*U' ~= I.

source

# TheDancer.TimeDependentPropagationMethod.

Propagate wavefunction directly from eigenergy, and time dependent Schrodinger equation.

source

Simulations

# TheDancer.Plot_S_psi_density_dipolesMethod.

Wrapper function to pretty-print and plot (UnicodePlots) relevant items of interest.

source

overlap(psia,psib)

# TheDancer.Decompose_HMethod.

Decompose Hamiltonian into Diagonal/S/PE and Off-diag/J/KE elements

source

# TheDancer.Plot_HMethod.

Plot spectrum of (H)amiltonian, other useful info.

source

outputpng()
SCFthenUnitary(dampening, SCFcycles, Unitarycycles; PNG::Bool=false)