MMCIF (.cif)

  • Import supports version 1.0 of the mmCIF format.


    MIME types: chemical/x-cif, chemical/x-mmcif
    3D molecular model file.
    Used in cheminformatics applications and on the web for storing and exchanging molecule models.
    Commonly used as an alternative to the PDB format.
    mmCIF is an acronym derived from Macromolecular Crystallographic Information File.
    Derived from the CIF file format.
    Plain text format.
    Stores structure information for large biological molecules such as proteins and nucleic acids.
    Developed between 1990 and 1997 by the International Union of Crystallography.

Import and ExportImport and Export

  • Import["file.cif","MMCIF"] reads an mmCIF file and returns a stylized rendering of the molecule.
  • The Wolfram Language provides a variety of 3D rendering styles for macromolecules.
  • Import["file.cif","MMCIF"] returns a Graphics3D object.
  • Import["file.cif",{"MMCIF",elem}] imports the specified element from an MMCIF file.
  • Import["file.cif",{"MMCIF",elem,suba,subb,}] imports a subelement.
  • Import["file.cif",{"MMCIF"{elem1,elem2,}}] imports multiple elements.
  • See the reference pages for full general information on Import.
  • ImportString supports the mmCIF format.


  • General Import elements:
  • "Elements"list of elements and options available in this file
    "Rules"full list of rules for each element and option
    "Options"list of rules for options, properties, and settings
  • Graphics element:
  • "Graphics3D"mmCIF file rendered as a Graphics3D object
  • Import uses the "Graphics3D" element by default for the mmCIF format.
  • Data representation elements:
  • "Residues"residue sequences as an array of three-letter abbreviations
    "Sequence"residue sequences given as a list of strings
    "ResidueAtoms"list of residue atoms
    "ResidueChainLabels"list of chain labels
    "ResidueRoles"functional roles of residue atoms
    "ResidueCoordinates"3D coordinates of residue atoms
    "Resolution"spatial resolution of the model coordinates in picometers
    "AdditionalAtoms"atoms that are not constituents of a chain
    "AdditionalCoordinates"3D coordinates of additional atoms
    "AdditionalResidues"additional residue sequences as an array of three-letter abbreviations
    "SecondaryStructure"rules describing the large-scale structure of a chain
    "VertexCoordinates"atomic coordinates, typically given in picometers
    "VertexTypes"all atoms or groups constituting the molecule, typically given as a list of chemical element abbreviations
  • When reading an incomplete chain that is missing one or more residues from mmCIF, the Wolfram Language will represent it as a sequence of individual subchains.
  • The Wolfram Language uses the standard IUB/IUPAC abbreviations for amino acid residues.
  • When importing an mmCIF file that describes multiple 3D models of the same molecule, the following Import elements can be used to read the geometries of all models:
  • "ResidueCoordinatesList"residue coordinates for each model
    "AdditionalCoordinatesList"3D coordinates of additional atoms for each model
    "VertexCoordinatesList"atomic coordinates for each model, typically given in picometers
  • Meta-information elements:
  • "Authors"author information as referenced in the file
    "DepositionDate"when the file was added to the database
    "PDBClassification"PDB classification from the file header
    "PDBIDPDB structure identification string
    "References"bibliographic reference, given as a list of rules
    "Title"document title


  • General rendering options:
  • ImageSizeAutomaticspecifies the overall size of the graphics to display
    BackgroundWhitespecifies what background color to use
    ColorFunctionAutomaticfunction to apply to determine the coloring of secondary structure visualizations
    ViewPointAutomaticpoint in space from which the 3D model is to be viewed
  • With the default setting ViewPoint->Automatic, the Wolfram Language automatically calculates the optimal viewing angle for the imported molecule model.
  • Selecting a rendering style:
  • "Rendering""Structure"specifies the visualization method
  • Possible settings for "Rendering" are:
  • "BallAndStick"displays atoms and bonds as a ball-and-stick model
    "Structure"stylized rendering of the protein backbone
    "Spacefilling"atoms shown as overlapping spheres
    "Wireframe"bonds rendered as lines

ExamplesExamplesopen allclose all

Basic Examples  (2)Basic Examples  (2)

Import an mmCIF file:

Click for copyable input

Show the names of all available Import elements:

Click for copyable input

Read reference information from this mmCIF file:

Click for copyable input

Import the amino acid sequences as strings:

Click for copyable input

Show the Import elements available in a sample file:

Click for copyable input
Introduced in 2008
Translate this page: