SDF (.sdf, .sd)

背景

    • MIME 类型:chemical/x-mdl-sdfMDL 分子模型文件.
    • 用于化学信息应用程序以及用于存储和交换三维分子模型的网页.
    • 纯文本表格格式.
    • 表示化合物的一个任意数.
    • 存储原子坐标、化学键信息和元数据.
    • 由 Elsevier Molecular Design Limited (MDL) 维护.

Import 与 Export

  • Import["file.sdf"] 从 SDF 文件中导入一个分子列表.
  • Export["file.sdf",expr] 将分子或分子列表导入至 SDF 文件中.
  • Import["file.sdf",elem] 从一个 SDF 文件中导入指定的参数.
  • Import["file.sdf",{elem,suba,subb,}] 导入一个子参数.
  • Import["file.sdf",{{elem1,elem2,}}] 导入多个参数.
  • 导入格式可以由 Import["file","SDF"]Import["file",{"SDF",elem,}] 指定.
  • Export["file.sdf",mol] 从一个分子创建 SDF 文件.
  • Export["file.sdf",{mol1,mol2,}] 从分子列表创建 SDF 文件.
  • Export["file.sdf",{expr1,expr2,},{{elem1,elem2,}}] 将每一个 expri 指定为相应的 elemi.
  • Export["file.sdf",expr,opt1->val1,] 导出具有指定值的指定选项参数的 expr.
  • Export["file.sdf",{elem1->expr1,elem2->expr2,},"Rules"] 使用规则指定要导出的参数.
  • 请到以下参考页面了解完整的基本信息:
  • Import, Export从文件导入或导出到文件
    CloudImport, CloudExport从云对象导入或导出到云对象
    ImportString, ExportString从字符串导入或导出到字符串
    ImportByteArray, ExportByteArray从字节数组导入或导出到字节数组

Import 参数

  • Import 的通用参数:
  • "Elements" 该文件可用的参数和选项列表
    "Summary"文件摘要
    "Rules"所有可用参数的规则列表
  • 数据参数:
  • "Molecule"分子模型的一个符号表示
    "Molecule", nn 个分子的一个符号表示
    "Metadata"包含文件中元数据的 Association
    "Metadata", nn 个分子的元数据
  • Graphics 参数:
  • "Graphics3D"存储在文件中的所有分子模型的三维渲染
    "Graphics3D",nn 个分子的三维渲染
    "StructureDiagram"所有分子的二维结构公式
  • 数据表示的参数:
  • "EdgeRules"连接数据,以规则列表的列表形式给出
    "EdgeTypes"化学键类型,以字符串的列表的列表形式给出
    "FormalCharges""VertexTypes" 给出的原子电荷
    "MassNumbers"同位素质量数
    "VertexCoordinates"二维或三维原子坐标,通常单位为埃
    "VertexTypes"所有组成分子的原子或基团,一般以化学元素的缩写列表表示
  • Import["file.sdf","EdgeRules"] 以规则列表的列表给出存储在文件中所有化合物的连接数据.
  • Export["file.sdf",{vertlist,coordlist},{{"VertexTypes","VertexCoordinates"}}] 从原子类型规范以及二维或三维坐标中创建一个 SDF 文件.
  • 元信息参数:
  • "Header"存储在文件中的每个分子的头信息,以字符串的列表形式表示

选项

  • Import 的通用选项:
  • ImageSizeAutomatic指定图形显示的整体大小
    BackgroundWhite指定使用何种背景颜色
    ViewPointAutomatic观看三维模型的空间点
  • 默认设置为 ViewPoint->Automatic,Wolfram 语言会自动计算导入分子几何形状的最优观察角度.
  • 选择一个三维渲染样式:
  • "Rendering""BallAndStick"指定可视化方法
  • "Rendering"的可能设置为:
  • "BallAndStick"以球棍模型显示原子和化学键
    "Spacefilling"显示为叠加球的原子
    "Wireframe"以线渲染的的化学键
  • 通用 Export 选项包括:
  • "CoordinateDimension"Automatic是否包括二维和三维坐标
    "Header"Automatic第一行要使用的字符串
    IncludeHydrogensAutomatic是否包含明确的氢原子
  • 当设置为 "CoordinateDimension"Automatic 时,如果分子表达式包含显式的 AtomCoordinates,则选择 3;如果分子包含 AtomDiagramCoordinates,则选择 2.
  • 如果两者都不存在,则将自动生成坐标. 在这种情况下,将使用三维或二维坐标,这取决于该分子是否分别具有显式氢或隐式氢.

范例

打开所有单元关闭所有单元

基本范例  (2)

显示 SDF 文件中可用的 Import 参数:

导入所有分子:

从文件中导入第二个分子:

导入文件中第二个化合物的元信息:

以下给出存在文件中所有结构图的原子类型和二维坐标:

将分子列表导入一个 SDF 文件:

从上面输出创建一个 SDF 文件:

导出选项  (2)

"CoordinateDimension"  (1)

"Header"  (1)

用 "PubChem" 化合物 ID 的列表标记输出: