jane* docs
Analyze

Structure

Open a deposited structure beside the sequences it belongs to.

Reached byTools → Analyze
FormatsPDB flat file (.pdb, .ent) — the wwPDB v3.3 fixed-column format, including hybrid-36 numbering for entries too large for five columns PDBx/mmCIF (.cif, .mmcif) — the dictionary the wwPDB now distributes, read from the author’s own chain and residue numbering core CIF (.cif) — small-molecule crystallography, a different dictionary that shares the extension: fractional coordinates placed through the crystal’s own cell
Sample projectStructures

What it does

Opens a coordinate file — PDB, PDBx/mmCIF, or a core CIF small-molecule crystal structure — as a real tab in the project, drawn in three dimensions with everything the file states about itself listed beside it.

Which reader runs is decided by the file's contents, never its name. That matters more here than anywhere else in the app: .cif is shared by two unrelated dictionaries, and reading one as the other yields an empty scene rather than an error.

When you'd use this

You have a structure and a question about the molecule you are actually working on. Which chains are in this entry, and is the one I care about the protein or the DNA it is sitting on. What is bound in the active site, and how many copies. Which residues were modelled and which were disordered enough that the depositors left them out. Is the zinc I keep reading about in the paper actually in the coordinates.

It is also where you check a file before trusting it. A structure downloaded from a database, sent by a collaborator, or produced by a prediction tool all arrive as the same kind of file and are not the same kind of evidence: an entry solved at 1.2 Å, an NMR ensemble, and a computed model are told apart by their method, their resolution, and whether their temperature factors mean anything at all. The panel states each of those rather than drawing them identically and letting you assume.

The common practical use is orientation before design work: find the residue numbering that this file actually uses, so that a mutation you are about to order is numbered the way the structure is numbered rather than the way the paper's figure was.

And a crystal structure from a small-molecule database is the same question at a different scale: what is in this cell, in which space group, and where do the sites sit once the fractional coordinates are placed in real space.

What this computes

A structure is described from its coordinates; its provenance is quoted from the file. Those are different kinds of claim and are not blended. A resolution is something the depositors reported. A chain's residue count is something computed here from the atoms present.

Quoted from the file: the title, the format it was recognised as, the experimental method, the resolution in Ångströms, the deposition date, the unit cell edges and angles with its space group, and any modified residues the file itself declares, each shown as the component it stands in for.

Counted from the coordinates: the number of models, the chains with the kind of polymer each one holds, total residues and atoms, ordered waters, and the ligands — every non-water heteroatom component, named by its component identifier and counted by copies. Where the scene draws fewer atoms than the file holds, both numbers are given, so "atoms read" and "atoms drawn" can never be confused for each other.

Per chain: its residue count, the first and last residue numbers actually present in the file's own numbering, and the observed one-letter sequence. That numbering range is the practical readout — it is what tells you the number to type, and what tells you when a construct's numbering does not start at one.

Geometry and annotation: the helix and strand counts as annotated, the disulfide count, the temperature factor range and mean in Ų, the number of atoms carrying an alternate location indicator, and the extent — the longest side of the bounding box, in Ångströms, which is the one-number answer to "how big is this thing".

The construct sequence and the observed sequence are both available, and the difference between them is the disorder. A file states the sequence of what was in the tube; the coordinates state what was resolved. Loops that were too mobile to model appear in the first and not the second.

A modified residue is resolved through the file's own declaration, never guessed from its name. Selenomethionine is a methionine to a crystallographer and a distinct chemical component to the archive. Where the file declares what a component stands in for, that statement is used; where it does not, the residue is reported as its own component rather than being silently folded into a standard one. Residue and solvent naming follows the wwPDB Chemical Component Dictionary, the authority that assigns those identifiers.

What you can change, and what each choice answers: which model is drawn, or all of them for an ensemble — an ensemble's models are alternative conformations of the same molecules, so counts describe one model rather than being summed across them. The polymer can be drawn as a cartoon, sticks, spheres or lines. Colour answers a different question per scheme: by chain (which molecule is which), by secondary structure, by element, by temperature factor (which parts are least certain), or N to C along the sequence. Ligands and waters each toggle separately, and waters are off by default because they hide the molecule they surround.

