atomcloud.functions.funcs_2d module
Created on Fri Mar 18 21:16:36 2022
@author: hofer
- class atomcloud.functions.funcs_2d.EnhancedBose2D[source]
Bases:
Gaussian2DEnhanced Bose 2D cloud function object. This includes the fugacity in the fitting parameters. See FunctionBase for full documentation.
- analyze_parameters(params)[source]
Analysis includes the integrated density and the sigma labwidths.
- class atomcloud.functions.funcs_2d.FixedEnhancedBose2D[source]
Bases:
Gaussian2DFixed enhanced Bose 2D cloud function object. We assume that for this fit function we are near quantum degeneracy and the fugacity is 1. See CloudFunctionBase for full documentation
- class atomcloud.functions.funcs_2d.FixedOffset2D[source]
Bases:
FunctionBaseFixed offset 2D cloud function object. This is a simple offset function which can be combined with those functions objects above.
- class atomcloud.functions.funcs_2d.Function2DBase[source]
Bases:
FunctionBaseInherits from FunctionBase and then adds the 2D specific function to create the coordinate transformation functions compatible with JAX.
See FunctionBase for full documentation
- create_coord_funcs(anp)[source]
Creates the coordinate transformation functions which are compatible with JAX due to the use of the creation wrapper function. Again, we can’t use self in the function because it is not jittable
- Parameters:
anp – The numpy or jax numpy module to use for the functions which are created.
- Returns:
The overall coordinate transformation function for 2D coordinates
- class atomcloud.functions.funcs_2d.Gaussian2D[source]
Bases:
Function2DBaseSee FunctionBase for full documentation.
- analyze_parameters(params)[source]
Calculates the lab widths and the integrated density from the fitted parameters
- create_gaussian2d(anp)[source]
Creates the 2D gaussian function. This will be also used in the inherited ebose classes so it’s a separate function.
- class atomcloud.functions.funcs_2d.Parabola2D[source]
Bases:
Function2DBaseParabola 2D cloud function object. This is a simple parabola function and not for the integrated case, although it can be used as an approximation
- analyze_parameters(params)[source]
Analysis includes the integrated density and the radius labwidths.
- create_parabola2d(anp)[source]
Creates the 2D parabola function. This is upside down and does not go lower than 0. Using the np.where or jnp.where which makes it JAX compatible. The parabola is also used for the Thomas-Fermi object which is why it is a separate function.
- default_bounds()[source]
Default bounds for the 2D parabola function are the same as for the Gaussian.
- class atomcloud.functions.funcs_2d.ThomasFermi2D[source]
Bases:
Parabola2DThomas-Fermi 2D cloud function object. This is a simple parabola but with a different exponent (3/2) since in absorption imaging we are integrating along the imaging beam axis.
- atomcloud.functions.funcs_2d.general_analysis_rescale(analysis_params, scale, key=None)[source]
General rescale for clouds which have only a single lab withds parameter and an integrated density.