Skip to content

Analytical potentials for rectangle electrodes in a surface ion trap

License

Notifications You must be signed in to change notification settings

carmelom/rectset

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rectset

License DOI

Analytical potentials for rectangle electrodes in a surface ion trap.

This package provides numpy functions to calculate analytically the electric potential, gradient, and hessian generated by a rectangular electrode in the upper half-space above it $(z > 0)$.

Install

pip install rectset

Dependencies

numpy

API

rectangle_electrode.py

Static potential, gradient and hessian generated by a rectangle electrode of finite size delimited by corner points $(x_1, y_1)$ and $(x_2, y_2)$, set at a DC potential of 1 V.

pseudopotential.py

Static potential and gradient of a pair of electrodes symmetric around $y = 0$, separated by a distance $a$, of width $w$ and infinitely extended along $x$; pseudopotential generated by the same pair loaded by an AC voltage of amplitude 1 V, frequency of 1 MHz, for a particle of charge +1 elementary charge and of mass 1 amu.

Geometry

Usage

import numpy as np
from rectset import rectangle_electrode as rect
from rectset import pseudopotential as ps

# Square electrode of 20 x 20 um
# Potential and derivatives along one line at 50 um above the trap plane

x1, y1 = -10e-6, -10e-6
x2, y2 = 10e-6, 10e-6

x = np.linspace(-100, 100) * 1e-6
y = 0
z = 50e-6

pot = rect.rect_el_potential(x, y, z, x1, x2, y1, y2)  # ndarray, shape (50,)
grad = rect.rect_el_gradient(x, y, z, x1, x2, y1, y2)  # ndarray, shape (50, 3)
hess = rect.rect_el_hessian(x, y, z, x1, x2, y1, y2)  # ndarray, shape (50, 3, 3)


# Infinite pair of RF electrodes, large 100 um and separated by 40 um
# Pseudopotential and derivatives experienced by a 40Ca+ ion with
# RF voltage amplitude = 50 V
# RF voltage frequency = 30 MHz

a = 40e-6
w = 100e-6
rf_v = 50  # volt
rf_freq_mhz = 30  # megahertz
ion_unit_charge = 1  # elementary charge
ion_mass_amu = 40  # amu

K = (rf_v**2 * ion_unit_charge) / (ion_mass_amu * rf_freq_mhz**2)  # trap and ion scaling factor

pspot = K * ps.pseudo_potential(x, y, z, a, w)  # ndarray, shape (50,)
psgrad = K * ps.pseudo_gradient(x, y, z, a, w)  # ndarray, shape (50, 3)
pshess = K * ps.pseudo_hessian(x, y, z, a, w)  # ndarray, shape (50, 3, 3)

References

M.G.House, "Analytic model for electrostatic fields in surface-electrode ion traps", Phys. Rev. A 78, 033402 (2008) https://doi.org/10.1103/PhysRevA.78.033402

About

Analytical potentials for rectangle electrodes in a surface ion trap

Resources

License

Stars

Watchers

Forks

Packages

No packages published