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

Double Gate Devices Part 12 (Start with reploting)

parent 4b21cafa
No related branches found
No related tags found
No related merge requests found
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
.ipynb_checkpoints/ .ipynb_checkpoints/
.vs/ .vs/
__pycache__/ __pycache__/
.virtual_documents/
*.txt *.txt
*.csv *.csv
......
...@@ -231,3 +231,91 @@ def additional_secondary(name,start,step,stop,comp): ...@@ -231,3 +231,91 @@ def additional_secondary(name,start,step,stop,comp):
'comp':secondary_grid[3,0] 'comp':secondary_grid[3,0]
} }
return secondary_grid,parameters return secondary_grid,parameters
def replot(name):
replot_grid = GridspecLayout(8,2)
replot_grid[0,:]=widgets.Label(name,layout=Layout(height='auto', width='auto'))
replot_grid[0,:].style.font_weight = 'bold'
replot_grid[1,0]= widgets.Checkbox(
description = "Replot",
value = True,
indent = False,
disabled = True
)
replot_grid[1,1] = widgets.Text(
description = "Mode:",
value = ' ',
layout=Layout(height='auto', width=floatbox_width),
disabled = True
)
replot_grid[2,0] = widgets.Label('X-axis',layout=Layout(height='auto', width='auto'))
replot_grid[2,1] = widgets.Label('Y-axis',layout=Layout(height='auto', width='auto'))
for i in range(2):
replot_grid[3,i]= widgets.Dropdown(
options = [],
description = "Variable:",
layout=Layout(height='auto', width=floatbox_width),
disabled = True
)
replot_grid[4,i] = widgets.FloatText(
value = None,
description = 'min:',
layout=Layout(height='auto', width=floatbox_width),
disabled = True,
)
replot_grid[5,i] = widgets.FloatText(
value = None,
description = 'max:',
layout=Layout(height='auto', width=floatbox_width),
disabled = True
)
replot_grid[6,i] = widgets.Dropdown(
description = 'scale:',
options =['linear','log'],
value = 'linear',
layout=Layout(height='auto', width=floatbox_width),
disabled = True
)
replot_grid[7,i]= widgets.Checkbox(
description = "Autolimits",
value = True,
style = style,
disabled = True
)
X_axis = {
'values': replot_grid[3,0],
'min':replot_grid[4,0],
'max':replot_grid[5,0],
'scale':replot_grid[6,0],
'auto':replot_grid[7,0]
}
Y_axis = {
'values': replot_grid[3,1],
'min':replot_grid[4,1],
'max':replot_grid[5,1],
'scale':replot_grid[6,1],
'auto':replot_grid[7,1]
}
config = {
'grid':replot_grid,
'check':replot_grid[1,0],
'mode': replot_grid[1,1],
'x_axis': X_axis,
'y_axis': Y_axis
}
return config
\ No newline at end of file
%% Cell type:code id:81f37cac-ea14-4540-8bc9-78bee248dfbb tags: %% Cell type:code id:81f37cac-ea14-4540-8bc9-78bee248dfbb tags:
``` python ``` python
import sys import sys
sys.path.insert(0, './lib') sys.path.insert(0, './lib')
sys.path.insert(0, '..') #append parent directory sys.path.insert(0, '..') #append parent directory
from interface import * from interface import *
from help import * from help import *
``` ```
%% Cell type:code id:731635ba-6f97-4a65-ad78-ae90b277544b tags: %% Cell type:code id:731635ba-6f97-4a65-ad78-ae90b277544b tags:
``` python ``` python
# Create the grids # Create the grids
#create the information grid #create the information grid
style = {'description_width': 'initial'} style = {'description_width': 'initial'}
sample = information_box_new() sample = information_box_new()
###end of sampling information####################################### ###end of sampling information#######################################
# move checkboxes outside of the tabs # move checkboxes outside of the tabs
transfer_check,integration_transfer,transfer_gates = header('Transfer Curve',"MEDium") transfer_check,integration_transfer,transfer_gates = header('Transfer Curve',"MEDium")
output_check,integration_output,output_gates = header('Output Curve',"SHORt") output_check,integration_output,output_gates = header('Output Curve',"SHORt")
gatediode_check,integration_gatediode,_=header('Gatediode',"MEDium") gatediode_check,integration_gatediode,_=header('Gatediode',"MEDium")
checkboxes = widgets.HBox([transfer_check,output_check,gatediode_check]) checkboxes = widgets.HBox([transfer_check,output_check,gatediode_check])
display(checkboxes) display(checkboxes)
#transfer #transfer
Vds_transfer_widgets,Vds_transfer = secondary('VDS',0.05,0.95,1,1e-2) Vds_transfer_widgets,Vds_transfer = secondary('VDS',0.05,0.95,1,1e-2)
Vtg_transfer_widgets,Vtg_transfer = primary('VTG',-5,0.01,5,1e-3) Vtg_transfer_widgets,Vtg_transfer = primary('VTG',-5,0.01,5,1e-3)
Vbg_transfer_widgets,Vbg_transfer = synchronous('VBG',-15,0.1,15,1e-3) Vbg_transfer_widgets,Vbg_transfer = synchronous('VBG',-15,0.1,15,1e-3)
transfer_box = widgets.VBox([integration_transfer,transfer_gates,Vds_transfer_widgets,Vtg_transfer_widgets,Vbg_transfer_widgets]) transfer_box = widgets.VBox([integration_transfer,transfer_gates,Vds_transfer_widgets,Vtg_transfer_widgets,Vbg_transfer_widgets])
#output #output
Vds_output_widgets,Vds_output = primary('VDS',0,0.01,5,1e-2) Vds_output_widgets,Vds_output = primary('VDS',0,0.01,5,1e-2)
Vtg_output_widgets,Vtg_output = secondary('VTG',-5,2,5,1e-3) Vtg_output_widgets,Vtg_output = secondary('VTG',-5,2,5,1e-3)
Vbg_output_widgets,Vbg_output = additional_secondary('VBG',-15,5,15,1e-3) Vbg_output_widgets,Vbg_output = additional_secondary('VBG',-15,5,15,1e-3)
output_box = widgets.VBox([integration_output,output_gates,Vds_output_widgets,Vtg_output_widgets,Vbg_output_widgets]) output_box = widgets.VBox([integration_output,output_gates,Vds_output_widgets,Vtg_output_widgets,Vbg_output_widgets])
#GateDiodde #GateDiodde
terminal = widgets.Dropdown( terminal = widgets.Dropdown(
options = ['VTG','VBG'], options = ['VTG','VBG'],
description = 'Selected Gate:', description = 'Selected Gate:',
value ='VTG', value ='VTG',
style= {'description_width': 'initial'} style= {'description_width': 'initial'}
) )
Vg_gatediode_widgets,Vg_gatediode=primary('VG',-5,0.05,5,1e-3) Vg_gatediode_widgets,Vg_gatediode=primary('VG',-5,0.05,5,1e-3)
gatediode_box = widgets.VBox([integration_gatediode,terminal,Vg_gatediode_widgets]) gatediode_box = widgets.VBox([integration_gatediode,terminal,Vg_gatediode_widgets])
#the tab widget #the tab widget
children = [transfer_box,output_box,gatediode_box] children = [transfer_box,output_box,gatediode_box]
titles = ["Transfer","Output","Gatediode"] titles = ["Transfer","Output","Gatediode"]
tab = widgets.Tab() tab = widgets.Tab()
tab.children = children tab.children = children
tab.titles = titles tab.titles = titles
display(tab) display(tab)
button = widgets.Button(description ='Start Measurement') button = widgets.Button(description ='Start Measurement')
output = widgets.Output() output = widgets.Output()
export_ini_button = widgets.Button(description = 'Export as ini') export_ini_button = widgets.Button(description = 'Export as ini')
import_ini_button = widgets.Button(description='Import from ini') import_ini_button = widgets.Button(description='Import from ini')
all_widgets =[transfer_gates,output_gates,button,transfer_check,integration_transfer,output_check,integration_output,gatediode_check,integration_gatediode,terminal,export_ini_button,import_ini_button] all_widgets =[transfer_gates,output_gates,button,transfer_check,integration_transfer,output_check,integration_output,gatediode_check,integration_gatediode,terminal,export_ini_button,import_ini_button]
add_widgets_to_list(sample,all_widgets) add_widgets_to_list(sample,all_widgets)
add_widgets_to_list(Vds_transfer,all_widgets) add_widgets_to_list(Vds_transfer,all_widgets)
add_widgets_to_list(Vtg_transfer,all_widgets) add_widgets_to_list(Vtg_transfer,all_widgets)
add_widgets_to_list(Vbg_transfer,all_widgets) add_widgets_to_list(Vbg_transfer,all_widgets)
add_widgets_to_list(Vds_output,all_widgets) add_widgets_to_list(Vds_output,all_widgets)
add_widgets_to_list(Vtg_output,all_widgets) add_widgets_to_list(Vtg_output,all_widgets)
add_widgets_to_list(Vbg_output,all_widgets) add_widgets_to_list(Vbg_output,all_widgets)
add_widgets_to_list(Vg_gatediode,all_widgets) add_widgets_to_list(Vg_gatediode,all_widgets)
line = widgets.HBox([button,import_ini_button,export_ini_button]) line = widgets.HBox([button,import_ini_button,export_ini_button])
display(line,output) display(line,output)
``` ```
%% Output %% Output
%% Cell type:code id:686c8934-9c7f-4485-a817-1daa1ffe0168 tags: %% Cell type:code id:686c8934-9c7f-4485-a817-1daa1ffe0168 tags:
``` python ``` python
transfer_replot=replot('Transfer')
display(transfer_replot['grid'])
```
%% Output
%% Cell type:code id:ec1b6f3a-e7f7-44e7-a6fa-df2ecfd83b42 tags:
``` python
``` ```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment