PatternReaction

PatternReaction[reactantsproducts]

表示 reactantsproducts 中分子模式之间的模板化反应.

PatternReaction[reactantsproducts,mapping]

表示 reactantsproducts 中原子间指定 mapping 的反应.

PatternReaction["smarts"]

表示由给定的反应 SMARTS 字符串定义的反应.

更多信息

  • PatternReaction 在笔记本中显示为对反应的图形描述. 通过鼠标悬停可以看出映射的原子对.
  • reactantsproducts 应为 MoleculePattern 对象列表.
  • 模式反应与 ApplyReaction 一起使用以对 Molecule 对象进行转换.
  • 反应物或产物的多次出现必须明确地出现在模式反应中,并且总是假定化学计量系数为 1.
  • mapping 应是形为 {{ri,ari}{pj,apj},} 的列表,表明反应物 ri 中索引为 ari 的原子被映射到产物 pj 中索引为 apj 的原子.
  • 反应的 SMARTS 字符串被写为 "reactants>>products",其中反应物和产物为有效的 SMARTS 模式,用句号分隔其中的成分. 在原子原语中用一个冒号后跟一个整数表示原子映射. 例如,"[H:1][O:2][H:3]>>[H:1][O-:2].[H+:3]" 表示水分解成氢氧根离子和质子.
  • 对于给定的 PatternReaction rxn,可用 rxn["prop"] 访问以下属性 "prop"
  • "Reactants"反应物列表
    "Products"产物列表
    "AtomMapping"从反应物到产物的原子映射
    "FullyAtomMappedQ"如果反应中的所有原子都被映射,则返回 True
    "Graphics"表示反应的图形对象
  • 对于给定的 PatternReaction rxn,可用以下形式测试反应的实用性:
  • rxn["ReactantMatchQ",mol]如果 mol 匹配 rxn 中的任何反应物模式,则返回 True
    rxn["ReactantMatchQ",mol,n]如果 mol 匹配第 n 个反应物模式,则返回 True
    rxn["ReactantMatchList",mol]mol 与每种反应物匹配,返回 TrueFalse 组成的列表
    rxn["ProductMatchQ",mol]如果 mol 匹配 rxn 中的任何产物,则返回 True
    rxn["ProductMatchQ",mol,n]如果 mol 匹配第 n 个产物,则返回 True
    rxn["ProductMatchList",mol]mol 与每种产物匹配,返回 TrueFalse 组成的列表
  • PatternReaction 被如 AtomQ 这样的函数视为原始对象.

范例

基本范例  (3)

定义氯化钠分子离解的模式反应:

用 SMARTS 字符串定义同一反应:

定义盐酸在水中离解的模式反应:

将反应应用于酸和乙醇:

定义分子间酯化的模式反应:

将反应应用于酸和乙醇:

Wolfram Research (2022),PatternReaction,Wolfram 语言函数,https://reference.wolfram.com/language/ref/PatternReaction.html.

文本

Wolfram Research (2022),PatternReaction,Wolfram 语言函数,https://reference.wolfram.com/language/ref/PatternReaction.html.

CMS

Wolfram 语言. 2022. "PatternReaction." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/PatternReaction.html.

APA

Wolfram 语言. (2022). PatternReaction. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/PatternReaction.html 年

BibTeX

@misc{reference.wolfram_2024_patternreaction, author="Wolfram Research", title="{PatternReaction}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/PatternReaction.html}", note=[Accessed: 18-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_patternreaction, organization={Wolfram Research}, title={PatternReaction}, year={2022}, url={https://reference.wolfram.com/language/ref/PatternReaction.html}, note=[Accessed: 18-November-2024 ]}