Skip to content

Tips and Tricks

Practical advice for getting the most out of CatGo.

Keyboard Shortcuts Reference

Camera

KeyAction
Arrow keysRotate structure (pitch and yaw)
W / SRoll structure (counterclockwise / clockwise)
RReset camera to lattice-aligned view
FToggle fullscreen

Selection & Editing

KeyAction
ClickSelect atom
Shift+ClickAdd/remove atom from selection
Double-clickClear selection
Delete / BackspaceDelete selected atoms, bonds, or measurements
Ctrl+Z / Cmd+ZUndo
Ctrl+Shift+Z / Cmd+Shift+ZRedo
Drag atom-to-atom (bond mode)Create bond between two atoms with ghost preview
Escape (bond mode)Cancel in-progress bond drag or clear bond selection

Atom Manipulation

KeyAction
Arrow keys (with selection)Move selected atoms by step size (default 0.1 A)
Shift+Arrow keysMove selected atoms by 10x step size
Shift+Alt+DragDrag selected atoms without clicking first
Shift+Drag (left button)Rotate selected atoms (pitch/yaw)
Shift+Drag (right button)Roll selected atoms
X / Y / ZLock rotation to that axis (hold key)

Interface

KeyAction
IToggle info pane
EscapeClose panes / exit modes (in priority order)
Ctrl+Enter / Cmd+EnterImport from paste modal

Trajectory Playback

KeyAction
SpacePlay / Pause
A / DPrevious / Next frame
Ctrl+A / Ctrl+DJump to first / last frame
J / LBack / Forward 10 frames
PageUp / PageDownBack / Forward 25 frames
0-9Jump to percentage of trajectory
+ / -Increase / Decrease playback speed

Mouse Controls

ActionMouse
RotateLeft-click drag
RollRight-click drag
ZoomScroll wheel
PanShift+drag or Ctrl/Cmd+drag
Select atomClick
Multi-selectShift+click
Clear selectionDouble-click background

Performance Tips

Large Structures (>1000 atoms)

  • Reduce sphere segments — Lower sphere_segments in settings (default: 20, try 12-16 for large systems)
  • Disable bonds — Set show_bonds to "never" for very large structures where bond detection is slow
  • Disable image atoms — Turn off show_image_atoms if you don't need PBC visualization
  • Use same-size atoms — Enable same_size_atoms to simplify rendering

Large Trajectories

  • Indexed loading kicks in automatically for files >25 MB (text) or >50 MB (binary)
  • Reduce FPS — Lower the playback speed if frames are dropping
  • Increase chunk size — Higher chunk_size values speed up parsing but use more memory
  • Limit frames in memory — Adjust max_frames_in_memory based on your available RAM

Rendering Quality vs. Speed

SettingPerformanceQuality
sphere_segments 12FastAngular spheres
sphere_segments 20DefaultGood quality
sphere_segments 48SlowSmooth spheres
depth_cueing 0No overheadNo fog
depth_cueing 0.5Slight overheadSubtle depth

Customization

Atom Colors

CatGo provides six built-in color schemes:

SchemeStyle
VestaIndustry standard (default)
JmolJmol molecular viewer colors
AlloyMetallic palette
PastelSoft, muted colors
MutedDesaturated tones
Dark ModeOptimized for dark backgrounds

To use custom colors per element, set atom_color_mode to "custom" and assign colors in the legend panel.

Color by Property

Switch atom_color_mode to color atoms by:

  • Element — Standard periodic table colors
  • Coordination number — Number of bonded neighbors
  • Wyckoff position — Symmetry-equivalent sites

The color scale (atom_color_scale) can be set to any D3 interpolation function (viridis, plasma, inferno, magma, etc.).

Background

  • Set background_color to any hex color
  • Set background_opacity to 0 for a transparent background (useful for overlaying on slides)

Labels

  • Enable show_site_labels for element symbols on atoms
  • Enable show_site_indices for index numbers
  • Adjust site_label_size, site_label_color, and site_label_offset for positioning

Export Tips

Publication-Quality Images

  1. Set background_opacity to 0 (transparent) or 1 (solid white/black)
  2. Increase sphere_segments to 48 for smooth spheres
  3. Adjust atom_radius for the desired visual weight
  4. Export as GLB or OBJ for use in Blender, PowerPoint, or other rendering software
  5. Or take a screenshot directly from the fullscreen viewer

VASP Workflow

  1. Import a CIF from OPTIMADE or load from file
  2. Use the slab cutter to create a surface
  3. Add adsorbates using the pencil mode or adsorption site finder
  4. Export as POSCAR for direct use with VASP

Batch Processing

For many structures, use CatGo's pymatgen-compatible JSON format:

  1. Export structures as JSON
  2. Process with Python/pymatgen scripts
  3. Re-import the results

Common Workflows

Surface Catalysis Setup

  1. Import a bulk catalyst (e.g., Pt from OPTIMADE)
  2. Cut a (111) slab with the Miller slab cutter
  3. Build a 2x2x1 supercell for adequate surface area
  4. Find adsorption sites (atop, bridge, hollow)
  5. Add adsorbate molecule using pencil mode
  6. Freeze bottom 2 layers
  7. Optimize with MACE or CHGNet
  8. Export as POSCAR for production DFT

Quick Structure Check

  1. Drag and drop a CIF/POSCAR file
  2. Press I to view formula, space group, lattice parameters
  3. Toggle bonds and cell display to verify the structure
  4. Export in a different format if needed

Bonding Strategies

CatGo offers three bond detection methods:

StrategyDescriptionBest For
Solid angleGeometric solid angle criterion (default)General use
Electronegativity ratioBased on Pauling electronegativity differencesIonic/covalent materials
Atomic radiiSum of covalent radii with toleranceSimple molecules

If bonds look wrong, try switching the bonding strategy in settings.

Symmetry Algorithms

Two algorithms are available for space group detection:

AlgorithmDescription
Moyo (default)Modern symmetry finder, accurate for most structures
SpglibClassic algorithm, wider compatibility

Adjust symmetry.symprec (default: 1e-4) if the detected space group seems wrong — looser tolerance finds higher symmetry.

Released under the MIT License.