pychemstation 0.8.4__tar.gz → 0.8.7__tar.gz
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-0.8.4 → pychemstation-0.8.7}/.gitignore +4 -1
- {pychemstation-0.8.4 → pychemstation-0.8.7}/.gitlab-ci.yml +1 -3
- pychemstation-0.8.7/.pre-commit-config.yaml +10 -0
- pychemstation-0.8.7/PKG-INFO +156 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/README.md +51 -20
- pychemstation-0.8.7/out.txt +377 -0
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/pychemstation/__init__.py +1 -1
- pychemstation-0.8.7/pychemstation/analysis/__init__.py +4 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/analysis/base_spectrum.py +4 -4
- {pychemstation-0.8.4/pychemstation/utils → pychemstation-0.8.7/pychemstation/analysis}/chromatogram.py +4 -7
- pychemstation-0.8.7/pychemstation/analysis/process_report.py +373 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/README.md +22 -46
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/__init__.py +5 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/controllers/__init__.py +2 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/controllers/comm.py +41 -18
- pychemstation-0.8.7/pychemstation/control/controllers/devices/device.py +49 -0
- pychemstation-0.8.7/pychemstation/control/controllers/devices/injector.py +61 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/controllers/tables/method.py +266 -111
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/controllers/tables/ms.py +7 -4
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/controllers/tables/sequence.py +171 -82
- pychemstation-0.8.7/pychemstation/control/controllers/tables/table.py +375 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/hplc.py +117 -83
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/generated/__init__.py +0 -2
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/generated/dad_method.py +1 -1
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/generated/pump_method.py +15 -19
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/utils/injector_types.py +1 -1
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/utils/macro.py +12 -11
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/pychemstation/utils/method_types.py +3 -2
- pychemstation-0.8.4/pychemstation/analysis/utils.py → pychemstation-0.8.7/pychemstation/utils/num_utils.py +2 -2
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/utils/parsing.py +1 -11
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/utils/sequence_types.py +4 -5
- {pychemstation-0.8.4/pychemstation/analysis → pychemstation-0.8.7/pychemstation/utils}/spec_utils.py +1 -2
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/utils/table_types.py +10 -9
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/utils/tray_types.py +48 -38
- {pychemstation-0.8.4 → pychemstation-0.8.7/pychemstation.egg-info}/PKG-INFO +19 -8
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation.egg-info/SOURCES.txt +6 -8
- pychemstation-0.8.7/pychemstation.egg-info/requires.txt +14 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pyproject.toml +17 -3
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/ACQRES.REG +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT01.CSV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT02.CSV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT03.CSV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT04.CSV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/AUTOMATICALLY_GENERATED_REPORT05.CSV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/Automatically_Generated_Report.TXT +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/Automatically_Generated_Report00.CSV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/CSlbk.ini +5 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M/DAMETHOD.REG +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M/INFO.MTH +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1.UV +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1A.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1A.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1B.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1B.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1C.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1C.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1D.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1D.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1E.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1E.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1F.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1F.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1G.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1G.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1H.ch +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DAD1H.npz +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DiagResults.REG +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/PMP1.AnalyticalResults.drvml +15 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/RUN.LOG +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/SAMPLE.XML +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/SAMPLE.XML.bak +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/WLS1.Sampler.scml +22 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq.macaml +1135 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq.txt +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq_MethHist.txt +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/acq_damethod.reg +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/da.macaml +1053 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/lcdiag.reg +0 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/sample.acaml +2294 -0
- pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/single.B +0 -0
- pychemstation-0.8.7/tests/constants.py +146 -0
- pychemstation-0.8.7/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/RECALIB.MTH +0 -0
- pychemstation-0.8.7/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/rpthead.txt +63 -0
- pychemstation-0.8.7/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Limsinf.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/out.txt +11156 -0
- pychemstation-0.8.7/tests/test_integration.py +262 -0
- pychemstation-0.8.7/tests/test_method.py +115 -0
- pychemstation-0.8.7/tests/test_offline.py +92 -0
- pychemstation-0.8.4/tests/test_online_stable.py → pychemstation-0.8.7/tests/test_online.py +123 -61
- pychemstation-0.8.7/tests/test_sequence.py +70 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/update-lib.sh +2 -2
- {pychemstation-0.8.4 → pychemstation-0.8.7}/uv.lock +234 -6
- pychemstation-0.8.4/build/lib/pychemstation/analysis/__init__.py +0 -1
- pychemstation-0.8.4/build/lib/pychemstation/analysis/base_spectrum.py +0 -509
- pychemstation-0.8.4/build/lib/pychemstation/analysis/process_report.py +0 -254
- pychemstation-0.8.4/build/lib/pychemstation/analysis/spec_utils.py +0 -304
- pychemstation-0.8.4/build/lib/pychemstation/analysis/utils.py +0 -63
- pychemstation-0.8.4/build/lib/pychemstation/control/__init__.py +0 -4
- pychemstation-0.8.4/build/lib/pychemstation/control/comm.py +0 -206
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/__init__.py +0 -9
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/comm.py +0 -208
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/devices/column.py +0 -12
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/devices/dad.py +0 -0
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/devices/device.py +0 -23
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/devices/injector.py +0 -117
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/devices/pump.py +0 -43
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/method.py +0 -338
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/sequence.py +0 -190
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/table_controller.py +0 -266
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/tables/method.py +0 -361
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/tables/ms.py +0 -21
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/tables/sequence.py +0 -211
- pychemstation-0.8.4/build/lib/pychemstation/control/controllers/tables/table.py +0 -302
- pychemstation-0.8.4/build/lib/pychemstation/control/hplc.py +0 -238
- pychemstation-0.8.4/build/lib/pychemstation/control/table/__init__.py +0 -3
- pychemstation-0.8.4/build/lib/pychemstation/control/table/method.py +0 -274
- pychemstation-0.8.4/build/lib/pychemstation/control/table/sequence.py +0 -210
- pychemstation-0.8.4/build/lib/pychemstation/control/table/table_controller.py +0 -201
- pychemstation-0.8.4/build/lib/pychemstation/generated/__init__.py +0 -56
- pychemstation-0.8.4/build/lib/pychemstation/generated/dad_method.py +0 -367
- pychemstation-0.8.4/build/lib/pychemstation/generated/pump_method.py +0 -519
- pychemstation-0.8.4/build/lib/pychemstation/utils/chromatogram.py +0 -115
- pychemstation-0.8.4/build/lib/pychemstation/utils/injector_types.py +0 -52
- pychemstation-0.8.4/build/lib/pychemstation/utils/macro.py +0 -100
- pychemstation-0.8.4/build/lib/pychemstation/utils/parsing.py +0 -290
- pychemstation-0.8.4/build/lib/pychemstation/utils/sequence_types.py +0 -54
- pychemstation-0.8.4/build/lib/pychemstation/utils/table_types.py +0 -92
- pychemstation-0.8.4/build/lib/pychemstation/utils/tray_types.py +0 -163
- pychemstation-0.8.4/build/lib/tests/constants.py +0 -88
- pychemstation-0.8.4/build/lib/tests/test_comb.py +0 -136
- pychemstation-0.8.4/build/lib/tests/test_comm.py +0 -65
- pychemstation-0.8.4/build/lib/tests/test_inj.py +0 -39
- pychemstation-0.8.4/build/lib/tests/test_method.py +0 -99
- pychemstation-0.8.4/build/lib/tests/test_nightly.py +0 -80
- pychemstation-0.8.4/build/lib/tests/test_proc_rep.py +0 -52
- pychemstation-0.8.4/build/lib/tests/test_runs_stable.py +0 -125
- pychemstation-0.8.4/build/lib/tests/test_sequence.py +0 -125
- pychemstation-0.8.4/build/lib/tests/test_stable.py +0 -276
- pychemstation-0.8.4/pychemstation/__init__.py +0 -3
- pychemstation-0.8.4/pychemstation/analysis/__init__.py +0 -1
- pychemstation-0.8.4/pychemstation/analysis/process_report.py +0 -277
- pychemstation-0.8.4/pychemstation/control/controllers/devices/__init__.py +0 -0
- pychemstation-0.8.4/pychemstation/control/controllers/devices/device.py +0 -36
- pychemstation-0.8.4/pychemstation/control/controllers/devices/injector.py +0 -117
- pychemstation-0.8.4/pychemstation/control/controllers/tables/__init__.py +0 -0
- pychemstation-0.8.4/pychemstation/control/controllers/tables/table.py +0 -299
- pychemstation-0.8.4/pychemstation/utils/__init__.py +0 -0
- pychemstation-0.8.4/pychemstation/utils/method_types.py +0 -56
- pychemstation-0.8.4/pychemstation/utils/pump_types.py +0 -7
- pychemstation-0.8.4/pychemstation.egg-info/PKG-INFO +0 -110
- pychemstation-0.8.4/pychemstation.egg-info/requires.txt +0 -6
- pychemstation-0.8.4/setup.py +0 -33
- pychemstation-0.8.4/tests/__init__.py +0 -0
- pychemstation-0.8.4/tests/constants.py +0 -112
- pychemstation-0.8.4/tests/test_nightly.py +0 -24
- pychemstation-0.8.4/tests/test_offline_stable.py +0 -51
- pychemstation-0.8.4/tests/test_runs_stable.py +0 -112
- {pychemstation-0.8.4 → pychemstation-0.8.7}/.coverage +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/CHANGELOG.md +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/CONTRIBUTING.md +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/LICENSE +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/index.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/analysis/base_spectrum.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/analysis/spec_utils.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/analysis/utils.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/analysis.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/control/chromatogram.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/control/hplc.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/control.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/generated.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/utils/chemstation.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/utils/constants.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/utils/hplc_param_types.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation/utils.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/pychemstation.html +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/doc/search.js +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation/control/controllers/README.md +0 -0
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/pychemstation/control/controllers/devices/__init__.py +0 -0
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/pychemstation/control/controllers/tables/__init__.py +0 -0
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/pychemstation/utils/__init__.py +0 -0
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/pychemstation/utils/pump_types.py +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation.egg-info/dependency_links.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/pychemstation.egg-info/top_level.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/0_2025-03-15 19-14-35.PDF +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/ACQRES.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/CSlbk.ini +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DA.M/DAMETHOD.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DA.M/INFO.MTH +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DA.M/RECALIB.MTH +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DA.M/rpthead.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1.UV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1A.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1A.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1B.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1B.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1C.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1C.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1D.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1D.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1E.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DAD1E.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/DiagResults.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/PMP1.AnalyticalResults.drvml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/REPORT01.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/REPORT02.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/REPORT03.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/REPORT04.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/REPORT05.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/RUN.LOG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/Report.TXT +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/Report00.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/Report01.xls +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/SAMPLE.XML +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/SAMPLE.XML.bak +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/WLS1.Sampler.scml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/acq.macaml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/acq.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/acq_MethHist.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/acq_damethod.reg +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/da.macaml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/lcdiag.reg +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/sample.acaml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/0_2025-03-15 19-14-35.D/single.B +0 -0
- {pychemstation-0.8.4/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M → pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M}/RECALIB.MTH +0 -0
- {pychemstation-0.8.4/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M → pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D/DA.M}/rpthead.txt +0 -0
- {pychemstation-0.8.4/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D → pychemstation-0.8.7/tests/10 IS 2025-02-10 23-41-33_10_2025-02-11 02-21-44.D}/Limsinf.xml +0 -0
- {pychemstation-0.8.4/build/lib → pychemstation-0.8.7}/tests/__init__.py +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_talk.mac +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/CSlbk.ini +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/ACQ.MS +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/Agilent1200erDadDriver1.RapidControl.ConfigXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/Agilent1200erDadDriver1.RapidControl.MethodMetaData.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/Agilent1200erDadDriver1.RapidControl.MethodXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentColumnCompDriver1.RapidControl.ConfigXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentColumnCompDriver1.RapidControl.MethodMetaData.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentColumnCompDriver1.RapidControl.MethodXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentPumpDriver1.RapidControl.ConfigXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentPumpDriver1.RapidControl.MethodMetaData.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentPumpDriver1.RapidControl.MethodXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.ConfigXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.MethodMetaData.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.MethodXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/AgilentSamplerDriver1.RapidControl.PretreatXML.xml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/DAMETHOD.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/FIA.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/INFO.MTH +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/INJECTOR.MTH +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/MassHunterIntegration.ini +0 -0
- {pychemstation-0.8.4/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M → pychemstation-0.8.7/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M}/RECALIB.MTH +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/RapidControl.InstrumentConfig.xml +0 -0
- {pychemstation-0.8.4/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M → pychemstation-0.8.7/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M}/rpthead.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/GENERAL-POROSHELL-OPT.M/smpl_pur.mth +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/Methods.Reg +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.B +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.LOG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.S +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/hplc_testing.Start +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/ACQRES.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/CSlbk.ini +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/DAMETHOD.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DA.M/INFO.MTH +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1.UV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1A.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1A.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1B.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1B.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1C.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1C.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1D.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1D.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1E.ch +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DAD1E.npz +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/DiagResults.REG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/PMP1.AnalyticalResults.drvml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT01.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT02.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT03.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT04.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/REPORT05.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/RUN.LOG +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Report.TXT +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Report00.CSV +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/Report01.xls +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/SAMPLE.XML +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/SAMPLE.XML.bak +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/WLS1.Sampler.scml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq.macaml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq_MethHist.txt +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/acq_damethod.reg +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/da.macaml +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/hplc_testing 2025-03-27 17-13-47_run seq with new method.PDF +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/lcdiag.reg +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/run seq with new method.D/sequence.acam_ +0 -0
- {pychemstation-0.8.4 → pychemstation-0.8.7}/tests/hplc_testing 2025-03-27 17-13-47/sequence.acaml +0 -0
@@ -0,0 +1,156 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: pychemstation
|
3
|
+
Version: 0.8.7
|
4
|
+
Summary: Library to interact with Chemstation software, primarily used in Hein lab.
|
5
|
+
Project-URL: Documentation, https://pychemstation-e5a086.gitlab.io/pychemstation.html
|
6
|
+
Project-URL: Repository, https://gitlab.com/heingroup/device-api/pychemstation
|
7
|
+
Author-email: lucyhao <hao.lucyy@gmail.com>
|
8
|
+
License-File: LICENSE
|
9
|
+
Classifier: License :: OSI Approved :: MIT License
|
10
|
+
Classifier: Operating System :: OS Independent
|
11
|
+
Classifier: Programming Language :: Python :: 3.8
|
12
|
+
Classifier: Programming Language :: Python :: 3.9
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
16
|
+
Requires-Python: ~=3.8
|
17
|
+
Requires-Dist: aghplctools==4.8.6
|
18
|
+
Requires-Dist: coverage>=7.6.1
|
19
|
+
Requires-Dist: matplotlib>=3.7.5
|
20
|
+
Requires-Dist: pandas>=2.0.3
|
21
|
+
Requires-Dist: pdoc>=14.7.0
|
22
|
+
Requires-Dist: polling>=0.3.2
|
23
|
+
Requires-Dist: pre-commit>=3.5.0
|
24
|
+
Requires-Dist: pytest>=7.3.5
|
25
|
+
Requires-Dist: rainbow-api>=1.0.10
|
26
|
+
Requires-Dist: result>=0.17.0
|
27
|
+
Requires-Dist: scipy>=1.10.1
|
28
|
+
Requires-Dist: seabreeze>=2.9.2
|
29
|
+
Requires-Dist: setuptools>=75.3.2
|
30
|
+
Requires-Dist: twine>=6.1.0
|
31
|
+
Requires-Dist: xsdata>=24.9
|
32
|
+
Description-Content-Type: text/markdown
|
33
|
+
|
34
|
+
# Agilent HPLC Macro Control
|
35
|
+
|
36
|
+

