核对含盐化合物的列表时,先选择用于比较的共同表示,工作会更清楚。chematic 可以按所选步骤进行标准化,并返回处理后的结构与逐阶段报告。在调用方同时保留原始 SMILES,就可以说明从输入到结果的处理过程。
按明确的设置处理醋酸钠
以醋酸钠 CC(=O)[O-].[Na+] 为例。调用 standardize_smiles_report_json 时,启用最大碎片选择和电荷中和,关闭显式氢移除与互变异构体规范化。公开 npm 包 v1.1.2 返回的结果 SMILES 为 CC(O)=O。
报告显示,NeutralizeCharges 和 LargestFragment 两个阶段改变了结构。本例的原子计数不包括隐式氢:输入为五个,输出为四个。调用方可以保存下面的简短记录:
input_smiles: CC(=O)[O-].[Na+]
review_smiles: CC(O)=O
settings: largest fragment + charge neutralization
changed: NeutralizeCharges, LargestFragment
input_smiles 与设置由调用方记录。API 返回处理后的 SMILES、输入与输出的概要,以及每个阶段的报告。
查看每个阶段的变化
StandardizationReport 包含阶段名称、是否启用、结构是否变化,以及操作前后的概要。概要包括原子数、键数和结构哈希。按顺序查看 steps,就能追踪各项设置如何反映到结果中。
这份记录可以用于按同样设置重新运行批处理,也方便向其他人解释处理过程。为原始数据与复核用表示分别保留一列,表格的用途也更明确。
连接输入记录、转换与验证
前一篇文章介绍了如何将处理结果对应到原始行。标准化进一步加入所选设置和各阶段变化。API 返回可追溯输入与结果的信息,便于将 chematic 接入文件处理流程和小型分析工具。