nuget server logo nuget api documents
↑

API Docs / SMRUCC.genomics.Model.Metabolic.RouterAdapter / MetabolicAdapter

MetabolicAdapter

Full name SMRUCC.genomics.Model.Metabolic.RouterAdapter.MetabolicAdapter Assembly SMRUCC.genomics.Model.Metabolic.RouterAdapter Members 15

把 GCModeller 内部标准代谢网络(化合物 + 反应的集合)装配成 RetroPath 的 逆向合成通路搜索器。

00 Remarks

构造期一次性完成: 1) 化合物结构索引(SMILES 净化 + 元素白名单 + 解析); 2) 反应实例 → 广义反应规则(MCS 原子映射 + 反应中心提取 + SMARTS 泛化); 3) 底盘内源代谢物汇集合。 之后每次 MetabolicAdapter.FindPathway() 只是对已装配的 Netwalk 发起一次搜索。

01 Syntax

SMRUCC.genomics.Model.Metabolic.RouterAdapter.MetabolicAdapter

02 Methods

NameOverloadsSummary
.ctor 1 从内部标准代谢模型装配搜索器。
GetCompound 1 按 compound id 取结构(无结构时返回 Nothing)
FindPathway 1 以给定 SMILES 为目标做逆向合成通路搜索。 查询时会把目标自身从汇集合中剔除:BeamSearch 一旦判定"目标已属于汇"就直接返回 0 条路径,而"目标在底盘中已存在"对通路设计没有意义——我们想知道的是它怎么被合成出来。
SynthesisRoute 1 从起点代谢物 A 出发,搜索合成目标代谢物 B 的最经济通路。
SynthesisRouteById 1 以代谢模型的化合物 id 指定起点与目标(如 "CHORISMATE" → "ENTEROBACTIN")。
CreateNetwalk 1 用已装配好的规则集与汇集合另建一个搜索器(可指定不同的搜索参数)。
SmilesOf 1 按 compound id 取净化后的 SMILES(无结构时抛异常)
FindPathwayById 1 以内部模型的化合物 id 为目标做搜索(如 "ENTEROBACTIN")

03 Properties

NameOverloadsSummary
SinkMode 1 current sink mode
Skipped 1 规则挖掘过程中被跳过的条目及原因计数
RuleTrace 1 逐条反应的跳过原因(reaction id → 原因),用于排查某条反应为何未进规则库
Stats 1 装配统计信息(化合物总数 / 可用结构数 / 规则数 / 汇大小 / 耗时)
Rules 1 挖掘得到的广义反应规则集
Compounds 1 compound id → 结构(净化后的 SMILES + 分子图)

04 Fields

NameOverloadsSummary
sinkEntries 1 汇条目:(分子指纹, compound id, 净化后的 SMILES)

05 Members

method .ctor #
#ctor(IEnumerable(Of MetabolicCompound), IEnumerable(Of MetabolicReaction), SearchOptions, ScoreWeights, SinkModes, Int32, Int32, Int32, Int32, Int32, Int32, Boolean, Boolean, Boolean, Boolean)

从内部标准代谢模型装配搜索器。

Parameters
NameTypeDescription
compoundsIEnumerable(Of MetabolicCompound)

内部代谢化合物集合(必须有 SMILES 才能参与挖掘)。

metabolicIEnumerable(Of MetabolicReaction)

内部代谢反应集合(left/right 引用上面的化合物 id)。

optsSearchOptions

束搜索参数(默认 beam / width 50 / depth 6)。

wScoreWeights

路径评分权重(默认 0.4 热力学 / 0.3 酶可得性 / 0.3 长度)。

sinkModeSinkModes

汇集合模式:Core = 核心中心代谢子集;All = 全库。

coreDegreeInt32

Core 模式下判定枢纽代谢物的最少反应出现次数; 小规模手写网络建议取 2,真实库取 4。

maxMoleculeAtomsInt32

参与反应的分子重原子数上限(超出则跳过该反应,控耗时)。

maxPatternAtomsInt32

