Limitations

Orbitron is a multi-format viewer and analysis tool with strong scriptability, but it deliberately does not try to be everything. Specific gaps to be aware of:

No input file generation. Orbitron reads outputs from many QC packages but does not write .com (Gaussian), .inp (NWChem/Molcas), .pwi (Quantum ESPRESSO), etc. Use the package’s official input builder (GaussView, ChemCraft) or a templating tool.

No transition state / IRC tools. No interactive saddle-point search, IRC traversal, or NEB visualization. The optimization-trajectory viewer renders existing trajectories but does not run them.

The molecular builder covers main-group organics, metal complexes, and standard amino-acid mutation, not every construction workflow. Edit Mode has grown well past atom/bond manipulation: nine placement geometries, generated C₃–C₈ rings, SMILES construction, conformer search, residue mutation, hydrogen and bond-order perception, coordination-sphere repair, 3D embedding, freezing, UFF relaxation, and a connectivity-driven Clean (see Viewer §3.7). Its current boundaries are:

Avogadro and ChemDraw remain better at freehand 2D sketching. Orbitron’s builder is aimed at getting a chemically sensible 3D starting structure — particularly a coordination compound — into a calculation.

Limited biology workflows. Orbitron parses PDB/mmCIF chain, residue, alternate-location, connection, and secondary-structure metadata; renders protein/nucleic cartoons; supports linked sequence and 3D selection; and can display biological assemblies. mmCIF chemical-component definitions classify modified peptide and nucleic-acid monomers and expose source names, formulae, masses, and standard parents. Semicolon-delimited multiline component display fields are not retained. Static-structure inspection covers residue shells, ligand and chain-interface contacts, explicit-H hydrogen bonds, named salt bridges, disulfides, mononuclear metal sites, and per-pair steric clashes. Protein-backbone validation uses the six residue-specific Richardson Lab Top8000 Ramachandran distributions and exposes each result as a selectable residue. Side-chain validation evaluates complete rotamer-bearing amino acids against the 17 Richardson Lab Top8000 percentile grids and exposes each visible conformer as a selectable result. A separate panel detects missing side-chain heavy atoms in supported coordinate-bearing amino acids. The five row-based validation panels export all findings as CSV or JSON with scene and analysis provenance. Supported incomplete standard side chains can be rebuilt with detached fit and clash validation. Orbitron does not yet draw a two-dimensional Ramachandran plot, assign named rotamers during validation, or build missing backbone atoms and loops. Alternate coordinates are retained and selectable, and edit mode provides explicit retain-only and delete-conformer operations. XTC trajectories use bounded random-access storage and the desktop supplies reversible whole-molecule, no-jump, centering, and reference-fit views. No-jump access still walks from frame 1 to the requested frame. Orbitron now computes RMSD, RMSF, radius of gyration, saved distance/angle/dihedral series, contacts, interfaces, and hydrogen-bond occupancy through the CLI and its cancellable desktop analysis panel. Sequence alignment is not implemented.

Spectroscopy coverage is uneven. Interactive IR/Raman spectra and a UV-Vis excitation spectrum are available, each with broadening controls and CSV/PNG export — the latter from Gaussian TD-DFT, NWChem TDDFT, Molcas RASSI (spin-free and spin-orbit) and DIRAC relativistic response. NMR is not implemented, and cross-format vibrational coverage still varies with the data each parser extracts.

Crystallographic visualization is functional but basic. Orbitron identifies all 14 Bravais lattice types, renders unit cells, and exports band structures, projected (“fat”) bands and site-resolved DOS from VASP and Quantum ESPRESSO runs. VESTA / CrystalMaker remain stronger for electron density visualization and publication-quality crystal renders.

Large-scene support has separate native and browser limits. Native static viewing is calibrated through one million atoms and two million explicit bonds on an M2 Ultra. Basic scene construction, picking, selection, and one edit/undo transaction were also measured through two million atoms. Larger native scenes are experimental: Orbitron estimates their memory and checks the selected GPU, but it has no level-of-detail renderer and makes no interaction-rate promise. Configured memory caps, integer-shape overflow, and a GPU unable to hold one render instance are hard refusals. A real one-million-atom bundle also opened under an 8 GiB Linux memory limit. On a physical 32 GiB M4 MacBook Air, the same bundle opened at 1,195,032,576 bytes maximum RSS with no swap and remained smooth while orbiting. Native presentation on a discrete GPU still needs a machine with an active graphical session; the RTX 4090 has only been measured through headless offscreen draw.

The browser has a fixed supported ceiling of 100,000 atom and 200,000 bond instances. It refuses larger scenes before constructing renderer data; there is no experimental above-cap browser mode. On the 32 GiB M4 MacBook Air, Chromium hardware WebGPU stayed near the display’s 144 Hz rate at both shipping caps: 100,000 atoms had a 6.94 ms median frame interval, and 100,000 atoms plus 200,000 bonds had a 6.93 ms median. SwiftShader software WebGL2 reached only 1.05 FPS and 0.39 FPS for those two cases, so Orbitron keeps one shared cap until it can identify renderer classes reliably. Source parsing and scene display are separate costs, and a small .orbpack file does not prove that its decoded scene is small. See Bundles §6.11 for the current source-memory estimates, measured renderer cases, and their exclusions.

Rough edges. Orbitron is younger than most of its competitors; expect occasional UX friction in the GUI compared to tools with 20 years of polish. The CLI and Python API are generally more battle-tested than the desktop viewer.

If any of these gaps blocks your workflow, please open an issue describing the use case — they help prioritize roadmap items.