Skip to content
Snippets Groups Projects
Commit be507a57 authored by Alexandros Asonitis's avatar Alexandros Asonitis
Browse files

double gate devices part 2

parent c4fa1c42
No related branches found
No related tags found
No related merge requests found
......@@ -18,9 +18,10 @@ def header(name):
return check, integration
def primary(name,start,step,stop,comp):
def primary(name,start,step,stop,comp,sync = False):
primary_grid = GridspecLayout(4,4)
primary_grid[:,3]=widgets.Label(name,layout=Layout(height='auto', width='auto'))
primary_grid[:,3].style.font_weight = 'bold'
#first line
......@@ -43,6 +44,7 @@ def primary(name,start,step,stop,comp):
primary_grid[3,1]=widgets.BoundedFloatText(value=0,min=0,max=2,step=0.1,layout=Layout(height='auto', width=floatbox_width))#mind the gap
primary_grid[3,2]=widgets.Dropdown(options=['SINGle','DOUBle'],value='SINGle',layout=Layout(height='auto', width=floatbox_width))#mind the gap
if sync == False:
parameters = {
'start': primary_grid[1,0],
'step': primary_grid[1,1],
......@@ -51,14 +53,24 @@ def primary(name,start,step,stop,comp):
'hyst':primary_grid[3,2],
'pcomp':primary_grid[3,1]
}
else: # for syncronus smu the step is disabled
primary_grid[3,2].disabled = True
primary_grid[1,1].disabled = True
parameters = {
'start': primary_grid[1,0],
'stop': primary_grid[1,2],
'comp': primary_grid[3,0],
'pcomp':primary_grid[3,1]
}
return primary_grid,parameters
def secondary(name,start,step,stop,comp):
secondary_grid = GridspecLayout(4,4)
secondary_grid[:,3]=widgets.Label(name,layout=Layout(height='auto', width='auto'))
secondary_grid[:,3].style.font_weight = 'bold'
#first line
secondary_grid[0,0]=widgets.Label("Start(V)",layout=Layout(height='auto', width='auto'))
......@@ -136,3 +148,5 @@ def information_box_new():
return information
# Primary widgets
\ No newline at end of file
%% Cell type:code id:81f37cac-ea14-4540-8bc9-78bee248dfbb tags:
``` python
import sys
sys.path.insert(0, './lib')
sys.path.insert(0, '..') #append parent directory
from interface import *
```
%% Cell type:code id:731635ba-6f97-4a65-ad78-ae90b277544b tags:
``` python
# Create the grids
#create the information grid
style = {'description_width': 'initial'}
sample = information_box_new()
###end of sampling information#######################################
# move checkboxes outside of the tabs
transfer_check,integration_transfer = header('Transfer Curve')
output_check,integration_output = header('Output Curve')
gatediode_check,integration_gatediode=header('Gatediode')
checkboxes = widgets.HBox([transfer_check,output_check,gatediode_check])
display(checkboxes)
print()
#transfer
Vds_transfer_widgets,Vds_transfer = secondary('Vds',1,0,1,0.1)
Vtg_transfer_widgets,Vtg_transfer = primary('Vtg',-7,0.1,7,0.01)
Vbg_transfer_widgets,Vbg_transfer = primary('Vbg',-50,50/7*0.1,50,0.01,True)
transfer_box = widgets.VBox([integration_transfer,Vds_transfer_widgets,Vtg_transfer_widgets,Vbg_transfer_widgets])
#output
Vds_output_widgets,Vds_output = primary('Vds',0,0.01,5,0.1)
Vtg_output_widgets,Vtg_output = secondary('Vtg',2,-1,-8,0.01)
output_box = widgets.VBox([integration_output,Vds_output_widgets,Vtg_output_widgets])
#GateDiodde
Vgs_gatediode_widgets,Vgs_gatediode=primary('Vgs',-8,0.05,2,0.02)
gatediode_box = widgets.VBox([integration_gatediode,Vgs_gatediode_widgets])
#the tab widget
children = [transfer_box,output_box,gatediode_box]
titles = ["Transfer","Output","Gatediode"]
tab = widgets.Tab()
tab.children = children
tab.titles = titles
display(tab)
print()
```
%% Output
%% Cell type:code id:df6835fd-e02c-49cb-aa4e-42fddef69b86 tags:
``` python
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment