QP Diffusion Random Walk
Previous work modeling superconducting qubit device
Previous work modeling superconducting qubit device
QP Dynamics
Diffusion part
Finite Differencing
8 mm chip w/ 1 um feature resolution
dx, dy = 0.5 um
Stability condition for a finite differencing scheme (Al)
QP scattering characteristic time (Al)
QP Dynamics
Diffusion part
Finite Differencing
8 mm chip w/ 1 um feature resolution
dx, dy = 0.5 um
~256e6 grid points -> 1024e6 operations per time step
~4400 time steps for a typical QP lifetime
Other finite differencing schemes (Crank-Nichelson) don’t have a stability condition, however this only reduces number of time steps
Random walk 1-D - Brownian Motion
Position probability
Position probability after two steps
After k steps by induction
Source : A. F. Ghoniem, F. S. Sherman, Journal of Computational Physics, 61 1 (1985)
Random walk 1-D - Brownian Motion
After k steps by induction
Source : A. F. Ghoniem, F. S. Sherman, Journal of Computational Physics, 61 1 (1985)
Random walk 1-D
Solid lines are finite differencing method of solving diffusion
Histograms are of the 10000 particles undergoing the 1-D random walk
Random walk 1-D
Number preserving boundary conditions are encoded in the random walk with reflection conditions at the boundaries
Random walk 2-D - Number preserving conditions on square boundary
Random walk 2-D - On a general polygon boundary
Random walk 2-D - On a general polygon boundary
Random walk 2-D - On a general polygon boundary
1000 particles - 10 times as long as the left same number of time steps
2 particles
Random walk 2-D - General polygon boundary -> Our GDS features are polygons
Can use GDS files to encode boundary conditions
Showed a grid-less and time step insensitive method for modeling the diffusion equation
Modeling QPs as random walkers means modeling particle specific processes like scattering can be modeled directly with a Monte-Carlo scheme.
Implementation in G4CMP so far …
As of 07/10/2024
Defining the geometry: python script to undo self-intersections of GDS polygon vertices
Defining the geometry: Most holes are defined via self intersections
1
2
3
4
5
6
Defining the geometry: Most holes are defined via self intersections
1
2
3
4
5
10
6
7
8
9
Defining the geometry: Edge case not accounted for in script yet …
1
2
3
4
5
6
7
8
9
10
Defining the geometry: Edge case not accounted for in script yet …
1
2
3
4
5
6
7
8
9
10
Disclaimer:
This script has only be tested for GDS’s drawn with KLayout. Other cad tools may treat holes differently
Implementing the QP RW in G4CMP - What needs to be implemented?
Implementing the QP RW in G4CMP - What needs to be implemented?
QP RW transport physics process
Open question: How much of this structure do I emulate?
QP RW transport physics process
In implementing the boundary conditions should there be a child class of the G4CMPSurfaceProperty class? (Would have additional arguments for handling QP reflection/absorption probabilities)
Or should there be a second constructor for the current G4CMPSurfaceProperties class that allows input of QP reflection/absorption probabilities
QPRW update - as of 01/07/2025
Previous work modeling superconducting qubit device
Previous work modeling superconducting qubit device
QP Dynamics
Diffusion part
Finite Differencing
8 mm chip w/ 1 um feature resolution
dx, dy = 0.5 um
Stability condition for a finite differencing scheme (Al)
QP scattering characteristic time (Al)
QP Dynamics
Diffusion part
Finite Differencing
8 mm chip w/ 1 um feature resolution
dx, dy = 0.5 um
~256e6 grid points -> 1024e6 operations per time step
~4400 time steps for a typical QP lifetime
Other finite differencing schemes (Crank-Nichelson) don’t have a stability condition, however this only reduces number of time steps
Random walk 1-D - Brownian Motion
Position probability
Position probability after two steps
After k steps by induction
Source : A. F. Ghoniem, F. S. Sherman, Journal of Computational Physics, 61 1 (1985)
Random walk 1-D - Brownian Motion
After k steps by induction
Source : A. F. Ghoniem, F. S. Sherman, Journal of Computational Physics, 61 1 (1985)
‘Proof of concept’ implemented in python
1-D diffusion with number preserving boundary conditions
2-D diffusion on a generic polygon boundary
1000 particles - 10 times as long as the left same number of time steps
2 particles
Solid lines are finite differencing method of solving diffusion
Histograms are of the 10000 particles undergoing the 1-D random walk
G4CMP implementation - Diffusive transport
Focusing on just the diffusive transport of part of the physics processes (ignoring boundaries for now …), there are two main classes used to implement the random walk transport
Geant4 stepping algorithm
QP Transport Process - AlongStepGPIL
Inputs are the particle track, current minimal step (cms)
time step is given by the smaller between cms/velocity or ½ x 1/(𝚪s)
track position
QP Transport Process - AlongStepDoIt
Inputs are the particle track, step
QP Transport Process - AlongStepDoIt
Inputs are the particle track, step
This last condition needs to be tested further - likely unintentionally kill particles going from a small volume to a larger volume i.e. a QP trap to larger film volume
Testing the diffusive transport code
Started by simulating in a small volume to confirm that the boundaries are being handled properly - the boundaries are perfectly reflective
Also confirm the G4CMPConfig parameters are working properly - i.e. maxQPBounces = 10
Testing the diffusive transport code
Works still for larger volumes …
Testing the diffusive transport code
500um x 500 um volume - comparing finite differencing and G4CMP code
Blue and orange solid lines are finite differencing method of solving diffusion
1000 QPs simulated in G4CMP - distribution is green histogram. Black is gaussian fit to the distribution
Testing the diffusive transport code - extracting diffusion constant
Testing the diffusive transport code - Energy dependence