No project description provided
Project description
Rusty Capacitance Model Core
Quantum Dot Constant Capacitance Simulator is a high-performance Python package that leverages the power of Rust and Rayon to provide a fully parallelised and optimised simulation environment for quantum dots with constant capacitance.
This package provides core functionality; it is not intended that the user will interact with it directly.
Features
- Ultra-fast Simulation: Harnesses the speed of Rust and the parallelism of Rayon to deliver lightning-fast simulations.
- Constant Capacitance: Specialized for simulating quantum dots with constant capacitance, allowing precise modelling of charge dynamics.
- User-Friendly: Designed with ease of use in mind, making it accessible to both experts and newcomers in quantum dot simulations.
- Extensive Documentation: Comprehensive documentation and examples to help you get started quickly.
Installation
Install Quantum Dot Constant Capacitance Simulator using pip:
pip install rusty-capacitance-model-core
Usage
This package exposes two functions to be called from python:
ground_state_open
- computes the lowest energy state of a quantum dot array with constant capacitance and which is open, such that the total number of changes is not fixed.ground_state_closed
- computes the lowest energy state of a quantum dot array with constant capacitance and which is closed, such that the total number of changes is fixed.
The python code to call these functions is as follows:
from rusty_capacitance_model_core import (ground_state_open, ground_state_closed)
import numpy as np
# the dot-dot capacitance matrix
cdd = np.array([
[1, -0.1],
[-0.1, 1]
])
cdd_inv = np.linalg.inv(cdd)
# the dot-gate capacitance matrix
cgd = np.array([
[1, 0.3],
[0.3, 1]
])
# define a matrix of gate voltages to sweep over the first gate
vg = np.stack([np.linspace(-1, 1, 100), np.zeros(100)], axis = -1)
n_charge = 3 # the number of changes to confine in the quantum dot array for the closed case
threshold = 1 # threshold to avoid having to consider all possible charge states, setting it 1 is always correct, however has a computatinal cost.
n_open = ground_state_open(vg, cgd, cdd_inv, threshold)
n_closed = ground_state_closed(vg, n_charge, cgd, cdd, cdd_inv, threshold)
It is not intended the user ever call these functions directly.
There is a pure Python wrapper that provides a more user-friendly interface to this core functionality. See Quantum Dot Constant Capacitance Simulator. This package provides:
- A user-friendly interface to the core functionality.
- Plotting, charge sensing, virtual gate and gate voltage sweeping (1d and 2d) functionality.
- Advanced type checking using pydantic.
- Automated testing including for the functionality in this package.
- More examples.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for qarray_rust_core-1.0.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3fabda803494d8a40ca7490345a1ed8004c9ec239da21b2bdf9493f691c986d8 |
|
MD5 | 7439b888c5ca0520772d03dc9ce06714 |
|
BLAKE2b-256 | b0026c2bda66a15d9b7bda3cb34e695256e15e578dd343e7c3cce6c7eff395c8 |
Hashes for qarray_rust_core-1.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23d37ce71be131153b8c5fd14c6876ef97a4192c2ab3a403fe29d90a7ed289fd |
|
MD5 | 282663bfa94ab9f2fd53545820cd2a9c |
|
BLAKE2b-256 | 6f8964f3d61eb955572220600c035ce2bf7e173223ee55fbe26f3c541b3dee9e |
Hashes for qarray_rust_core-1.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77b06a8cde838c46f3641e42df1b89bc048891008e46d384c09cb536824b0e72 |
|
MD5 | ff4b9a59c9bab707244d76972c9bb3e1 |
|
BLAKE2b-256 | f72229b25f8ed54434cb38b0c28c9a86929124d7ae5b67f15cd5b0e42008d6e9 |
Hashes for qarray_rust_core-1.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36cde39e07dc9a8c174a3196d8c977f2bf02c2f39334cdc4a0bdd5d051a31c7d |
|
MD5 | 62e82fba84630c34291729aed42a46e4 |
|
BLAKE2b-256 | a79a9b4b9fbbc0e5f026e14a7ca35d6d91813c1eb6f23b472fa50ec30d99244e |