|
37
|
+
|
38
|
+
[](https://pypi.org/project/pychemstation/)
|
39
|
+
|
40
|
+
> **_NOTE:_** If you are running Python **3.8**, use versions 0.**8**.x. If you are running Python **3.9** use versions 0.**9**.x.
|
41
|
+
> If you are running Python **>=3.10**, use version 0.**10**.x. You are welcome to use newer pychemstation versions with older Python versions, but functionality
|
42
|
+
> is not guaranteed!
|
43
|
+
|
44
|
+
Unofficial Python package to control Agilent Chemstation; we are not affiliated with Agilent.
|
45
|
+
Check out the [docs](https://pychemstation-e5a086.gitlab.io/pychemstation.html) for usage instructions. This project is under
|
46
|
+
active development, and breaking changes may occur at any moment.
|
47
|
+
|
48
|
+
## Getting started
|
49
|
+
|
50
|
+
Before running this library, these are the steps you need to complete.
|
51
|
+
|
52
|
+
### Add python package
|
53
|
+
|
54
|
+
```bash
|
55
|
+
pip install pychemstation
|
56
|
+
```
|
57
|
+
|
58
|
+
### Add required MACRO script
|
59
|
+
|
60
|
+
1. Open ChemStation
|
61
|
+
2. Run this in the ChemStation command line: ``Print _AutoPath$``. Go to this path in your file navigator, as this is
|
62
|
+
where you will put your
|
63
|
+
MACRO file(s).
|
64
|
+
3. Download the [
|
65
|
+
`hplc_talk.mac`](https://gitlab.com/heingroup/device-api/pychemstation/-/blob/main/tests/hplc_talk.mac).
|
66
|
+
- On line 69, change the path name up to `\cmd` and `\reply`. For instance, you should have:
|
67
|
+
`MonitorFile "[my path]\cmd", "[my path]\reply"`
|
68
|
+
- and then add this file to the folder from the previous step.
|
69
|
+
4. To have these MACRO files be read by ChemStation, you must either:
|
70
|
+
- Open ChemStation and run:
|
71
|
+
|
72
|
+
```MACRO
|
73
|
+
macro hplc_talk.mac
|
74
|
+
HPLCTalk_Run
|
75
|
+
```
|
76
|
+
|
77
|
+
- OR add the above lines to a MACRO file named: `user.mac`, and then put `user.mac` in the same folder from step 3.
|
78
|
+
- ChemStation will automatically load these MACRO files for you. However, sometimes this does not work, and if it
|
79
|
+
does not, you will have to run the lines in the `user.mac` manually.
|
80
|
+
|
81
|
+
## Example Usage
|
82
|
+
|
83
|
+
```python
|
84
|
+
from pychemstation.control import HPLCController
|
85
|
+
from pychemstation.utils.method_types import *
|
86
|
+
import pandas as pd
|
87
|
+
|
88
|
+
DEFAULT_METHOD_DIR = "C:\\ChemStation\\1\\Methods\\"
|
89
|
+
SEQUENCE_DIR = "C:\\USERS\\PUBLIC\\DOCUMENTS\\CHEMSTATION\\3\\Sequence"
|
90
|
+
DEFAULT_COMMAND_PATH = "C:\\Users\\User\\Desktop\\Lucy\\"
|
91
|
+
DATA_DIR_2 = "C:\\Users\\Public\\Documents\\ChemStation\\2\\Data"
|
92
|
+
DATA_DIR_3 = "C:\\Users\\Public\\Documents\\ChemStation\\3\\Data"
|
93
|
+
|
94
|
+
# Initialize HPLC Controller
|
95
|
+
hplc_controller = HPLCController(data_dirs=[DATA_DIR_2, DATA_DIR_3],
|
96
|
+
comm_dir=DEFAULT_COMMAND_PATH,
|
97
|
+
method_dir=DEFAULT_METHOD_DIR,
|
98
|
+
sequence_dir=SEQUENCE_DIR)
|
99
|
+
|
100
|
+
# Switching a method
|
101
|
+
hplc_controller.switch_method("General-Poroshell")
|
102
|
+
|
103
|
+
# Editing a method
|
104
|
+
new_method = MethodDetails(
|
105
|
+
name="General-Poroshell",
|
106
|
+
params=HPLCMethodParams(
|
107
|
+
organic_modifier=7,
|
108
|
+
flow=0.44),
|
109
|
+
timetable=[
|
110
|
+
TimeTableEntry(
|
111
|
+
start_time=0.10,
|
112
|
+
organic_modifer=7,
|
113
|
+
flow=0.34
|
114
|
+
),
|
115
|
+
TimeTableEntry(
|
116
|
+
start_time=4,
|
117
|
+
organic_modifer=99,
|
118
|
+
flow=0.55
|
119
|
+
)
|
120
|
+
],
|
121
|
+
stop_time=5,
|
122
|
+
post_time=2
|
123
|
+
)
|
124
|
+
hplc_controller.edit_method(new_method)
|
125
|
+
|
126
|
+
# Run a method and get a report or data from last run method
|
127
|
+
hplc_controller.run_method(experiment_name="test_experiment")
|
128
|
+
report = hplc_controller.get_last_run_method_report()
|
129
|
+
vial_location = report.vial_location
|
130
|
+
|
131
|
+
# Save, analyze or plot the data!
|
132
|
+
chrom = hplc_controller.get_last_run_method_data()
|
133
|
+
chromatogram_data = pd.DataFrame.from_dict({"x": chrom.A.x, "y": chrom.A.y})
|
134
|
+
chromatogram_data.to_csv("Run 10.csv", index=False)
|
135
|
+
```
|
136
|
+
|
137
|
+
## Adding your own MACROs
|
138
|
+
|
139
|
+
If you wish to add your own MACRO functions, then all you need to do is write you MACRO (using Agilent's) MACRO guide,
|
140
|
+
put the file in the `user.mac` file and then list the function you want to use.
|
141
|
+
|
142
|
+
## Developing
|
143
|
+
|
144
|
+
If you would like to contribute to this project, check out
|
145
|
+
our [GitLab](https://gitlab.com/heingroup/device-api/pychemstation)!
|
146
|
+
|
147
|
+
## Authors and Acknowledgements
|
148
|
+
|
149
|
+
Lucy Hao, Maria Politi
|
150
|
+
|
151
|
+
- Adapted from [**AnalyticalLabware**](https://github.com/croningp/analyticallabware), created by members in the Cronin
|
152
|
+
Group. Copyright © Cronin Group, used under the [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/) license.
|
153
|
+
- Adapted from the [MACROS](https://github.com/Bourne-Group/HPLCMethodOptimisationGUI) used in [**Operator-free HPLC
|
154
|
+
automated method development guided by Bayesian optimization**](https://pubs.rsc.org/en/content/articlelanding/2024/dd/d4dd00062e),
|
155
|
+
created by members in the Bourne Group. Copyright © Bourne Group, used under
|
156
|
+
the [MIT](https://opensource.org/license/mit) license.
|
@@ -4,8 +4,12 @@
|
|
4
4
|
|
5
5
|
[](https://pypi.org/project/pychemstation/)
|
6
6
|
|
7
|
+
> **_NOTE:_** If you are running Python **3.8**, use versions 0.**8**.x. If you are running Python **3.9** use versions 0.**9**.x.
|
8
|
+
> If you are running Python **>=3.10**, use version 0.**10**.x. You are welcome to use newer pychemstation versions with older Python versions, but functionality
|
9
|
+
> is not guaranteed!
|
10
|
+
|
7
11
|
Unofficial Python package to control Agilent Chemstation; we are not affiliated with Agilent.
|
8
|
-
Check out the [docs](https://
|
12
|
+
Check out the [docs](https://pychemstation-e5a086.gitlab.io/pychemstation.html) for usage instructions. This project is under
|
9
13
|
active development, and breaking changes may occur at any moment.
|
10
14
|
|
11
15
|
## Getting started
|
@@ -45,29 +49,55 @@ HPLCTalk_Run
|
|
45
49
|
|
46
50
|
```python
|
47
51
|
from pychemstation.control import HPLCController
|
52
|
+
from pychemstation.utils.method_types import *
|
48
53
|
import pandas as pd
|
49
54
|
|
50
|
-
# these paths will be unique to your Chemstation setup
|
51
|
-
DEFAULT_METHOD = "GENERAL-POROSHELL"
|
52
|
-
DEFAULT_COMMAND_PATH = "C:\\Users\\User\\Desktop\\Lucy\\"
|
53
55
|
DEFAULT_METHOD_DIR = "C:\\ChemStation\\1\\Methods\\"
|
54
|
-
|
55
|
-
|
56
|
-
|
56
|
+
SEQUENCE_DIR = "C:\\USERS\\PUBLIC\\DOCUMENTS\\CHEMSTATION\\3\\Sequence"
|
57
|
+
DEFAULT_COMMAND_PATH = "C:\\Users\\User\\Desktop\\Lucy\\"
|
58
|
+
DATA_DIR_2 = "C:\\Users\\Public\\Documents\\ChemStation\\2\\Data"
|
59
|
+
DATA_DIR_3 = "C:\\Users\\Public\\Documents\\ChemStation\\3\\Data"
|
57
60
|
|
61
|
+
# Initialize HPLC Controller
|
58
62
|
hplc_controller = HPLCController(data_dirs=[DATA_DIR_2, DATA_DIR_3],
|
59
63
|
comm_dir=DEFAULT_COMMAND_PATH,
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
hplc_controller.switch_method(
|
65
|
-
|
64
|
+
method_dir=DEFAULT_METHOD_DIR,
|
65
|
+
sequence_dir=SEQUENCE_DIR)
|
66
|
+
|
67
|
+
# Switching a method
|
68
|
+
hplc_controller.switch_method("General-Poroshell")
|
69
|
+
|
70
|
+
# Editing a method
|
71
|
+
new_method = MethodDetails(
|
72
|
+
name="General-Poroshell",
|
73
|
+
params=HPLCMethodParams(
|
74
|
+
organic_modifier=7,
|
75
|
+
flow=0.44),
|
76
|
+
timetable=[
|
77
|
+
TimeTableEntry(
|
78
|
+
start_time=0.10,
|
79
|
+
organic_modifer=7,
|
80
|
+
flow=0.34
|
81
|
+
),
|
82
|
+
TimeTableEntry(
|
83
|
+
start_time=4,
|
84
|
+
organic_modifer=99,
|
85
|
+
flow=0.55
|
86
|
+
)
|
87
|
+
],
|
88
|
+
stop_time=5,
|
89
|
+
post_time=2
|
90
|
+
)
|
91
|
+
hplc_controller.edit_method(new_method)
|
92
|
+
|
93
|
+
# Run a method and get a report or data from last run method
|
94
|
+
hplc_controller.run_method(experiment_name="test_experiment")
|
95
|
+
report = hplc_controller.get_last_run_method_report()
|
96
|
+
vial_location = report.vial_location
|
97
|
+
|
98
|
+
# Save, analyze or plot the data!
|
66
99
|
chrom = hplc_controller.get_last_run_method_data()
|
67
|
-
|
68
|
-
# afterwards, save, analyze or plot the data!
|
69
|
-
values = {"x": chrom.A.x, "y": chrom.A.y}
|
70
|
-
chromatogram_data = pd.DataFrame.from_dict(values)
|
100
|
+
chromatogram_data = pd.DataFrame.from_dict({"x": chrom.A.x, "y": chrom.A.y})
|
71
101
|
chromatogram_data.to_csv("Run 10.csv", index=False)
|
72
102
|
```
|
73
103
|
|
@@ -87,6 +117,7 @@ Lucy Hao, Maria Politi
|
|
87
117
|
|
88
118
|
- Adapted from [**AnalyticalLabware**](https://github.com/croningp/analyticallabware), created by members in the Cronin
|
89
119
|
Group. Copyright © Cronin Group, used under the [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/) license.
|
90
|
-
- Adapted from the [MACROS](https://github.com/Bourne-Group/HPLCMethodOptimisationGUI)
|
91
|
-
|
92
|
-
created by members in the Bourne Group.
|
120
|
+
- Adapted from the [MACROS](https://github.com/Bourne-Group/HPLCMethodOptimisationGUI) used in [**Operator-free HPLC
|
121
|
+
automated method development guided by Bayesian optimization**](https://pubs.rsc.org/en/content/articlelanding/2024/dd/d4dd00062e),
|
122
|
+
created by members in the Bourne Group. Copyright © Bourne Group, used under
|
123
|
+
the [MIT](https://opensource.org/license/mit) license.
|
@@ -0,0 +1,377 @@
|
|
1
|
+
Local Rows
|
2
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
3
|
+
SaveSequence _SeqPath$, _SeqFile$
|
4
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.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 = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
|
15
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
|
16
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
|
17
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
18
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
19
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
20
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
|
21
|
+
SetObjHdrVal RCPMP1Method[1], Flow, 0.4
|
22
|
+
Sleep 1
|
23
|
+
Sleep 0.1
|
24
|
+
DownloadRCMethod PMP1
|
25
|
+
Sleep 0.1
|
26
|
+
Sleep 1
|
27
|
+
SetObjHdrText RCPMP1Method[1], PostTime_Mode, Set
|
28
|
+
Sleep 1
|
29
|
+
Sleep 0.1
|
30
|
+
DownloadRCMethod PMP1
|
31
|
+
Sleep 0.1
|
32
|
+
Sleep 1
|
33
|
+
SetObjHdrVal RCPMP1Method[1], PostTime_Time, 4
|
34
|
+
Sleep 1
|
35
|
+
Sleep 0.1
|
36
|
+
DownloadRCMethod PMP1
|
37
|
+
Sleep 0.1
|
38
|
+
Sleep 1
|
39
|
+
SetObjHdrText RCPMP1Method[1], StopTime_Mode, Set
|
40
|
+
Sleep 1
|
41
|
+
Sleep 0.1
|
42
|
+
DownloadRCMethod PMP1
|
43
|
+
Sleep 0.1
|
44
|
+
Sleep 1
|
45
|
+
SetObjHdrVal RCPMP1Method[1], StopTime_Time, 14
|
46
|
+
Sleep 1
|
47
|
+
Sleep 0.1
|
48
|
+
DownloadRCMethod PMP1
|
49
|
+
Sleep 0.1
|
50
|
+
Sleep 1
|
51
|
+
SetObjHdrVal RCPMP1Method[1], PumpChannel2_CompositionPercentage, 22
|
52
|
+
Sleep 1
|
53
|
+
Sleep 0.1
|
54
|
+
DownloadRCMethod PMP1
|
55
|
+
Sleep 0.1
|
56
|
+
Sleep 1
|
57
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
58
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
59
|
+
Sleep 0.1
|
60
|
+
Print Rows
|
61
|
+
response$ = _MethFile$
|
62
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
63
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
64
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
65
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
|
66
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
|
67
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
|
68
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
69
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
70
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
71
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
|
72
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
73
|
+
response$ = _MethFile$
|
74
|
+
Sleep 0.1
|
75
|
+
DelTab RCPMP1Method[1], "Timetable"
|
76
|
+
Sleep 0.1
|
77
|
+
SetObjHdrVal RCPMP1Method[1], PumpChannel2_CompositionPercentage, 5.0
|
78
|
+
Sleep 1
|
79
|
+
Sleep 0.1
|
80
|
+
DownloadRCMethod PMP1
|
81
|
+
Sleep 0.1
|
82
|
+
Sleep 1
|
83
|
+
SetObjHdrVal RCPMP1Method[1], Flow, 0.65
|
84
|
+
Sleep 1
|
85
|
+
Sleep 0.1
|
86
|
+
DownloadRCMethod PMP1
|
87
|
+
Sleep 0.1
|
88
|
+
Sleep 1
|
89
|
+
SetObjHdrText RCPMP1Method[1], StopTime_Mode, Set
|
90
|
+
Sleep 1
|
91
|
+
Sleep 0.1
|
92
|
+
DownloadRCMethod PMP1
|
93
|
+
Sleep 0.1
|
94
|
+
Sleep 1
|
95
|
+
SetObjHdrVal RCPMP1Method[1], StopTime_Time, 4.0
|
96
|
+
Sleep 1
|
97
|
+
Sleep 0.1
|
98
|
+
DownloadRCMethod PMP1
|
99
|
+
Sleep 0.1
|
100
|
+
Sleep 1
|
101
|
+
SetObjHdrText RCPMP1Method[1], PostTime_Mode, Set
|
102
|
+
Sleep 1
|
103
|
+
Sleep 0.1
|
104
|
+
DownloadRCMethod PMP1
|
105
|
+
Sleep 0.1
|
106
|
+
Sleep 1
|
107
|
+
SetObjHdrVal RCPMP1Method[1], PostTime_Time, 1.0
|
108
|
+
Sleep 1
|
109
|
+
Sleep 0.1
|
110
|
+
DownloadRCMethod PMP1
|
111
|
+
Sleep 0.1
|
112
|
+
Sleep 1
|
113
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
114
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
115
|
+
Sleep 0.1
|
116
|
+
Print Rows
|
117
|
+
Sleep 0.1
|
118
|
+
DelTab RCPMP1Method[1], "Timetable"
|
119
|
+
Sleep 0.1
|
120
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
121
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
122
|
+
NewTab RCPMP1Method[1], "Timetable"
|
123
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
124
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
125
|
+
Sleep 0.1
|
126
|
+
Print Rows
|
127
|
+
Sleep 0.1
|
128
|
+
InsTabRow RCPMP1Method[1], "Timetable"
|
129
|
+
Sleep 0.1
|
130
|
+
Sleep 0.1
|
131
|
+
NewColText RCPMP1Method[1], "Timetable", "Function", "SolventComposition"
|
132
|
+
Sleep 0.1
|
133
|
+
Sleep 0.1
|
134
|
+
NewColVal RCPMP1Method[1], "Timetable", "Time", 3.5
|
135
|
+
Sleep 0.1
|
136
|
+
Sleep 0.1
|
137
|
+
NewColVal RCPMP1Method[1], "Timetable", "SolventCompositionPumpChannel2_Percentage", 100.0
|
138
|
+
Sleep 0.1
|
139
|
+
Sleep 0.1
|
140
|
+
InsTabRow RCPMP1Method[1], "Timetable"
|
141
|
+
Sleep 0.1
|
142
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
143
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
144
|
+
Sleep 0.1
|
145
|
+
Print Rows
|
146
|
+
Sleep 0.1
|
147
|
+
SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "Flow"
|
148
|
+
Sleep 0.1
|
149
|
+
Sleep 0.1
|
150
|
+
NewColVal RCPMP1Method[1], "Timetable", "FlowFlow", 0.65
|
151
|
+
Sleep 0.1
|
152
|
+
Sleep 0.1
|
153
|
+
SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "FlowFlow", 0.65
|
154
|
+
Sleep 0.1
|
155
|
+
Sleep 1
|
156
|
+
Sleep 0.1
|
157
|
+
DownloadRCMethod PMP1
|
158
|
+
Sleep 0.1
|
159
|
+
Sleep 1
|
160
|
+
Local Rows
|
161
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
162
|
+
SaveSequence _SeqPath$, _SeqFile$
|
163
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
164
|
+
response$ = _MethFile$
|
165
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
166
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
167
|
+
Sleep 0.1
|
168
|
+
Print Rows
|
169
|
+
response$ = _MethFile$
|
170
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
171
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
172
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
173
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
|
174
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
|
175
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
|
176
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
177
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
178
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
179
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
|
180
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
181
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
182
|
+
Sleep 0.1
|
183
|
+
Print Rows
|
184
|
+
Sleep 0.1
|
185
|
+
DelTab RCPMP1Method[1], "Timetable"
|
186
|
+
Sleep 0.1
|
187
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
188
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
189
|
+
NewTab RCPMP1Method[1], "Timetable"
|
190
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
191
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
192
|
+
Sleep 0.1
|
193
|
+
Print Rows
|
194
|
+
Sleep 0.1
|
195
|
+
InsTabRow RCPMP1Method[1], "Timetable"
|
196
|
+
Sleep 0.1
|
197
|
+
Sleep 0.1
|
198
|
+
NewColText RCPMP1Method[1], "Timetable", "Function", "SolventComposition"
|
199
|
+
Sleep 0.1
|
200
|
+
Sleep 0.1
|
201
|
+
NewColVal RCPMP1Method[1], "Timetable", "Time", 5
|
202
|
+
Sleep 0.1
|
203
|
+
Sleep 0.1
|
204
|
+
NewColVal RCPMP1Method[1], "Timetable", "SolventCompositionPumpChannel2_Percentage", 22
|
205
|
+
Sleep 0.1
|
206
|
+
Sleep 0.1
|
207
|
+
InsTabRow RCPMP1Method[1], "Timetable"
|
208
|
+
Sleep 0.1
|
209
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
210
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
211
|
+
Sleep 0.1
|
212
|
+
Print Rows
|
213
|
+
Sleep 0.1
|
214
|
+
SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "Flow"
|
215
|
+
Sleep 0.1
|
216
|
+
Sleep 0.1
|
217
|
+
NewColVal RCPMP1Method[1], "Timetable", "FlowFlow", 0.2
|
218
|
+
Sleep 0.1
|
219
|
+
Sleep 0.1
|
220
|
+
SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "FlowFlow", 0.2
|
221
|
+
Sleep 0.1
|
222
|
+
Sleep 1
|
223
|
+
Sleep 0.1
|
224
|
+
DownloadRCMethod PMP1
|
225
|
+
Sleep 0.1
|
226
|
+
Sleep 1
|
227
|
+
Sleep 0.1
|
228
|
+
InsTabRow RCPMP1Method[1], "Timetable"
|
229
|
+
Sleep 0.1
|
230
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
231
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
232
|
+
Sleep 0.1
|
233
|
+
Print Rows
|
234
|
+
Sleep 0.1
|
235
|
+
SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "SolventComposition"
|
236
|
+
Sleep 0.1
|
237
|
+
Sleep 0.1
|
238
|
+
SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "Time", 10
|
239
|
+
Sleep 0.1
|
240
|
+
Sleep 0.1
|
241
|
+
SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "SolventCompositionPumpChannel2_Percentage", 78
|
242
|
+
Sleep 0.1
|
243
|
+
Sleep 1
|
244
|
+
Sleep 0.1
|
245
|
+
DownloadRCMethod PMP1
|
246
|
+
Sleep 0.1
|
247
|
+
Sleep 1
|
248
|
+
Sleep 0.1
|
249
|
+
InsTabRow RCPMP1Method[1], "Timetable"
|
250
|
+
Sleep 0.1
|
251
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
252
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
253
|
+
Sleep 0.1
|
254
|
+
Print Rows
|
255
|
+
Sleep 0.1
|
256
|
+
SetTabText "RCPMP1Method[1]", "Timetable", Rows, "Function", "Flow"
|
257
|
+
Sleep 0.1
|
258
|
+
Sleep 0.1
|
259
|
+
SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "FlowFlow", 0.8
|
260
|
+
Sleep 0.1
|
261
|
+
Sleep 0.1
|
262
|
+
SetTabVal "RCPMP1Method[1]", "Timetable", Rows, "Time", 10
|
263
|
+
Sleep 0.1
|
264
|
+
Sleep 1
|
265
|
+
Sleep 0.1
|
266
|
+
DownloadRCMethod PMP1
|
267
|
+
Sleep 0.1
|
268
|
+
Sleep 1
|
269
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
270
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
271
|
+
Sleep 0.1
|
272
|
+
Print Rows
|
273
|
+
response$ = _MethFile$
|
274
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
|
275
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
|
276
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
|
277
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "FlowFlow")
|
278
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "SolventCompositionPumpChannel2_Percentage")
|
279
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 2, "Time")
|
280
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 3, "FlowFlow")
|
281
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 3, "SolventCompositionPumpChannel2_Percentage")
|
282
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 3, "Time")
|
283
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 4, "FlowFlow")
|
284
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 4, "SolventCompositionPumpChannel2_Percentage")
|
285
|
+
response_num = TabVal("RCPMP1Method[1]", "Timetable", 4, "Time")
|
286
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
|
287
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
|
288
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
|
289
|
+
response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
|
290
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
291
|
+
response$ = _MethFile$
|
292
|
+
Sleep 0.1
|
293
|
+
DelTab RCPMP1Method[1], "Timetable"
|
294
|
+
Sleep 0.1
|
295
|
+
SetObjHdrVal RCPMP1Method[1], PumpChannel2_CompositionPercentage, 5.0
|
296
|
+
Sleep 1
|
297
|
+
Sleep 0.1
|
298
|
+
DownloadRCMethod PMP1
|
299
|
+
Sleep 0.1
|
300
|
+
Sleep 1
|
301
|
+
SetObjHdrVal RCPMP1Method[1], Flow, 0.65
|
302
|
+
Sleep 1
|
303
|
+
Sleep 0.1
|
304
|
+
DownloadRCMethod PMP1
|
305
|
+
Sleep 0.1
|
306
|
+
Sleep 1
|
307
|
+
SetObjHdrText RCPMP1Method[1], StopTime_Mode, Set
|
308
|
+
Sleep 1
|
309
|
+
Sleep 0.1
|
310
|
+
DownloadRCMethod PMP1
|
311
|
+
Sleep 0.1
|
312
|
+
Sleep 1
|
313
|
+
SetObjHdrVal RCPMP1Method[1], StopTime_Time, 4.0
|
314
|
+
Sleep 1
|
315
|
+
Sleep 0.1
|
316
|
+
DownloadRCMethod PMP1
|
317
|
+
Sleep 0.1
|
318
|
+
Sleep 1
|
319
|
+
SetObjHdrText RCPMP1Method[1], PostTime_Mode, Set
|
320
|
+
Sleep 1
|
321
|
+
Sleep 0.1
|
322
|
+
DownloadRCMethod PMP1
|
323
|
+
Sleep 0.1
|
324
|
+
Sleep 1
|
325
|
+
SetObjHdrVal RCPMP1Method[1], PostTime_Time, 1.0
|
326
|
+
Sleep 1
|
327
|
+
Sleep 0.1
|
328
|
+
DownloadRCMethod PMP1
|
329
|
+
Sleep 0.1
|
330
|
+
Sleep 1
|
331
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
332
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
333
|
+
Sleep 0.1
|
334
|
+
Print Rows
|
335
|
+
Sleep 0.1
|
336
|
+
DelTab RCPMP1Method[1], "Timetable"
|
337
|
+
Sleep 0.1
|
338
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
339
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
340
|
+
Local Rows
|
341
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
342
|
+
SaveSequence _SeqPath$, _SeqFile$
|
343
|
+
Local Rows
|
344
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
345
|
+
SaveSequence _SeqPath$, _SeqFile$
|
346
|
+
Local Rows
|
347
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
348
|
+
SaveSequence _SeqPath$, _SeqFile$
|
349
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
350
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
351
|
+
response$ = _MethFile$
|
352
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
353
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
354
|
+
Local Rows
|
355
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
356
|
+
SaveSequence _SeqPath$, _SeqFile$
|
357
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
358
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
359
|
+
response$ = _MethFile$
|
360
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
361
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
362
|
+
Local Rows
|
363
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
364
|
+
SaveSequence _SeqPath$, _SeqFile$
|
365
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
366
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
367
|
+
response$ = _MethFile$
|
368
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
369
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
370
|
+
Local Rows
|
371
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
372
|
+
SaveSequence _SeqPath$, _SeqFile$
|
373
|
+
SaveMethod _MethPath$, _MethFile$, "method saved by pychemstation"
|
374
|
+
LoadMethod "D:\Chemstation\1\Methods\", "GENERAL-POROSHELL-OPT.M"
|
375
|
+
response$ = _MethFile$
|
376
|
+
Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|
377
|
+
response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
|