Colouring by temperature factor is offered only when there is one. In an NMR ensemble or a computed model every atom carries a factor of zero; the option stays visible and says that, rather than disappearing and leaving "this file has no B-factors" indistinguishable from "this viewer cannot do that".

Highlighting takes a selector: a whole chain, a single residue with or without its chain, a residue range, or a component identifier. Three outcomes are reported differently, because they are three different answers: how many residues matched, that the selector was read but matched nothing — usually a residue number this file does not contain — and that a term could not be read at all, with the term quoted back.

For a small-molecule crystal structure, the polymer readings are absent rather than answered. A core CIF has no chains, no residues and no sequences — it lists the symmetry-independent atomic sites, which is the asymmetric unit and not the whole cell. What is reported instead is that site count, the empirical formula the file states about the contents of the cell (which is why it can name more atoms than the sites listed), the unit cell and its space group. Coordinates are stored as fractions of the cell edges and placed in space through the cell's orthogonalization matrix. Nothing here applies the space group's operators, and the panel says so beneath the scene: two atoms for sodium chloride otherwise reads as a broken file.

Because there is no backbone, a cartoon is offered and refused with that reason, and the scene opens as sticks coloured by element — one colour per chain would paint the whole molecule flat.

Where it lives

Tools → Analyze, or open any .pdb, .ent, .cif or .mmcif file from a project. The same viewer draws the stage tab and the file manager preview, so a structure reads the same way whichever door you came through. A structure file also offers a second door to its raw text, where a PDB flat file's REMARK block, revision history and depositor notes live.

Inputs and outputs

It accepts a PDB flat file, a PDBx/mmCIF, or a core CIF, and decides which from the bytes rather than the name — necessary rather than fastidious, because PDBx/mmCIF and core CIF are unrelated dictionaries that share the .cif extension, and reading one as the other yields zero atoms rather than an error.

It produces a scene, the readings above, and the observed sequence of any chain, which can go on to be aligned, back-translated or ordered.

What it refuses, and says so: a file over 60 MB; a file with no readable coordinate records, with the reason named; a model number an ensemble does not have, naming the range that exists. A line the reader cannot parse becomes a stated warning and the rest of the file is still read — one truncated atom record does not make a structure unopenable.

Worked example

1CF7 — an E2F4/DP2 heterodimer bound to its DNA site — is bundled in both serialisations, and opening both is the example worth running. Identical 1,873 atoms and 254 residues; five chains from the PDB flat file and four from the mmCIF, because the older file leaves its 75 ordered waters without a chain identifier and the mmCIF assigns them to chains A–D. Neither is wrong. The same experiment is described differently by the two deposits, and normalising one to the other would hide a real difference.

Controls

Every control and what each answers is described under What this computes above, with the scheme each one chooses between. Two behaviours are worth naming on their own, because both are about a control that cannot act rather than one that can:

  • A control with nothing to do is disabled with its reason attached, never hidden — Model on a single-model file, Cartoon on a structure with no backbone, Ligands where every atom is already drawn by the representation. "This file has no ensemble" and "this viewer cannot draw one" are different statements and a missing control cannot tell them apart.
  • A disabled toggle reads off. A greyed switch still showing "on" claims something is being drawn that is not.

Algorithms you can choose

There is one reading of a coordinate file, because the formats define it: the answer is the file's own content, not an estimate. Where the file itself offers alternatives — which model of an ensemble to describe — that is a control above rather than a method choice.

The science

A PDB flat file is a fixed-column format, so a field is defined by the columns it occupies and not by whitespace: the reader follows the wwPDB PDB File Format v3.3 column definitions exactly, which is why a file with a blank chain identifier or a residue number below 1 reads correctly rather than shifting. Entries too large for a five-character atom serial use hybrid-36, a base-36 extension of the numbering; that decoder follows cctbx's reference implementation.

