pychemstation 0.8.2__py3-none-any.whl → 0.8.3__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.
- pychemstation/control/controllers/tables/sequence.py +1 -1
- {pychemstation-0.8.2.dist-info → pychemstation-0.8.3.dist-info}/METADATA +2 -1
- {pychemstation-0.8.2.dist-info → pychemstation-0.8.3.dist-info}/RECORD +5 -7
- pychemstation/out.txt +0 -145
- pychemstation/tests.ipynb +0 -310
- {pychemstation-0.8.2.dist-info → pychemstation-0.8.3.dist-info}/WHEEL +0 -0
- {pychemstation-0.8.2.dist-info → pychemstation-0.8.3.dist-info}/licenses/LICENSE +0 -0
@@ -202,7 +202,7 @@ class SequenceController(TableController):
|
|
202
202
|
if stall_while_running:
|
203
203
|
run_completed = self.check_hplc_done_running()
|
204
204
|
if run_completed.is_ok():
|
205
|
-
self.data_files[-1]
|
205
|
+
self.data_files[-1] = run_completed.ok_value
|
206
206
|
else:
|
207
207
|
raise RuntimeError("Run error has occurred.")
|
208
208
|
else:
|
@@ -1,6 +1,4 @@
|
|
1
1
|
pychemstation/__init__.py,sha256=SpTl-Tg1B1HTyjNOE-8ue-N2wGnXN_2zl7RFUSxlkiM,33
|
2
|
-
pychemstation/out.txt,sha256=PLwo0w7AOhwQUSmvf3jupRuBH9eEtPmVhLrVaFoDqJo,5990
|
3
|
-
pychemstation/tests.ipynb,sha256=rDrl2AyP47sWO5ZmPxUrMzExS8ex1k1NIe9UbMwkKio,41136
|
4
2
|
pychemstation/analysis/__init__.py,sha256=EWoU47iyn9xGS-b44zK9eq50bSjOV4AC5dvt420YMI4,44
|
5
3
|
pychemstation/analysis/base_spectrum.py,sha256=dPULGlr-sMHNMDIdyzlvX8taw_nkBliKTb00lNI8cwk,16517
|
6
4
|
pychemstation/analysis/process_report.py,sha256=wysKaA06UeK_9ba2SZc9maP4P-HQfZDMD9NNt21kWcY,11850
|
@@ -18,7 +16,7 @@ pychemstation/control/controllers/devices/injector.py,sha256=ynPQtvMFt1iK0LQBf4Z
|
|
18
16
|
pychemstation/control/controllers/tables/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
19
17
|
pychemstation/control/controllers/tables/method.py,sha256=sX83sHlnaAm8Wop_d28RDAk4DBPvQWduH3Atodtmw4A,17714
|
20
18
|
pychemstation/control/controllers/tables/ms.py,sha256=JFD-tOhu8uRyKdl-E3-neRssii8MNqVRIlsrnFhNY_M,682
|
21
|
-
pychemstation/control/controllers/tables/sequence.py,sha256=
|
19
|
+
pychemstation/control/controllers/tables/sequence.py,sha256=1bZdoVK877KuAwKTjo-NWvOU8rHxx8cQBL4I71ZN4EM,13105
|
22
20
|
pychemstation/control/controllers/tables/table.py,sha256=Adis9584LJqP4yjLj5XrIxqq1jzdBiDieOG4vc90EIU,12327
|
23
21
|
pychemstation/generated/__init__.py,sha256=GAoZFAYbPVEJDkcOw3e1rgOqd7TCW0HyKNPM8OMehMg,1005
|
24
22
|
pychemstation/generated/dad_method.py,sha256=zfS9op450CRSGPKkUr9qUyPBbND06b9N8SUU9j4cosM,8408
|
@@ -33,7 +31,7 @@ pychemstation/utils/pump_types.py,sha256=HWQHxscGn19NTrfYBwQRCO2VcYfwyko7YfBO5uD
|
|
33
31
|
pychemstation/utils/sequence_types.py,sha256=x2EClcq6ROdzeLZg63XcXXTknwl2aZ48Vuyru0xZjgA,1086
|
34
32
|
pychemstation/utils/table_types.py,sha256=7txqW_oNpkh4venSkGEtreVe6UV9dzNB1DTrIeTkQHA,3217
|
35
33
|
pychemstation/utils/tray_types.py,sha256=eOO-muUjadyvCM8JnYAZVyxJeyYBlENP1zXiFskAFbs,5049
|
36
|
-
pychemstation-0.8.
|
37
|
-
pychemstation-0.8.
|
38
|
-
pychemstation-0.8.
|
39
|
-
pychemstation-0.8.
|
34
|
+
pychemstation-0.8.3.dist-info/METADATA,sha256=vfeuRByzef7lYuAQgYyON587lphk76NR3cPOQZyhwfQ,4575
|
35
|
+
pychemstation-0.8.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
36
|
+
pychemstation-0.8.3.dist-info/licenses/LICENSE,sha256=9bdF75gIf1MecZ7oymqWgJREVz7McXPG-mjqrTmzzD8,18658
|
37
|
+
pychemstation-0.8.3.dist-info/RECORD,,
|
pychemstation/out.txt
DELETED
@@ -1,145 +0,0 @@
|
|
1
|
-
Local Rows
|
2
|
-
Local Rows
|
3
|
-
Local Rows
|
4
|
-
LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
|
5
|
-
response$ = _MethFile$
|
6
|
-
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
7
|
-
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
8
|
-
Sleep 0.1
|
9
|
-
Print Rows
|
10
|
-
response$ = _MethFile$
|
11
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
12
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
13
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
14
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
15
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
16
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
17
|
-
Local Rows
|
18
|
-
Local Rows
|
19
|
-
Local Rows
|
20
|
-
LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
|
21
|
-
response$ = _MethFile$
|
22
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-22-32-44"
|
23
|
-
response$ = AcqStatus$
|
24
|
-
response$ = AcqStatus$
|
25
|
-
response$ = AcqStatus$
|
26
|
-
response$ = AcqStatus$
|
27
|
-
response$ = AcqStatus$
|
28
|
-
response$ = AcqStatus$
|
29
|
-
response$ = AcqStatus$
|
30
|
-
response$ = AcqStatus$
|
31
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-22-36-41"
|
32
|
-
response$ = AcqStatus$
|
33
|
-
Local Rows
|
34
|
-
Local Rows
|
35
|
-
Local Rows
|
36
|
-
LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
|
37
|
-
response$ = _MethFile$
|
38
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-22-37-41"
|
39
|
-
response$ = AcqStatus$
|
40
|
-
response$ = AcqStatus$
|
41
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-46-39"
|
42
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-46-52"
|
43
|
-
Local Rows
|
44
|
-
Local Rows
|
45
|
-
Local Rows
|
46
|
-
LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
|
47
|
-
response$ = _MethFile$
|
48
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-47-43"
|
49
|
-
response$ = AcqStatus$
|
50
|
-
response$ = AcqStatus$
|
51
|
-
response$ = AcqStatus$
|
52
|
-
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
53
|
-
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
54
|
-
Sleep 0.1
|
55
|
-
Print Rows
|
56
|
-
response$ = _MethFile$
|
57
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-48-45"
|
58
|
-
response$ = AcqStatus$
|
59
|
-
response$ = AcqStatus$
|
60
|
-
response$ = AcqStatus$
|
61
|
-
response$ = AcqStatus$
|
62
|
-
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
63
|
-
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
64
|
-
Sleep 0.1
|
65
|
-
Print Rows
|
66
|
-
response$ = _MethFile$
|
67
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
68
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
69
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
70
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
71
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
72
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-50-02"
|
73
|
-
response$ = AcqStatus$
|
74
|
-
response$ = AcqStatus$
|
75
|
-
response$ = AcqStatus$
|
76
|
-
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
77
|
-
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
78
|
-
Sleep 0.1
|
79
|
-
Print Rows
|
80
|
-
response$ = _MethFile$
|
81
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
82
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
83
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
84
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
85
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
86
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
87
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
|
88
|
-
response$ = AcqStatus$
|
89
|
-
response$ = AcqStatus$
|
90
|
-
response$ = AcqStatus$
|
91
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-59-41"
|
92
|
-
response$ = AcqStatus$
|
93
|
-
response$ = AcqStatus$
|
94
|
-
response$ = AcqStatus$
|
95
|
-
response$ = AcqStatus$
|
96
|
-
response$ = AcqStatus$
|
97
|
-
response$ = AcqStatus$
|
98
|
-
response$ = AcqStatus$
|
99
|
-
response$ = AcqStatus$
|
100
|
-
response$ = AcqStatus$
|
101
|
-
response$ = AcqStatus$
|
102
|
-
response$ = AcqStatus$
|
103
|
-
response$ = AcqStatus$
|
104
|
-
response$ = AcqStatus$
|
105
|
-
Local Rows
|
106
|
-
Local Rows
|
107
|
-
Local Rows
|
108
|
-
Local Rows
|
109
|
-
LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
|
110
|
-
response$ = _MethFile$
|
111
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-01-48"
|
112
|
-
Local Rows
|
113
|
-
Local Rows
|
114
|
-
Local Rows
|
115
|
-
LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
|
116
|
-
response$ = _MethFile$
|
117
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-02-04"
|
118
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-02-22"
|
119
|
-
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
120
|
-
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
121
|
-
Local Rows
|
122
|
-
Local Rows
|
123
|
-
Local Rows
|
124
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-13-10"
|
125
|
-
response$ = AcqStatus$
|
126
|
-
response$ = AcqStatus$
|
127
|
-
response$ = AcqStatus$
|
128
|
-
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
129
|
-
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
130
|
-
Sleep 0.1
|
131
|
-
Print Rows
|
132
|
-
response$ = _MethFile$
|
133
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
134
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
135
|
-
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
136
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
137
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
138
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
139
|
-
response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
|
140
|
-
response$ = AcqStatus$
|
141
|
-
RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-14-53"
|
142
|
-
response$ = AcqStatus$
|
143
|
-
response$ = AcqStatus$
|
144
|
-
response$ = AcqStatus$
|
145
|
-
response$ = AcqStatus$
|
pychemstation/tests.ipynb
DELETED
@@ -1,310 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"cells": [
|
3
|
-
{
|
4
|
-
"cell_type": "code",
|
5
|
-
"execution_count": 6,
|
6
|
-
"metadata": {},
|
7
|
-
"outputs": [
|
8
|
-
{
|
9
|
-
"name": "stdout",
|
10
|
-
"output_type": "stream",
|
11
|
-
"text": [
|
12
|
-
"parsed_response = 'testing.M'\n",
|
13
|
-
"switch method\n",
|
14
|
-
"sample_name = 'run_0_test'\n",
|
15
|
-
"check_hplc_is_running\n",
|
16
|
-
"(<queue.Queue object at 0x000001D5B606D790>, False)\n",
|
17
|
-
"check_hplc_is_running\n",
|
18
|
-
"check_hplc_done_running\n",
|
19
|
-
"done run\n",
|
20
|
-
"done running\n",
|
21
|
-
"No data at channel: G\n",
|
22
|
-
"No data at channel: H\n",
|
23
|
-
"got data\n"
|
24
|
-
]
|
25
|
-
},
|
26
|
-
{
|
27
|
-
"data": {
|
28
|
-
"text/plain": [
|
29
|
-
"'C:\\\\Program Files (x86)\\\\Agilent Technologies\\\\ChemStation\\\\CORE'"
|
30
|
-
]
|
31
|
-
},
|
32
|
-
"execution_count": 6,
|
33
|
-
"metadata": {},
|
34
|
-
"output_type": "execute_result"
|
35
|
-
}
|
36
|
-
],
|
37
|
-
"source": [
|
38
|
-
"from pychemstation.control import HPLCController\n",
|
39
|
-
"import pandas as pd\n",
|
40
|
-
"\n",
|
41
|
-
"# C:\\Users\\Public\\Documents\\ChemStation\\1\n",
|
42
|
-
"# these paths will be unique to your Chemstation setup\n",
|
43
|
-
"\n",
|
44
|
-
"DEFAULT_COMMAND_PATH = r\"C:\\Users\\User\\Finn\\code\\turbo_iroh\\sub_modules\\pychemstation\\letterbox\"\n",
|
45
|
-
"DEFAULT_METHOD = \"testing\"\n",
|
46
|
-
"DEFAULT_METHOD_DIR = r\"C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\Methods\\\\\"\n",
|
47
|
-
"DATA_DIR = \"C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\data\\\\\" \n",
|
48
|
-
"SEQUENCE_DIR = r\"C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\Sequence\\\\\"\n",
|
49
|
-
"\n",
|
50
|
-
"hplc_controller = HPLCController(data_dirs=[DATA_DIR],\n",
|
51
|
-
" comm_dir=DEFAULT_COMMAND_PATH,\n",
|
52
|
-
" sequence_dir=SEQUENCE_DIR,\n",
|
53
|
-
" method_dir=DEFAULT_METHOD_DIR)\n",
|
54
|
-
"\n",
|
55
|
-
"# hplc_controller.preprun()\n",
|
56
|
-
"\n",
|
57
|
-
"hplc_controller.switch_method(method_name=DEFAULT_METHOD)\n",
|
58
|
-
"print(\"switch method\")\n",
|
59
|
-
"\n",
|
60
|
-
"i = 0\n",
|
61
|
-
"sample_name = f\"run_{i}_test\"\n",
|
62
|
-
"print(f\"{sample_name = }\")\n",
|
63
|
-
"\n",
|
64
|
-
"hplc_controller.run_method(experiment_name=\"run_test\")\n",
|
65
|
-
"print(\"done running\")\n",
|
66
|
-
"\n",
|
67
|
-
"input(\"is done?\")\n",
|
68
|
-
"chrom = hplc_controller.get_last_run_method_data()\n",
|
69
|
-
"print(\"got data\")\n",
|
70
|
-
"\n",
|
71
|
-
"\n",
|
72
|
-
"\n",
|
73
|
-
"\n",
|
74
|
-
"# RunMethod \"C:\\Users\\Public\\Documents\\ChemStation\\1\\data\\\",, \"testingaaal\"\n",
|
75
|
-
"# RunMethod \"C:\\Users\\Public\\Documents\\ChemStation\\1\\data\\\",, \"testingaaal\"\n",
|
76
|
-
"\n",
|
77
|
-
"\"C:\\\\program files (X86)\\\\Agilent Technologies\\\\chemstation\\\\core\"\n",
|
78
|
-
"\"C:\\\\Program Files (x86)\\\\Agilent Technologies\\\\ChemStation\\\\CORE\""
|
79
|
-
]
|
80
|
-
},
|
81
|
-
{
|
82
|
-
"cell_type": "code",
|
83
|
-
"execution_count": null,
|
84
|
-
"metadata": {},
|
85
|
-
"outputs": [],
|
86
|
-
"source": [
|
87
|
-
"values = {\"x\": chrom.A.x, \"y\": chrom.A.y}\n",
|
88
|
-
"chromatogram_data = pd.DataFrame.from_dict(values)\n",
|
89
|
-
"chromatogram_data.to_csv(\"Run 10.csv\", index=False) "
|
90
|
-
]
|
91
|
-
},
|
92
|
-
{
|
93
|
-
"cell_type": "code",
|
94
|
-
"execution_count": 4,
|
95
|
-
"metadata": {},
|
96
|
-
"outputs": [
|
97
|
-
{
|
98
|
-
"data": {
|
99
|
-
"text/plain": [
|
100
|
-
"<pychemstation.utils.chromatogram.AgilentHPLCChromatogram at 0x1d584cef390>"
|
101
|
-
]
|
102
|
-
},
|
103
|
-
"execution_count": 4,
|
104
|
-
"metadata": {},
|
105
|
-
"output_type": "execute_result"
|
106
|
-
}
|
107
|
-
],
|
108
|
-
"source": [
|
109
|
-
"chrom.A"
|
110
|
-
]
|
111
|
-
},
|
112
|
-
{
|
113
|
-
"cell_type": "code",
|
114
|
-
"execution_count": 7,
|
115
|
-
"metadata": {},
|
116
|
-
"outputs": [
|
117
|
-
{
|
118
|
-
"data": {
|
119
|
-
"image/png": "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",
|
120
|
-
"text/plain": [
|
121
|
-
"<Figure size 640x480 with 1 Axes>"
|
122
|
-
]
|
123
|
-
},
|
124
|
-
"metadata": {},
|
125
|
-
"output_type": "display_data"
|
126
|
-
}
|
127
|
-
],
|
128
|
-
"source": [
|
129
|
-
"import matplotlib.pyplot as plt\n",
|
130
|
-
"\n",
|
131
|
-
"# plt.scatter(chrom.A.x, chrom.A.y, label=\"A\")\n",
|
132
|
-
"plt.scatter(chrom.D.x, chrom.D.y, label=\"D\")\n",
|
133
|
-
"plt.scatter(chrom.F.x, chrom.F.y, label=\"F\")\n",
|
134
|
-
"plt.show()\n"
|
135
|
-
]
|
136
|
-
},
|
137
|
-
{
|
138
|
-
"cell_type": "code",
|
139
|
-
"execution_count": 1,
|
140
|
-
"metadata": {},
|
141
|
-
"outputs": [
|
142
|
-
{
|
143
|
-
"name": "stdout",
|
144
|
-
"output_type": "stream",
|
145
|
-
"text": [
|
146
|
-
"sample_name = 'run_0_test'\n"
|
147
|
-
]
|
148
|
-
}
|
149
|
-
],
|
150
|
-
"source": [
|
151
|
-
"from pychemstation.control import HPLCController\n",
|
152
|
-
"import pandas as pd\n",
|
153
|
-
"import time\n",
|
154
|
-
"# C:\\Users\\Public\\Documents\\ChemStation\\1\n",
|
155
|
-
"# these paths will be unique to your Chemstation setup\n",
|
156
|
-
"\n",
|
157
|
-
"DEFAULT_COMMAND_PATH = r\"C:\\Users\\User\\Finn\\code\\turbo_iroh\\sub_modules\\pychemstation\\letterbox\"\n",
|
158
|
-
"DEFAULT_METHOD = \"testing\"\n",
|
159
|
-
"DEFAULT_METHOD_DIR = r\"C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\Methods\\\\\"\n",
|
160
|
-
"DATA_DIR = \"C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\data\\\\\" \n",
|
161
|
-
"SEQUENCE_DIR = r\"C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\Sequence\\\\\"\n",
|
162
|
-
"\n",
|
163
|
-
"hplc_controller = HPLCController(data_dirs=[DATA_DIR],\n",
|
164
|
-
" comm_dir=DEFAULT_COMMAND_PATH,\n",
|
165
|
-
" sequence_dir=SEQUENCE_DIR,\n",
|
166
|
-
" method_dir=DEFAULT_METHOD_DIR)\n",
|
167
|
-
"\n",
|
168
|
-
"# hplc_controller.preprun()\n",
|
169
|
-
"\n",
|
170
|
-
"# hplc_controller.switch_method(method_name=DEFAULT_METHOD)\n",
|
171
|
-
"# print(\"switch method\")\n",
|
172
|
-
"\n",
|
173
|
-
"i = 0\n",
|
174
|
-
"sample_name = f\"run_{i}_test\"\n",
|
175
|
-
"print(f\"{sample_name = }\")\n",
|
176
|
-
"\n"
|
177
|
-
]
|
178
|
-
},
|
179
|
-
{
|
180
|
-
"cell_type": "code",
|
181
|
-
"execution_count": 6,
|
182
|
-
"metadata": {},
|
183
|
-
"outputs": [],
|
184
|
-
"source": [
|
185
|
-
"hplc_controller.run_method(experiment_name=\"run_test\", stall_while_running=False)"
|
186
|
-
]
|
187
|
-
},
|
188
|
-
{
|
189
|
-
"cell_type": "code",
|
190
|
-
"execution_count": 7,
|
191
|
-
"metadata": {},
|
192
|
-
"outputs": [
|
193
|
-
{
|
194
|
-
"name": "stdout",
|
195
|
-
"output_type": "stream",
|
196
|
-
"text": [
|
197
|
-
"check_hplc_is_running\n"
|
198
|
-
]
|
199
|
-
}
|
200
|
-
],
|
201
|
-
"source": [
|
202
|
-
"hplc_controller.wait_hplc_running()"
|
203
|
-
]
|
204
|
-
},
|
205
|
-
{
|
206
|
-
"cell_type": "code",
|
207
|
-
"execution_count": 8,
|
208
|
-
"metadata": {},
|
209
|
-
"outputs": [
|
210
|
-
{
|
211
|
-
"name": "stdout",
|
212
|
-
"output_type": "stream",
|
213
|
-
"text": [
|
214
|
-
"Finished HPLC run: True\n",
|
215
|
-
"Looking for:\n",
|
216
|
-
"most_recent_folder = 'C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\data\\\\run_test_2025-03-28-00-14-53.D'\n",
|
217
|
-
"Looking for:\n",
|
218
|
-
"most_recent_folder = 'C:\\\\Users\\\\Public\\\\Documents\\\\ChemStation\\\\1\\\\data\\\\run_test_2025-03-28-00-14-53.D'\n"
|
219
|
-
]
|
220
|
-
}
|
221
|
-
],
|
222
|
-
"source": [
|
223
|
-
"# custom wait\n",
|
224
|
-
"hplc_controller.wait_hplc()"
|
225
|
-
]
|
226
|
-
},
|
227
|
-
{
|
228
|
-
"cell_type": "code",
|
229
|
-
"execution_count": 9,
|
230
|
-
"metadata": {},
|
231
|
-
"outputs": [
|
232
|
-
{
|
233
|
-
"name": "stdout",
|
234
|
-
"output_type": "stream",
|
235
|
-
"text": [
|
236
|
-
"No data at channel: G\n",
|
237
|
-
"No data at channel: H\n",
|
238
|
-
"got data\n"
|
239
|
-
]
|
240
|
-
},
|
241
|
-
{
|
242
|
-
"data": {
|
243
|
-
"image/png": "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q6tbHzU1Na6WkYDjwNChQ62rr7669d/Nzc1WcXGxNXv27IDb/+QnP7HGjRvX7rlhw4ZZl19+uavlTHVO67mt3r17E3AciKauLcuympqarJycHOvJJ590q4hGiLaeLcuyBg0aZN18881uFM8okdR1U1OTNXz4cOtPf/qTNXHiRAKODU7r+YknnrDy8vLiVLoD6KKy6ZtvvtGaNWs0evTo1ue8Xq9Gjx6tFStWBHzNihUr2m0vSWeffXbQ7RFZPSMysajr+vp6NTY2qqCgwK1iprxo69myLC1ZskSbN2/WiBEj3Cxqyou0rm+//Xb16NFDl112WTyKmfIired9+/apd+/eKikp0Xnnnaf169e7Wk4Cjk2ff/65mpub1bNnz3bP9+zZUzU1NQFfU1NT42h7RFbPiEws6nrGjBkqLi4+KMjjW5HWc11dnbp27arMzEyNGzdODz74oM466yy3i5vSIqnrf/7zn3rsscf06KOPxqOIRoiknvv376/HH39cL774op5++mm1tLRo+PDh2rFjh2vlPCTvJg4genPmzNH8+fO1bNky9wcLHoJycnJUWVmpffv2acmSJbruuuvUt29fjRw5MtFFM8bevXt18cUX69FHH1X37t0TXRyjlZWVqaysrPXfw4cP18CBA/Xwww9r1qxZrrwnAcem7t27Ky0tTbt27Wr3/K5du1RUVBTwNUVFRY62R2T1jMhEU9dz587VnDlz9MYbb+jEE090s5gpL9J69nq96tevnyTppJNO0saNGzV79mwCTghO63rr1q36+OOPde6557Y+19LSIklKT0/X5s2bdfTRR7tb6BQUi+N0RkaGBg0apC1btrhRREl0UdmWmZmpwYMHa8mSJa3PtbS0aMmSJe1SaVtlZWXttpekioqKoNsjsnpGZCKt67vvvluzZs3S4sWLNWTIkHgUNaXF6jvd0tKihoYGN4poDKd1PWDAAK1bt06VlZWtjx/84Ac688wzVVlZqZKSkngWP2XE4jvd3NysdevW6fDDD3ermEwTd2L+/PlWVlaW9ec//9nasGGDNWXKFCs/P791qtvFF19szZw5s3X75cuXW+np6dbcuXOtjRs3WrfccgvTxG1wWs8NDQ3W2rVrrbVr11qHH364df3111tr1661Pvzww0R9hJThtK7nzJljZWZmWgsWLGg33XPv3r2J+ggpwWk933nnndbrr79ubd261dqwYYM1d+5cKz093Xr00UcT9RFShtO67ohZVPY4refbbrvNeu2116ytW7daa9asscaPH29lZ2db69evd62MBByHHnzwQatXr15WZmamNXToUOudd95p/dsZZ5xhTZw4sd32f//7361jjz3WyszMtI477jjrH//4R5xLnJqc1PO2bdssSQc9zjjjjPgXPAU5qevevXsHrOtbbrkl/gVPMU7q+de//rXVr18/Kzs72+rWrZtVVlZmzZ8/PwGlTk1Oj9NtEXDsc1LPv/zlL1u37dmzpzV27Fjr3XffdbV8HsuyLPfahwAAAOKPMTgAAMA4BBwAAGAcAg4AADAOAQcAABiHgAMAAIxDwAEAAMYh4AAAAOMQcAAAgHEIOAAAwDgEHAAAYBwCDgAAMA4BBwAAGOf/A9kTfsniraZ1AAAAAElFTkSuQmCC",
|
244
|
-
"text/plain": [
|
245
|
-
"<Figure size 640x480 with 1 Axes>"
|
246
|
-
]
|
247
|
-
},
|
248
|
-
"metadata": {},
|
249
|
-
"output_type": "display_data"
|
250
|
-
},
|
251
|
-
{
|
252
|
-
"data": {
|
253
|
-
"text/plain": [
|
254
|
-
"'C:\\\\Program Files (x86)\\\\Agilent Technologies\\\\ChemStation\\\\CORE'"
|
255
|
-
]
|
256
|
-
},
|
257
|
-
"execution_count": 9,
|
258
|
-
"metadata": {},
|
259
|
-
"output_type": "execute_result"
|
260
|
-
}
|
261
|
-
],
|
262
|
-
"source": [
|
263
|
-
"\n",
|
264
|
-
"chrom = hplc_controller.get_last_run_method_data()\n",
|
265
|
-
"print(\"got data\")\n",
|
266
|
-
"\n",
|
267
|
-
"import matplotlib.pyplot as plt\n",
|
268
|
-
"\n",
|
269
|
-
"# plt.scatter(chrom.A.x, chrom.A.y, label=\"A\")\n",
|
270
|
-
"plt.scatter(chrom.D.x, chrom.D.y, label=\"D\")\n",
|
271
|
-
"plt.scatter(chrom.F.x, chrom.F.y, label=\"F\")\n",
|
272
|
-
"plt.show()\n",
|
273
|
-
"\n",
|
274
|
-
"# RunMethod \"C:\\Users\\Public\\Documents\\ChemStation\\1\\data\\\",, \"testingaaal\"\n",
|
275
|
-
"# RunMethod \"C:\\Users\\Public\\Documents\\ChemStation\\1\\data\\\",, \"testingaaal\"\n",
|
276
|
-
"\n",
|
277
|
-
"\"C:\\\\program files (X86)\\\\Agilent Technologies\\\\chemstation\\\\core\"\n",
|
278
|
-
"\"C:\\\\Program Files (x86)\\\\Agilent Technologies\\\\ChemStation\\\\CORE\""
|
279
|
-
]
|
280
|
-
},
|
281
|
-
{
|
282
|
-
"cell_type": "code",
|
283
|
-
"execution_count": null,
|
284
|
-
"metadata": {},
|
285
|
-
"outputs": [],
|
286
|
-
"source": []
|
287
|
-
}
|
288
|
-
],
|
289
|
-
"metadata": {
|
290
|
-
"kernelspec": {
|
291
|
-
"display_name": "iroh_env",
|
292
|
-
"language": "python",
|
293
|
-
"name": "python3"
|
294
|
-
},
|
295
|
-
"language_info": {
|
296
|
-
"codemirror_mode": {
|
297
|
-
"name": "ipython",
|
298
|
-
"version": 3
|
299
|
-
},
|
300
|
-
"file_extension": ".py",
|
301
|
-
"mimetype": "text/x-python",
|
302
|
-
"name": "python",
|
303
|
-
"nbconvert_exporter": "python",
|
304
|
-
"pygments_lexer": "ipython3",
|
305
|
-
"version": "3.8.20"
|
306
|
-
}
|
307
|
-
},
|
308
|
-
"nbformat": 4,
|
309
|
-
"nbformat_minor": 2
|
310
|
-
}
|
File without changes
|
File without changes
|