Developing core#17
Open
Drv5MC wants to merge 43 commits into
Open
Conversation
…tion Brought the most recent GUI commit from today to core. Also, reordered the set_voltage_configuration method to eliminate the intermediate and done logic. This optimizes computation/ memory; now, the idea is to check at each voltage step if the set voltage is correct and won't spike the device, instead of collecting each intermediate step.
Merging gui and core branches
edits made to developing core to ensure the app still ran after merging gui into core.
…ummy instrument for the live viewer
Added a test station config file for testing the dil fridge. Also added a recursive getattr function to the instrument handler to allow the use of the spi rack. Also, removed the ui.update to increase stability for older lab pcs. Also, ensured any pre-existing ui logger handler is removed on startup Finally, changed the timestamp for the logger to be compatible with Windows.
Started developing experiment_base.py, and fleshing out experiment_handler (renamed from experiment_thread). added structure like futures to the experiment_jobs, callbacks and added the abort_event to the thread loop. Defined a sweep layer dataclass in experiment_base.
The first iteration of sweep functions added to the autotuner.
First, I changed the experiment_handler to be more like an analogue to instrument_handler. Then, I added the do_seep_job and do_sweep class and method to the experiment_handler. Then all the specific methods to run the sweep itself are defined within experiment_base. Then, I updated the debug button accordingly. Finally, I updated the main.py to reflect these changes in name and function for experiment_handler.
Added methods to experiment_base for setting voltage configurations without taking data. Added an additional test button to the gui to test different sweeps and queues. Added some fitting functions to data_analysis to be linked to the autotuning_protocol file.
Updated the Sweep methods to allow for multiple instrument parameters to be swept in the same sweep layer.
Added a helper function to allow for multi-layer sweeps to reset smoothly in-between each layer completion. Also, updated the format of the saved CSV file, though currently the header keys are hard-coded. This will require an additional edit to be able to dynamically add readout instrument names later. run_sweep 1 2 and 3 buttons are used to debug each of these features. The next steps are to test a sequence of sweeps akin to the autotuning code in totality. Then, connections must be made between each subsequent sweep, with additional data analysis taking place.
Fixed a bug for set_voltage_layer that would cause the reset layer to just play the entire sweep backwards.
Replaced write control with experimental_base. Added outline of functions to autotuning_protocol.py. Fleshed out the writing capabilities of the Bootstrapping class, which should now be ready to debug once buttons are added to the gui to test each function. Also added a parent Protocol class to store config file data for the rest of the stages.
Added files and modified gui.py to allow for testing the experimental setup
Added Configuration files to test the autotuning code.
Debugged and added extra functionality to data_analysis.py. Tested it Jupyter Notebook with Intel device data collected.
…otControl into developing-core
Made extract_working_point code return more useful information
tunnel barrier tuning along with updating function for finding max conductance points
Errors fixed and code has been tested.
Changed config files to eliminate certain constraints that are now unused. Altered SET and Triple Dot config files to be used for testing the functions only. Added the autotuning_handler py file to have an additional autotuning thread. Finalized all bootstrapping logic with the exception of the pinch-off window function and the max conductance points function. Right now, the pinch-offs are being detected accurately, but not the saturation points for the accumulation gates or the plunger gates. Currently, the testing required before Bootstrapping is completed is: Refactoring and testing of new saturation point logic Testing of the charge sensor plunger sweep function Testing of the coulomb diamond function
Removed iterative pinch-off; this reduces time and allows for the pinch-off curves to be better fit to sigmoidal curves. Also updated the coulomb blockade sweep and diamond functions.
Using Gompertz function to model the pinch-off curves in order to find saturation values.
…otControl into developing-core
This commit adds the majority of the Global Charge State tuning funcitons, including a method for calibrating countersweeping and confirming charge transitions, and tuning the tunnel barrier.
Modified the GCT init to only run the protocol init, instead of the bootstrapping init as well.
Code for determining the cross-talk line through hough transform and the peak conductance and the pair voltage associated with it.
…otControl into developing-core
A commit including all of the changes made to the autotuning code up to and including June 24th. For the pinch-off curves, the gompertz function is now being used to fit rather than a traditional sigmoid. This function better accounts for asymmetry in the sigmoidal curve data taken. Functions used to calibrate for and detect charge transitions in the charge sensor were implemented, as well as a general plunger-plunger scan funtion.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.