Minor corrections and checks before further development
This commit is contained in:
parent
8b327d8ed6
commit
7a65aec270
@ -54,7 +54,6 @@ def particleDensity(w_x, w_z, Power, Polarizability, N, T, m = 164*u.u): # For a
|
|||||||
v_x = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'x')
|
v_x = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'x')
|
||||||
v_y = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'y')
|
v_y = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'y')
|
||||||
v_z = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'z')
|
v_z = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'z')
|
||||||
|
|
||||||
return N * (2 * np.pi)**3 * (v_x * v_y * v_z) * (m / (2 * np.pi * ac.k_B * T))**(3/2)
|
return N * (2 * np.pi)**3 * (v_x * v_y * v_z) * (m / (2 * np.pi * ac.k_B * T))**(3/2)
|
||||||
|
|
||||||
def thermaldeBroglieWavelength(T, m = 164*u.u):
|
def thermaldeBroglieWavelength(T, m = 164*u.u):
|
||||||
@ -69,7 +68,7 @@ def scatteringLength(B):
|
|||||||
return a_bkg
|
return a_bkg
|
||||||
|
|
||||||
def dipolarLength(mu = 9.93 * ac.muB, m = 164*u.u):
|
def dipolarLength(mu = 9.93 * ac.muB, m = 164*u.u):
|
||||||
return (m * ac.mu0 * mu**2) / (8 * np.pi * ac.hbar**2)
|
return (m * ac.mu0 * mu**2) / (12 * np.pi * ac.hbar**2)
|
||||||
|
|
||||||
def scatteringCrossSection(B):
|
def scatteringCrossSection(B):
|
||||||
return 8 * np.pi * scatteringLength(B)**2 + ((32*np.pi)/45) * dipolarLength()**2
|
return 8 * np.pi * scatteringLength(B)**2 + ((32*np.pi)/45) * dipolarLength()**2
|
||||||
@ -230,9 +229,6 @@ def computeTrapPotential(w_x, w_z, Power, Polarizability, options):
|
|||||||
TrapFrequency = [v, dv]
|
TrapFrequency = [v, dv]
|
||||||
ExtractedTrapFrequencies = [IdealTrapFrequency, TrapFrequency]
|
ExtractedTrapFrequencies = [IdealTrapFrequency, TrapFrequency]
|
||||||
|
|
||||||
# Gamma_elastic = calculateElasticCollisionRate(w_x, w_z, Power, Polarizability, N = 1.13 * 1e7, T = 22 * u.uK, B = 0 * u.G)
|
|
||||||
# PSD = calculatePSD(w_x, w_z, Power, Polarizability, N = 1.13 * 1e7, T = 22 * u.uK).decompose()
|
|
||||||
|
|
||||||
return Positions, IdealTrappingPotential, TrappingPotential, TrapDepthsInKelvin, CalculatedTrapFrequencies, ExtractedTrapFrequencies
|
return Positions, IdealTrappingPotential, TrappingPotential, TrapDepthsInKelvin, CalculatedTrapFrequencies, ExtractedTrapFrequencies
|
||||||
|
|
||||||
#####################################################################
|
#####################################################################
|
||||||
@ -324,6 +320,9 @@ if __name__ == '__main__':
|
|||||||
Polarizability = 184.4 # in a.u, most precise measured value of Dy polarizability
|
Polarizability = 184.4 # in a.u, most precise measured value of Dy polarizability
|
||||||
w_x, w_z = 27.5*u.um, 33.8*u.um # Beam Waists in the x and y directions
|
w_x, w_z = 27.5*u.um, 33.8*u.um # Beam Waists in the x and y directions
|
||||||
|
|
||||||
|
AspectRatio = 4.6
|
||||||
|
w_x = AspectRatio * w_x
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
'axis': 1, # axis referenced to the beam along which you want the dipole trap potential
|
'axis': 1, # axis referenced to the beam along which you want the dipole trap potential
|
||||||
'extent': 1e4, # range of spatial coordinates in one direction to calculate trap potential over
|
'extent': 1e4, # range of spatial coordinates in one direction to calculate trap potential over
|
||||||
@ -338,13 +337,33 @@ if __name__ == '__main__':
|
|||||||
ComputedPotentials = []
|
ComputedPotentials = []
|
||||||
Params = []
|
Params = []
|
||||||
|
|
||||||
Positions, IdealTrappingPotential, TrappingPotential, TrapDepthsInKelvin, CalculatedTrapFrequencies, ExtractedTrapFrequencies = computeTrapPotential(w_x, w_z, Power, Polarizability, options)
|
# Positions, IdealTrappingPotential, TrappingPotential, TrapDepthsInKelvin, CalculatedTrapFrequencies, ExtractedTrapFrequencies = computeTrapPotential(w_x, w_z, Power, Polarizability, options)
|
||||||
ComputedPotentials.append(IdealTrappingPotential)
|
# ComputedPotentials.append(IdealTrappingPotential)
|
||||||
ComputedPotentials.append(TrappingPotential)
|
# ComputedPotentials.append(TrappingPotential)
|
||||||
Params.append([TrapDepthsInKelvin, CalculatedTrapFrequencies, ExtractedTrapFrequencies])
|
# Params.append([TrapDepthsInKelvin, CalculatedTrapFrequencies, ExtractedTrapFrequencies])
|
||||||
|
|
||||||
ComputedPotentials = np.asarray(ComputedPotentials)
|
# ComputedPotentials = np.asarray(ComputedPotentials)
|
||||||
plotPotential(Positions, ComputedPotentials, options['axis'], Params)
|
# plotPotential(Positions, ComputedPotentials, options['axis'], Params)
|
||||||
|
|
||||||
|
AtomNumber = 1.13 * 1e7
|
||||||
|
Temperature = 30 * u.uK
|
||||||
|
BField = 0 * u.G
|
||||||
|
|
||||||
|
n = particleDensity(w_x, w_z, Power, Polarizability, N = AtomNumber, T = Temperature, m = 164*u.u).decompose().to(u.cm**(-3))
|
||||||
|
Gamma_elastic = calculateElasticCollisionRate(w_x, w_z, Power, Polarizability, N = AtomNumber, T = Temperature, B = BField)
|
||||||
|
PSD = calculatePSD(w_x, w_z, Power, Polarizability, N = AtomNumber, T = Temperature).decompose()
|
||||||
|
|
||||||
|
print('%.2E' % (n.value)* (n.unit))
|
||||||
|
print('%.2f' % (Gamma_elastic.value) * (Gamma_elastic.unit))
|
||||||
|
print('%.2E' % (PSD.value))
|
||||||
|
|
||||||
|
v_x = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'x')
|
||||||
|
v_y = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'y')
|
||||||
|
v_z = calculateTrapFrequency(w_x, w_z, Power, Polarizability, dir = 'z')
|
||||||
|
|
||||||
|
print(v_x)
|
||||||
|
print(v_y)
|
||||||
|
print(v_z)
|
||||||
|
|
||||||
# v, dv, popt, pcov = extractTrapFrequency(Positions, TrappingPotential, options['axis'])
|
# v, dv, popt, pcov = extractTrapFrequency(Positions, TrappingPotential, options['axis'])
|
||||||
# plotHarmonicFit(Positions, TrappingPotential, TrapDepthsInKelvin, options['axis'], popt, pcov)
|
# plotHarmonicFit(Positions, TrappingPotential, TrapDepthsInKelvin, options['axis'], popt, pcov)
|
||||||
|
Loading…
Reference in New Issue
Block a user