This commit is contained in:
Jianshun Gao 2023-06-16 11:23:43 +02:00
parent 348e1cd71f
commit 244b0864a8
2 changed files with 269 additions and 98 deletions

View File

@ -89,21 +89,24 @@ def ThomasFermi_2d(x, y=0.0, centerx=0.0, centery=0.0, amplitude=1.0, sigmax=1.0
def polylog(power, numerator):
dataShape = numerator.shape
numerator = np.tile(numerator, (20, 1))
order = 20
denominator = np.arange(1, 21)
dataShape = numerator.shape
numerator = np.tile(numerator, (order, 1))
numerator = np.power(numerator.T, np.arange(1, order+1)).T
denominator = np.arange(1, order+1)
denominator = np.tile(denominator, (dataShape[0], 1))
denominator = denominator.T
data = numerator / denominator
data = numerator/ np.power(denominator, power)
return np.sum(np.power(data, power), axis=0)
return np.sum(data, axis=0)
def polylog2_2d(x, y=0.0, centerx=0.0, centery=0.0, amplitude=1.0, sigmax=1.0, sigmay=1.0):
## Approximation of the polylog function with 2D gaussian as argument. -> discribes the thermal part of the cloud
return amplitude / np.pi / 1.59843 / max(tiny, sigmax * sigmay) * polylog(2, np.exp( -((x-centerx)**2/(2 * (sigmax)**2))-((y-centery)**2/( 2 * (sigmay)**2)) ))
return amplitude / 2 / np.pi / 1.20206 / max(tiny, sigmax * sigmay) * polylog(2, np.exp( -((x-centerx)**2/(2 * (sigmax)**2))-((y-centery)**2/( 2 * (sigmay)**2)) ))
def density_profile_BEC_2d(x, y=0.0, BEC_amplitude=1.0, thermal_amplitude=1.0, BEC_centerx=0.0, BEC_centery=0.0, thermal_centerx=0.0, thermal_centery=0.0,

File diff suppressed because one or more lines are too long