qplotter 1.6.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- qplot/__init__.py +46 -0
- qplot/__main__.py +232 -0
- qplot/_auxiliary_paths.py +67 -0
- qplot/_build_info.json +1 -0
- qplot/_metadata.py +75 -0
- qplot/_repair.py +14 -0
- qplot/_shutdown_supervisor.py +4049 -0
- qplot/_version.py +12 -0
- qplot/_windows_shutdown_job.py +1166 -0
- qplot/configuration/__init__.py +3 -0
- qplot/configuration/config.py +578 -0
- qplot/configuration/config_schema.json +357 -0
- qplot/configuration/fonts.py +3 -0
- qplot/configuration/scripts.py +255 -0
- qplot/configuration/themes/__init__.py +13 -0
- qplot/configuration/themes/_base.py +592 -0
- qplot/configuration/themes/blank.py +17 -0
- qplot/configuration/themes/dark.py +54 -0
- qplot/configuration/themes/light.py +54 -0
- qplot/datahandling/LoadFromDB.py +224 -0
- qplot/datahandling/__init__.py +47 -0
- qplot/datahandling/_trusted_live_helper.py +812 -0
- qplot/datahandling/_trusted_live_protocol.py +1745 -0
- qplot/datahandling/database.py +2340 -0
- qplot/datahandling/dimensions.py +43 -0
- qplot/datahandling/file_identity.py +461 -0
- qplot/datahandling/parameter_data.py +149 -0
- qplot/datahandling/plot_progress.py +17 -0
- qplot/datahandling/qcodes_cache.py +277 -0
- qplot/datahandling/qcodes_compat.py +14 -0
- qplot/datahandling/readSQL.py +2442 -0
- qplot/datahandling/readonly.py +2566 -0
- qplot/datahandling/source_activity.py +21 -0
- qplot/datahandling/trusted_array_preview.py +148 -0
- qplot/datahandling/trusted_derived_cache.py +1605 -0
- qplot/datahandling/trusted_derived_rendering.py +876 -0
- qplot/datahandling/trusted_heatmap.py +246 -0
- qplot/datahandling/trusted_live.py +2808 -0
- qplot/datahandling/trusted_live_queries.py +5907 -0
- qplot/datahandling/trusted_live_service.py +1919 -0
- qplot/datahandling/trusted_live_supervisor.py +2161 -0
- qplot/datahandling/trusted_plot.py +283 -0
- qplot/datahandling/trusted_presentation.py +1065 -0
- qplot/datahandling/trusted_snapshot.py +1132 -0
- qplot/datahandling/trusted_work_coordinator.py +2157 -0
- qplot/datahandling/trusted_work_scheduler.py +1204 -0
- qplot/diagnostics.py +241 -0
- qplot/resources/testdata/qplot_test_db_01_10mb.csv +11 -0
- qplot/resources/testdata/qplot_test_db_02_25mb.csv +14 -0
- qplot/resources/testdata/qplot_test_db_03_50mb.csv +17 -0
- qplot/resources/testdata/qplot_test_db_04_100mb.csv +20 -0
- qplot/resources/testdata/qplot_test_db_05_250mb.csv +23 -0
- qplot/resources/testdata/qplot_test_db_06_500mb.csv +26 -0
- qplot/resources/testdata/qplot_test_db_07_1gb.csv +29 -0
- qplot/resources/testdata/qplot_test_db_08_5gb.csv +32 -0
- qplot/resources/testdata/qplot_test_db_09_10gb.csv +35 -0
- qplot/resources/testdata/qplot_test_db_10_30gb.csv +38 -0
- qplot/testdata.py +1804 -0
- qplot/tools/__init__.py +13 -0
- qplot/tools/finite_means.py +123 -0
- qplot/tools/general.py +139 -0
- qplot/tools/heatmap_geometry.py +391 -0
- qplot/tools/operation_registry.py +179 -0
- qplot/tools/plot_tools.py +650 -0
- qplot/tools/sample_statistics.py +111 -0
- qplot/tools/worker.py +2838 -0
- qplot/windows/__init__.py +9 -0
- qplot/windows/_colorbar.py +422 -0
- qplot/windows/_commands.py +523 -0
- qplot/windows/_config_persistence.py +123 -0
- qplot/windows/_database_actions.py +4933 -0
- qplot/windows/_dataset_handle.py +221 -0
- qplot/windows/_display_precision.py +48 -0
- qplot/windows/_dragdrop.py +70 -0
- qplot/windows/_export_paths.py +1167 -0
- qplot/windows/_help.py +210 -0
- qplot/windows/_mixed_appearance.py +303 -0
- qplot/windows/_mixed_plots.py +461 -0
- qplot/windows/_native_averaging.py +323 -0
- qplot/windows/_native_transforms.py +551 -0
- qplot/windows/_plot1d_snap.py +612 -0
- qplot/windows/_plot1d_traces.py +2236 -0
- qplot/windows/_plot2d_colorbar.py +1127 -0
- qplot/windows/_plot2d_colorbar_dialog.py +786 -0
- qplot/windows/_plot2d_layers.py +2291 -0
- qplot/windows/_plot2d_sweeps.py +712 -0
- qplot/windows/_plotWin.py +2082 -0
- qplot/windows/_plot_actions.py +2703 -0
- qplot/windows/_plot_annotation.py +186 -0
- qplot/windows/_plot_appearance.py +283 -0
- qplot/windows/_plot_axis_scaling.py +1521 -0
- qplot/windows/_plot_data_viewbox.py +94 -0
- qplot/windows/_plot_drop_axes.py +224 -0
- qplot/windows/_plot_export.py +1445 -0
- qplot/windows/_plot_feedback.py +112 -0
- qplot/windows/_plot_marquee.py +659 -0
- qplot/windows/_plot_refresh.py +950 -0
- qplot/windows/_plot_source_promotion.py +178 -0
- qplot/windows/_plot_state.py +237 -0
- qplot/windows/_plot_status.py +115 -0
- qplot/windows/_plot_tiling.py +35 -0
- qplot/windows/_plot_transform_labels.py +60 -0
- qplot/windows/_preferences.py +724 -0
- qplot/windows/_refresh_interval.py +172 -0
- qplot/windows/_run_controls.py +789 -0
- qplot/windows/_shortcuts.py +47 -0
- qplot/windows/_subplots/__init__.py +8 -0
- qplot/windows/_subplots/subplot1d.py +532 -0
- qplot/windows/_subplots/subplot2d.py +919 -0
- qplot/windows/_svg_export.py +209 -0
- qplot/windows/_trusted_derived_qt.py +1759 -0
- qplot/windows/_widgets/__init__.py +23 -0
- qplot/windows/_widgets/_run_formatting.py +387 -0
- qplot/windows/_widgets/details_tables.py +1119 -0
- qplot/windows/_widgets/dropbox.py +290 -0
- qplot/windows/_widgets/operations.py +460 -0
- qplot/windows/_widgets/preview.py +2997 -0
- qplot/windows/_widgets/run_list_items.py +488 -0
- qplot/windows/_widgets/toolbar.py +111 -0
- qplot/windows/_widgets/treeWidgets.py +2572 -0
- qplot/windows/_window_controls.py +414 -0
- qplot/windows/main.py +1632 -0
- qplot/windows/plot1d.py +313 -0
- qplot/windows/plot2d.py +1935 -0
- qplotter-1.6.0.dist-info/METADATA +322 -0
- qplotter-1.6.0.dist-info/RECORD +130 -0
- qplotter-1.6.0.dist-info/WHEEL +5 -0
- qplotter-1.6.0.dist-info/entry_points.txt +4 -0
- qplotter-1.6.0.dist-info/licenses/LICENSE +21 -0
- qplotter-1.6.0.dist-info/top_level.txt +1 -0
qplot/diagnostics.py
ADDED
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
import sys
|
|
3
|
+
from logging.handlers import RotatingFileHandler
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
|
|
6
|
+
from qplot._auxiliary_paths import ensure_safe_auxiliary_path
|
|
7
|
+
|
|
8
|
+
LOGGER_NAME = "qplot"
|
|
9
|
+
LOG_FILE_NAME = "qplot.log"
|
|
10
|
+
LOG_FORMAT = "%(asctime)s %(levelname)s [%(name)s] %(message)s"
|
|
11
|
+
DEFAULT_MAX_BYTES = 1_000_000
|
|
12
|
+
DEFAULT_BACKUP_COUNT = 3
|
|
13
|
+
|
|
14
|
+
_ORIGINAL_EXCEPTHOOK = None
|
|
15
|
+
_EXCEPTHOOK_INSTALLED = False
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class _DatabaseSafeRotatingFileHandler(RotatingFileHandler):
|
|
19
|
+
"""Prevent logging and log rotation from touching measurement files."""
|
|
20
|
+
|
|
21
|
+
def _open(self):
|
|
22
|
+
ensure_safe_auxiliary_path(self.baseFilename)
|
|
23
|
+
return super()._open()
|
|
24
|
+
|
|
25
|
+
def emit(self, record):
|
|
26
|
+
try:
|
|
27
|
+
ensure_safe_auxiliary_path(self.baseFilename)
|
|
28
|
+
except OSError:
|
|
29
|
+
if self.stream is not None:
|
|
30
|
+
self.stream.close()
|
|
31
|
+
self.stream = None
|
|
32
|
+
return
|
|
33
|
+
super().emit(record)
|
|
34
|
+
|
|
35
|
+
def doRollover(self):
|
|
36
|
+
try:
|
|
37
|
+
ensure_safe_auxiliary_path(self.baseFilename)
|
|
38
|
+
for index in range(1, self.backupCount + 1):
|
|
39
|
+
ensure_safe_auxiliary_path(self.rotation_filename(
|
|
40
|
+
f"{self.baseFilename}.{index}",
|
|
41
|
+
))
|
|
42
|
+
except OSError:
|
|
43
|
+
return
|
|
44
|
+
super().doRollover()
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def default_log_file():
|
|
48
|
+
"""
|
|
49
|
+
Returns qPlot's default log file path.
|
|
50
|
+
|
|
51
|
+
"""
|
|
52
|
+
return Path.home() / ".qplot" / LOG_FILE_NAME
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
def get_logger(name=None):
|
|
56
|
+
"""
|
|
57
|
+
Returns qPlot's base logger or a child logger.
|
|
58
|
+
|
|
59
|
+
"""
|
|
60
|
+
if not name:
|
|
61
|
+
return logging.getLogger(LOGGER_NAME)
|
|
62
|
+
if name == LOGGER_NAME or str(name).startswith(f"{LOGGER_NAME}."):
|
|
63
|
+
return logging.getLogger(str(name))
|
|
64
|
+
return logging.getLogger(f"{LOGGER_NAME}.{name}")
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def configure_logging(
|
|
68
|
+
log_file=None,
|
|
69
|
+
level=logging.INFO,
|
|
70
|
+
force=False,
|
|
71
|
+
max_bytes=DEFAULT_MAX_BYTES,
|
|
72
|
+
backup_count=DEFAULT_BACKUP_COUNT,
|
|
73
|
+
):
|
|
74
|
+
"""
|
|
75
|
+
Configures qPlot's file logger.
|
|
76
|
+
|
|
77
|
+
Logging failures are intentionally non-fatal: diagnostics should never stop
|
|
78
|
+
the GUI from starting.
|
|
79
|
+
|
|
80
|
+
"""
|
|
81
|
+
logger = get_logger()
|
|
82
|
+
logger.setLevel(level)
|
|
83
|
+
logger.propagate = False
|
|
84
|
+
|
|
85
|
+
target = Path(log_file) if log_file is not None else default_log_file()
|
|
86
|
+
|
|
87
|
+
if force:
|
|
88
|
+
_remove_owned_handlers(logger)
|
|
89
|
+
elif log_file is None and _has_owned_handler(logger):
|
|
90
|
+
return logger
|
|
91
|
+
elif _has_handler_for(logger, target):
|
|
92
|
+
return logger
|
|
93
|
+
|
|
94
|
+
formatter = logging.Formatter(LOG_FORMAT)
|
|
95
|
+
handler: logging.Handler
|
|
96
|
+
try:
|
|
97
|
+
target.parent.mkdir(parents=True, exist_ok=True)
|
|
98
|
+
handler = _DatabaseSafeRotatingFileHandler(
|
|
99
|
+
target,
|
|
100
|
+
maxBytes=max_bytes,
|
|
101
|
+
backupCount=backup_count,
|
|
102
|
+
encoding="utf-8",
|
|
103
|
+
)
|
|
104
|
+
except (OSError, ValueError):
|
|
105
|
+
handler = logging.NullHandler()
|
|
106
|
+
|
|
107
|
+
handler.setLevel(level)
|
|
108
|
+
handler.setFormatter(formatter)
|
|
109
|
+
handler.__dict__["_qplot_owned"] = True
|
|
110
|
+
logger.addHandler(handler)
|
|
111
|
+
return logger
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
def install_excepthook(call_original=True):
|
|
115
|
+
"""
|
|
116
|
+
Installs a process-wide exception hook that writes uncaught exceptions.
|
|
117
|
+
|
|
118
|
+
"""
|
|
119
|
+
global _ORIGINAL_EXCEPTHOOK, _EXCEPTHOOK_INSTALLED
|
|
120
|
+
|
|
121
|
+
configure_logging()
|
|
122
|
+
if _ORIGINAL_EXCEPTHOOK is None:
|
|
123
|
+
_ORIGINAL_EXCEPTHOOK = sys.excepthook
|
|
124
|
+
|
|
125
|
+
def hook(exc_type, exc_value, traceback):
|
|
126
|
+
get_logger().critical(
|
|
127
|
+
"Uncaught exception",
|
|
128
|
+
exc_info=(exc_type, exc_value, traceback),
|
|
129
|
+
)
|
|
130
|
+
if call_original and _ORIGINAL_EXCEPTHOOK is not None:
|
|
131
|
+
_ORIGINAL_EXCEPTHOOK(exc_type, exc_value, traceback)
|
|
132
|
+
|
|
133
|
+
sys.excepthook = hook
|
|
134
|
+
_EXCEPTHOOK_INSTALLED = True
|
|
135
|
+
return hook
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def log_event(message, *args, level=logging.INFO, logger_name=None):
|
|
139
|
+
"""
|
|
140
|
+
Logs a diagnostic event after ensuring logging is configured.
|
|
141
|
+
|
|
142
|
+
"""
|
|
143
|
+
configure_logging()
|
|
144
|
+
get_logger(logger_name).log(level, message, *args)
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
def log_exception(context, error=None, logger_name=None):
|
|
148
|
+
"""
|
|
149
|
+
Logs an exception or sanitized worker error text.
|
|
150
|
+
|
|
151
|
+
Only actual exceptions supply traceback details. Worker text is already
|
|
152
|
+
bounded and detached from its originating exception before Qt transport.
|
|
153
|
+
|
|
154
|
+
"""
|
|
155
|
+
configure_logging()
|
|
156
|
+
logger = get_logger(logger_name)
|
|
157
|
+
if error is None:
|
|
158
|
+
logger.exception(context)
|
|
159
|
+
else:
|
|
160
|
+
logger.error(
|
|
161
|
+
"%s: %s",
|
|
162
|
+
context,
|
|
163
|
+
error,
|
|
164
|
+
exc_info=(type(error), error, error.__traceback__)
|
|
165
|
+
if isinstance(error, BaseException) else None,
|
|
166
|
+
)
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
def log_user_error(title, message, details=None, logger_name=None):
|
|
170
|
+
"""
|
|
171
|
+
Logs the summary of a user-visible error dialog.
|
|
172
|
+
|
|
173
|
+
Dialog details can contain database values, connection strings, or other
|
|
174
|
+
measurement metadata. They remain available in the on-screen dialog but
|
|
175
|
+
are deliberately excluded from the persistent clear-text log.
|
|
176
|
+
|
|
177
|
+
"""
|
|
178
|
+
configure_logging()
|
|
179
|
+
logger = get_logger(logger_name)
|
|
180
|
+
if details:
|
|
181
|
+
logger.error("%s: %s\nDetails: omitted from persistent log", title, message)
|
|
182
|
+
else:
|
|
183
|
+
logger.error("%s: %s", title, message)
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
def log_bounded_shutdown(message, diagnostics, logger_name=None):
|
|
187
|
+
"""
|
|
188
|
+
Persists qPlot's internal bounded-shutdown resource snapshot exactly.
|
|
189
|
+
|
|
190
|
+
Unlike user-dialog details, this payload is generated solely from qPlot's
|
|
191
|
+
process and resource-liveness accounting and is required for post-mortem
|
|
192
|
+
shutdown diagnosis.
|
|
193
|
+
|
|
194
|
+
"""
|
|
195
|
+
configure_logging()
|
|
196
|
+
get_logger(logger_name).error("%s\n%s", message, diagnostics)
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
def _has_handler_for(logger, target):
|
|
200
|
+
try:
|
|
201
|
+
target = target.resolve()
|
|
202
|
+
except OSError:
|
|
203
|
+
target = target.absolute()
|
|
204
|
+
|
|
205
|
+
for handler in logger.handlers:
|
|
206
|
+
if not getattr(handler, "_qplot_owned", False):
|
|
207
|
+
continue
|
|
208
|
+
if not hasattr(handler, "baseFilename"):
|
|
209
|
+
continue
|
|
210
|
+
try:
|
|
211
|
+
if Path(handler.baseFilename).resolve() == target:
|
|
212
|
+
return True
|
|
213
|
+
except OSError:
|
|
214
|
+
continue
|
|
215
|
+
return False
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
def _has_owned_handler(logger):
|
|
219
|
+
return any(getattr(handler, "_qplot_owned", False) for handler in logger.handlers)
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
def _remove_owned_handlers(logger):
|
|
223
|
+
for handler in list(logger.handlers):
|
|
224
|
+
if not getattr(handler, "_qplot_owned", False):
|
|
225
|
+
continue
|
|
226
|
+
logger.removeHandler(handler)
|
|
227
|
+
handler.close()
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
def _reset_logging_for_tests():
|
|
231
|
+
"""
|
|
232
|
+
Resets qPlot diagnostics globals for isolated unit tests.
|
|
233
|
+
|
|
234
|
+
"""
|
|
235
|
+
global _ORIGINAL_EXCEPTHOOK, _EXCEPTHOOK_INSTALLED
|
|
236
|
+
|
|
237
|
+
_remove_owned_handlers(get_logger())
|
|
238
|
+
if _EXCEPTHOOK_INSTALLED and _ORIGINAL_EXCEPTHOOK is not None:
|
|
239
|
+
sys.excepthook = _ORIGINAL_EXCEPTHOOK
|
|
240
|
+
_ORIGINAL_EXCEPTHOOK = None
|
|
241
|
+
_EXCEPTHOOK_INSTALLED = False
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
21
|
+
2,current,Current,nA,-0.05,0.05,1001,-5,5,1501
|
|
22
|
+
2,conductance,Conductance,uS,-0.5,0.5,1001,-15,15,1501
|
|
23
|
+
2,signal,Signal,a.u.,-1.0,1.0,1001,-50,50,1501
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
21
|
+
2,current,Current,nA,-0.05,0.05,1001,-5,5,1501
|
|
22
|
+
2,conductance,Conductance,uS,-0.5,0.5,1001,-15,15,1501
|
|
23
|
+
2,signal,Signal,a.u.,-1.0,1.0,1001,-50,50,1501
|
|
24
|
+
2,current,Current,nA,-0.06,0.06,1251,-6,6,1901
|
|
25
|
+
2,conductance,Conductance,uS,-0.6,0.6,1251,-18,18,1901
|
|
26
|
+
2,signal,Signal,a.u.,-1.2,1.2,1251,-60,60,1901
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
21
|
+
2,current,Current,nA,-0.05,0.05,1001,-5,5,1501
|
|
22
|
+
2,conductance,Conductance,uS,-0.5,0.5,1001,-15,15,1501
|
|
23
|
+
2,signal,Signal,a.u.,-1.0,1.0,1001,-50,50,1501
|
|
24
|
+
2,current,Current,nA,-0.06,0.06,1251,-6,6,1901
|
|
25
|
+
2,conductance,Conductance,uS,-0.6,0.6,1251,-18,18,1901
|
|
26
|
+
2,signal,Signal,a.u.,-1.2,1.2,1251,-60,60,1901
|
|
27
|
+
2,current,Current,nA,-0.07,0.07,1801,-7,7,2701
|
|
28
|
+
2,conductance,Conductance,uS,-0.7,0.7,1801,-21,21,2701
|
|
29
|
+
2,signal,Signal,a.u.,-1.4,1.4,1801,-70,70,2701
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
21
|
+
2,current,Current,nA,-0.05,0.05,1001,-5,5,1501
|
|
22
|
+
2,conductance,Conductance,uS,-0.5,0.5,1001,-15,15,1501
|
|
23
|
+
2,signal,Signal,a.u.,-1.0,1.0,1001,-50,50,1501
|
|
24
|
+
2,current,Current,nA,-0.06,0.06,1251,-6,6,1901
|
|
25
|
+
2,conductance,Conductance,uS,-0.6,0.6,1251,-18,18,1901
|
|
26
|
+
2,signal,Signal,a.u.,-1.2,1.2,1251,-60,60,1901
|
|
27
|
+
2,current,Current,nA,-0.07,0.07,1801,-7,7,2701
|
|
28
|
+
2,conductance,Conductance,uS,-0.7,0.7,1801,-21,21,2701
|
|
29
|
+
2,signal,Signal,a.u.,-1.4,1.4,1801,-70,70,2701
|
|
30
|
+
2,current,Current,nA,-0.08,0.08,5001,-8,8,7501
|
|
31
|
+
2,conductance,Conductance,uS,-0.8,0.8,5001,-24,24,7501
|
|
32
|
+
2,signal,Signal,a.u.,-1.6,1.6,5001,-80,80,7501
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
21
|
+
2,current,Current,nA,-0.05,0.05,1001,-5,5,1501
|
|
22
|
+
2,conductance,Conductance,uS,-0.5,0.5,1001,-15,15,1501
|
|
23
|
+
2,signal,Signal,a.u.,-1.0,1.0,1001,-50,50,1501
|
|
24
|
+
2,current,Current,nA,-0.06,0.06,1251,-6,6,1901
|
|
25
|
+
2,conductance,Conductance,uS,-0.6,0.6,1251,-18,18,1901
|
|
26
|
+
2,signal,Signal,a.u.,-1.2,1.2,1251,-60,60,1901
|
|
27
|
+
2,current,Current,nA,-0.07,0.07,1801,-7,7,2701
|
|
28
|
+
2,conductance,Conductance,uS,-0.7,0.7,1801,-21,21,2701
|
|
29
|
+
2,signal,Signal,a.u.,-1.4,1.4,1801,-70,70,2701
|
|
30
|
+
2,current,Current,nA,-0.08,0.08,5001,-8,8,7501
|
|
31
|
+
2,conductance,Conductance,uS,-0.8,0.8,5001,-24,24,7501
|
|
32
|
+
2,signal,Signal,a.u.,-1.6,1.6,5001,-80,80,7501
|
|
33
|
+
2,current,Current,nA,-0.09,0.09,5601,-9,9,8401
|
|
34
|
+
2,conductance,Conductance,uS,-0.9,0.9,5601,-27,27,8401
|
|
35
|
+
2,signal,Signal,a.u.,-1.8,1.8,5601,-90,90,8401
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
dimensions,measured_name,measured_label,measured_unit,v_sd_start,v_sd_stop,v_sd_points,v_g_start,v_g_stop,v_g_points
|
|
2
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
3
|
+
1,conductance,Conductance,uS,-0.1,0.1,1001,,,
|
|
4
|
+
1,resistance,Resistance,kOhm,-0.1,0.1,1001,,,
|
|
5
|
+
1,transconductance,Transconductance,uS/V,-0.1,0.1,1001,,,
|
|
6
|
+
1,current,Current,nA,-0.1,0.1,1001,,,
|
|
7
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
8
|
+
2,current,Current,nA,-0.01,0.01,201,-1,1,301
|
|
9
|
+
2,resistance,Resistance,kOhm,-0.05,0.05,201,-5,5,301
|
|
10
|
+
2,charge_sensor,Charge sensor,a.u.,-0.02,0.02,201,-2,2,301
|
|
11
|
+
2,signal,Signal,a.u.,-0.2,0.2,201,-10,10,301
|
|
12
|
+
2,current,Current,nA,-0.02,0.02,301,-2,2,451
|
|
13
|
+
2,conductance,Conductance,uS,-0.2,0.2,301,-6,6,451
|
|
14
|
+
2,signal,Signal,a.u.,-0.4,0.4,301,-20,20,451
|
|
15
|
+
2,current,Current,nA,-0.03,0.03,401,-3,3,601
|
|
16
|
+
2,conductance,Conductance,uS,-0.3,0.3,401,-9,9,601
|
|
17
|
+
2,signal,Signal,a.u.,-0.6,0.6,401,-30,30,601
|
|
18
|
+
2,current,Current,nA,-0.04,0.04,551,-4,4,851
|
|
19
|
+
2,conductance,Conductance,uS,-0.4,0.4,551,-12,12,851
|
|
20
|
+
2,signal,Signal,a.u.,-0.8,0.8,551,-40,40,851
|
|
21
|
+
2,current,Current,nA,-0.05,0.05,1001,-5,5,1501
|
|
22
|
+
2,conductance,Conductance,uS,-0.5,0.5,1001,-15,15,1501
|
|
23
|
+
2,signal,Signal,a.u.,-1.0,1.0,1001,-50,50,1501
|
|
24
|
+
2,current,Current,nA,-0.06,0.06,1251,-6,6,1901
|
|
25
|
+
2,conductance,Conductance,uS,-0.6,0.6,1251,-18,18,1901
|
|
26
|
+
2,signal,Signal,a.u.,-1.2,1.2,1251,-60,60,1901
|
|
27
|
+
2,current,Current,nA,-0.07,0.07,1801,-7,7,2701
|
|
28
|
+
2,conductance,Conductance,uS,-0.7,0.7,1801,-21,21,2701
|
|
29
|
+
2,signal,Signal,a.u.,-1.4,1.4,1801,-70,70,2701
|
|
30
|
+
2,current,Current,nA,-0.08,0.08,5001,-8,8,7501
|
|
31
|
+
2,conductance,Conductance,uS,-0.8,0.8,5001,-24,24,7501
|
|
32
|
+
2,signal,Signal,a.u.,-1.6,1.6,5001,-80,80,7501
|
|
33
|
+
2,current,Current,nA,-0.09,0.09,5601,-9,9,8401
|
|
34
|
+
2,conductance,Conductance,uS,-0.9,0.9,5601,-27,27,8401
|
|
35
|
+
2,signal,Signal,a.u.,-1.8,1.8,5601,-90,90,8401
|
|
36
|
+
2,current,Current,nA,-0.10,0.10,11001,-10,10,17001
|
|
37
|
+
2,conductance,Conductance,uS,-1.0,1.0,11001,-30,30,17001
|
|
38
|
+
2,signal,Signal,a.u.,-2.0,2.0,11001,-100,100,17001
|