From 269cd14abcdfa83bc67870835ffc5182aa410693 Mon Sep 17 00:00:00 2001 From: e3fm8 <wolf.widdra@physik.uni-halle.de> Date: Tue, 27 Feb 2024 17:54:44 +0100 Subject: [PATCH] Plasma freq corrected --- libhreels/dielectrics20.py | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/libhreels/dielectrics20.py b/libhreels/dielectrics20.py index 52f3370..f3e6b60 100755 --- a/libhreels/dielectrics20.py +++ b/libhreels/dielectrics20.py @@ -4,25 +4,24 @@ import numpy as np from scipy import constants from scipy.integrate import cumulative_trapezoid -def plasmaFrequency(n): - '''Returns the plasma frequency for a given doping.''' +def plasmaFrequency(n,eps_inf=1): + '''Returns the plasma frequency for a given doping n in charge/m³.''' # Note that the function parameter is actually n/m, the charge carrier density # over the band mass in units of electron mass in vacuum. eps_0 = constants.value("vacuum electric permittivity") e = constants.value('elementary charge') m_e = constants.value('electron mass') - w_P = np.sqrt(n*e*e/(eps_0*m_e)) #Hz - w_P = w_P /1E+12 * 33.35641 #Hz -> THz -> cm^-1 - return w_P - -# def doping2chargecarrierdensity(doping): #use doping in percentage by mass, not volume -# '''Returns the charge carrier density for a given doping in percentage.''' -# return float(doping*3.31664067935517E+020*1E6) # doping[%] * charge carrier/cm^3 * 1E6 = n_e [m^-3] - -# def doping2plasmaFrequency(doping): -# '''Returns the plasma frequency for a given doping.''' -# n = doping2chargecarrierdensity(doping) -# return plasmaFrequency(n) + # Careful: There is a factor of 2 pi between omega and nue: + # If the plasma oscillates in a polarisable medium eps_infinity will reduce the restoring fields + w_P = np.sqrt(n*e*e/(eps_0*eps_inf*m_e)) # + nue_P = w_P /1E+12 * 33.35641 /2 /np.pi #Hz -> THz -> cm^-1 + return nue_P + +def chargeDensitySTO(x): + # Calculates the charge density per m^3 for SrTi_(1-x)Nb_xO_3 + # assuming doping by one electron per Nb atom + vol = 3.91*3.91*3.91 * 1E-30 # unit cell volume in m^3 + return x/vol def loss(eps): -- GitLab