模式原子数上限(超出则规则过特异,跳过)。

mcsNodeBudgetInt32

MCS 原子映射的回溯节点预算。

maxUnmappedAtomsInt32

MCS 允许保留的未映射原子数(≈反应中心规模)。

shellRadiusInt32

反应中心向外扩展的层数(泛化环境半径)。

includeBuiltinRulesBoolean

是否叠加 RetroPath 内置的 9 条广义规则。

strictSelfCheckBoolean

严格模式:丢弃无法重现自身反应的退化规则。

verboseBoolean

是否向 stderr 输出装配诊断。

keepRuleTraceBoolean

是否记录逐条反应的跳过原因。

method GetCompound #
GetCompound(String)

按 compound id 取结构(无结构时返回 Nothing)

method FindPathway #
FindPathway(String)

以给定 SMILES 为目标做逆向合成通路搜索。 查询时会把目标自身从汇集合中剔除:BeamSearch 一旦判定"目标已属于汇"就直接返回 0 条路径,而"目标在底盘中已存在"对通路设计没有意义——我们想知道的是它怎么被合成出来。

Parameters
NameTypeDescription
targetSmilesString

目标分子的 SMILES。

Returns

含参数快照、统计与候选通路的报告。

method SynthesisRoute #
SynthesisRoute(String, String, SourceRoles, Boolean, IEnumerable(Of ValueTuple(Of String, String)), Int32, Boolean)

从起点代谢物 A 出发,搜索合成目标代谢物 B 的最经济通路。

Parameters
NameTypeDescription
sourceSmilesString

起点化合物 A 的 SMILES。

targetSmilesString

目标化合物 B 的 SMILES。

roleSourceRoles

A 的角色:Source = 必须是最上游叶子原料;Anywhere = 出现在通路任意位置即可。

strictBoolean

严格模式:除 A 与货币分子外不依赖任何底盘代谢物(可用 allowedExtra 放行个别辅因子)。

allowedExtraIEnumerable(Of ValueTuple(Of String, String))

strict 模式下额外允许作为起点的化合物(名称, SMILES)。

maxRoutesInt32

最多返回多少条候选(0 = 默认 10 条)。

escalateBoolean

首轮未命中时是否自动加大束宽/深度重试。

method SynthesisRouteById #
SynthesisRouteById(String, String, SourceRoles, Boolean, IEnumerable(Of String), Int32, Boolean)

以代谢模型的化合物 id 指定起点与目标(如 "CHORISMATE" → "ENTEROBACTIN")。

Parameters
NameTypeDescription
allowedExtraIdsString

strict 模式下额外放行的化合物 id(如 ATP / NADH)。

method CreateNetwalk #
CreateNetwalk(SearchOptions, ScoreWeights)

用已装配好的规则集与汇集合另建一个搜索器(可指定不同的搜索参数)。

Parameters
NameTypeDescription
optsSearchOptions

搜索参数;省略时用构造期参数。适合做串行/并行对比或按查询调参。

wScoreWeights

评分权重;省略时用构造期权重。

method SmilesOf #
SmilesOf(String)

按 compound id 取净化后的 SMILES(无结构时抛异常)

method FindPathwayById #
FindPathwayById(String)

以内部模型的化合物 id 为目标做搜索(如 "ENTEROBACTIN")

Parameters
NameTypeDescription
compoundIdString

化合物 id(即 MetabolicCompound.id)。

property SinkMode #
SinkMode

current sink mode

property Skipped #
Skipped

规则挖掘过程中被跳过的条目及原因计数

property RuleTrace #
RuleTrace

逐条反应的跳过原因(reaction id → 原因),用于排查某条反应为何未进规则库

property Stats #
Stats

装配统计信息(化合物总数 / 可用结构数 / 规则数 / 汇大小 / 耗时)

property Rules #
Rules

挖掘得到的广义反应规则集

property Compounds #
Compounds

compound id → 结构(净化后的 SMILES + 分子图)

field sinkEntries #
sinkEntries

汇条目:(分子指纹, compound id, 净化后的 SMILES)