dispersion_extraction: Dispersion Extraction

Description Usage Arguments Examples

Description

Function to return dispersion as points

Usage

1
2
dispersion_extraction(q, omega, eps_inf = 2.4, E_f = 0.3, tau = 1.5e-13,
  omega_TO = c(448, 791.7, 1128.1), omega_LO = c(498.6, 811.5, 1270.6))

Arguments

q

wavevector or vector of wavevectors [m^-1]

omega

angular frequency or vector of frequencies [s^-1]

eps_inf

permittivity at infinity / high frequency dielectric constant

E_f

Fermi energy [eV]

tau

relaxation time of electrons [s]

omega_TO

vector of frequencies of transverse optical phonons [cm^-1]

omega_LO

vector of frequencies of longitudinal optical phonons [cm^-1]

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
q <- seq(0,55,,500)*1e6 # wavevector [m^-1]
omega <- seq(0,60,,500)*2*pi*1e12 # angular frequency [rad/s]

Ef <- 0.3 # Fermi Energy

## Call dispersion extraction from grapheneSPP
## Note: dispersion_extraction2 is a temporary function name likely to be changed in the future

# No phonons (actaully one down at 0, bit of a hack)
result<-dispersion_extraction(q,omega,E_f = Ef,omega_TO = c(0),omega_LO=c(0.1))

# Inclusion of SiO2 phonon frequencies [cm^-1]
result2<-dispersion_extraction(q,omega,E_f = Ef,
                               omega_TO = c(448,791.7,1128.1),omega_LO=c(498.6,811.5,1270.6))

## Change units to [um^-1] and frequency [THz]
result$q<-result$q/1e6
result$omega<-result$omega/(2*pi*1e12)
result2$q<-result2$q/1e6
result2$omega<-result2$omega/(2*pi*1e12)


## Plot Result
plot(subset(result,branch==1)$q,
     subset(result,branch==1)$omega,
     type='l',lty=2,
     xlab=expression(wavevector~(mu*m^-1)),
     ylab="Frequency (THz)",xaxs="i",yaxs="i",lwd=2)

lines(subset(result2,branch==1)$q,subset(result2,branch==1)$omega,type='l',col=2,lwd=2)
lines(subset(result2,branch==2)$q,subset(result2,branch==2)$omega,type='l',col=3,lwd=2)
lines(subset(result2,branch==3)$q,subset(result2,branch==3)$omega,type='l',col=4,lwd=2)
lines(subset(result2,branch==4)$q,subset(result2,branch==4)$omega,type='l',col=5,lwd=2)

tjconstant/grapheneSPP documentation built on May 31, 2019, 3:38 p.m.