A core CIF stores positions as fractions of the cell edges. Turning those into ångströms needs the orthogonalization matrix built from a, b, c, α, β and γ — including the reciprocal-cell relation that only becomes visible when all three angles are off 90°. The convention for which crystal axis aligns with which Cartesian axis is the one International Tables for Crystallography volume B states for the Protein Data Bank.

Residue classification — what is water, what is an amino acid, what is a nucleotide — comes from the wwPDB Chemical Component Dictionary, the archive's own register of what each three-character component name means, rather than from a list assembled here. A modified residue is resolved by the file's own declaration of what it stands in for: selenomethionine reads as methionine because the deposit says so.

Every reader is checked atom by atom against gemmi, the macromolecular library CCP4 and the Protein Data Bank's tooling are built on, over the whole bundled corpus rather than a sample of it.

Limitations

  • No symmetry is applied and no biological assembly is built. What is on screen is the asymmetric unit as deposited. For a small-molecule structure this is stated beneath the scene, because two atoms for sodium chloride otherwise looks like a broken read.
  • Secondary structure is the depositor's annotation, not a calculation over the coordinates. An entry that annotates none shows none, which is a fact about the deposit.
  • No structure is fetched from anywhere. The file in your project is what is read.
  • Files over 60 MB are refused with the size stated.
  • Anisotropic displacement parameters are not read; the temperature factor reported is the isotropic B the format's own coordinate record carries.

Export

The scene is a tab you can export as an image with the rest of the workbench. A chain's observed sequence is text you can take into any sequence tool here.

API

@ports/macromolecule — readStructureFile(text) picks the reader from the bytes and returns one structure model; structureFacts(structure, modelIndex) derives everything above from it. The dialect chooser, the readers and the derivation are all headless and have no dependency on the viewer.

Automation

read_structure is the tool name. Give it the file's text and, optionally, which model of an ensemble to describe; it reports the format it read, the chains and their sequences, the ligands, the modified residues, the cell, the resolution and whether one was stated at all. It never writes a structure file and never applies symmetry, so every count it returns is a count of what the file holds.

Provenance

The bundled structures are current or verified revisions from the RCSB Protein Data Bank, each checked against its own deposited revision history; the crystal structures are from the Crystallography Open Database, each with its own entry number. Every reading a run produces carries the dialect it was read as, so a reply about a structure can say which dictionary answered.

What FEEDS it: nothing here — a structure arrives as a file you already have, from a deposit or a collaborator. What FOLLOWS it: a chain's observed sequence goes on to Protein Analysis for its physicochemical properties, or to Protein Domains to find out what the fold you are looking at is called. What it is an ALTERNATIVE to: nothing — a small molecule that is not a crystal structure is a different question and a different canvas, and opens as a Molecule.

In this group: Properties · BLAST Search · Search Databases · EMBL-EBI Services · Protein Domains · Protein Analysis · Protease Digest · Antibody Numbering · Mass spectrometry: peptide masses, b ladders, isotopes, spectrum scoring, q-values, protein inference · Codon Usage Analysis · Site avoidance: restriction sites a genome avoids or favors · Codon outliers: genes whose codon usage departs from their own genome · Tree incongruence: genes whose own alignment rejects the species tree · Reference stability: reference genes against genes of their own abundance · Annotation contradictions: UniProt features a predictor scores unlike confirmed ones · Hypothesis ledger: pre-register a hypothesis, attach runs, decide with e-BH · Reagent audit: does each annotated CDS code for what the map says, and are its cryptic promoters, splice sites and repeats worse than chance · Assay decay: does a published assay still match current genomes, and is the mismatch at the 3′ end · Gene incongruence: which loci of a multi-locus alignment have a different history · Target validation: test "gene G drives phenotype P" against gene-level evidence tables · Codon Tables · Enzyme Collections · Virtual Gel Bench · Phylogenetics · Dot Plot · Table · NumPy Array · PDF · Molecule · Image

On this page