Otter

Getting started

  • Installation
    • Requirements
    • Install the released package
    • Reproducible source installation
    • Install Otter
    • Run the tests
    • Build the documentation
    • Unlocked pip fallback
  • Quick start
    • Google Colab
    • Single-species aluminium
    • Mixtures
    • Runtime output
    • Access and export results
    • Runtime and cached electronic structure
    • Consistent PNG and PDF figures
  • User guide
    • Complete Al 1 eV workflow
      • Confirming QM SCF convergence
      • SCF history regularization
      • Continuum energy cutoff
      • Checking for missing shallow levels
      • WS boundary and numerical geometry
    • Aluminium KS-DFT versus Thomas–Fermi
      • Example and execution modes
      • What is plotted
      • Temperature sequence
      • Numerical record
    • Exchange-correlation functionals
      • Installation
      • Citation and provenance
      • Selecting a model
      • GGA potential
      • Finite GGA core regularization
      • Current scope
    • Aluminium static Rayleigh weight
    • Carbon local-field-correction sensitivity
      • Why similar responses can give different potentials
      • Run the example
    • Workflow results and portable NPZ files
      • Electronic structure
        • Compatibility
      • QOZ/HNC results
        • Migration from 0.3.1
      • Portable access
        • Mean-ionization definitions
        • Ion-orbital profiles and wavefunctions
        • Saving and reading orbital NPZ data
      • Export profiles
      • Save and load
      • Portable species and pair axes
      • Native average-atom arrays
      • Bound levels and orbital densities
      • Metadata and discovery
      • API
    • Parameter grids for interpolation
      • Install and run
      • Composition and numerical settings
      • Solver and output grids
      • Electron–ion potentials
      • HDF5 layout
      • Check completion before interpolation
      • Earlier HDF5 files
      • Python interface
    • Use Otter pair potentials in LAMMPS
      • Which Otter potential is used?
      • Complete mixture example from physical inputs
      • Why charge_e=zbar is specified
      • In-memory and single-species inputs
      • Generated LAMMPS files
      • How \(g_{ab}(r)\) and \(S_{ab}(k)\) are obtained
        • Why particle coordinates are sufficient
      • Timestep and physical duration
      • Inspecting the active LAMMPS potential
      • Numerical checks before accepting a run
    • Reproducing examples and benchmarks
      • Run the included Python script
      • The three download buttons
      • Batch recalculation
      • MD and other optional dependencies
      • Recorded website results
  • Example gallery
    • Al: complete electronic-to-ionic workflow
      • Reproduction
      • Recorded results
        • Recorded terminal output
      • Orbital access and NPZ export
    • Experimental IS/SC feedback for aluminium
      • Reproduction
      • Recorded results
        • Recorded terminal output
      • User controls
    • Aluminium KS-DFT and Thomas–Fermi comparison
      • Reproduction
      • Recorded results
        • Recorded terminal output
    • Al: elastic Rayleigh weight versus density
      • Reproduction
      • Recorded results
        • Recorded terminal output
    • Carbon ionization at 100 eV
      • Reproduction
      • Recorded result
    • Carbon: local-field-correction sensitivity
      • Reproduction
      • Recorded results
        • Recorded terminal output
    • CH1.36: multicomponent electronic-to-ionic workflow
      • Electronic data access
      • Reproduction
      • Recorded results
        • Recorded terminal output

Physics and validation

  • Scientific benchmarks
  • Experimental models
    • Self-consistent ion-structure feedback
      • Implemented single-component coupling
      • Minimal diagnostic use
      • Numerical convergence and inner accuracy
      • Scope and limitations
      • API
        • otter.experimental.SCFeedbackConfig
        • otter.experimental.SCFeedbackConvergenceError
        • otter.experimental.solve_sc_feedback_workflow
        • otter.experimental.mixture_ionic_background_profiles
        • otter.experimental.estimate_mixture_correlation_potentials
    • Free-channel continuum completion
      • Usage
      • Spectral density
      • Scope

Reference

  • API reference
    • Stable high-level interface
      • otter.PlasmaWorkflowConfig
        • PlasmaWorkflowConfig
        • otter.PlasmaWorkflowConfig.__init__
        • otter.PlasmaWorkflowConfig.citation
        • otter.PlasmaWorkflowConfig.solve
      • otter.solve_plasma_workflow
        • solve_plasma_workflow()
        • Examples using solve_plasma_workflow
      • otter.continue_plasma_workflow_from_electronic_result
        • continue_plasma_workflow_from_electronic_result()
        • Examples using continue_plasma_workflow_from_electronic_result
      • otter.run_formula_workflow
        • run_formula_workflow()
      • otter.parse_formula_composition
        • parse_formula_composition()
      • otter.resolve_plasma_composition
        • resolve_plasma_composition()
      • otter.StateExportOptions
        • StateExportOptions
        • otter.StateExportOptions.__init__
      • otter.save_plasma_state
        • save_plasma_state()
        • Examples using save_plasma_state
      • otter.load_plasma_state
        • load_plasma_state()
        • Examples using load_plasma_state
      • otter.bound_wavefunctions
        • bound_wavefunctions()
      • otter.ion_orbital_form_factors
        • ion_orbital_form_factors()
    • Workflow results and state files
      • otter.io.state.build_state_arrays
        • build_state_arrays()
      • otter.io.state.validate_state_arrays
        • validate_state_arrays()
    • Parameter-grid calculations
      • otter.grid.GridConfig
        • GridConfig
        • otter.grid.GridConfig.__init__
        • otter.grid.GridConfig.composition
        • otter.grid.GridConfig.configuration
      • otter.grid.run_grid
        • run_grid()
    • Scientific plotting
      • otter.plotting.set_style
        • set_style()
        • Examples using set_style
      • otter.plotting.style_context
        • style_context()
        • Examples using style_context
      • otter.plotting.style_rcparams
        • style_rcparams()
      • otter.plotting.grid_figsize
        • grid_figsize()
        • Examples using grid_figsize
      • otter.plotting.add_panel_label
        • add_panel_label()
      • otter.plotting.save_figure
        • save_figure()
        • Examples using save_figure
    • Internal modules
    • API stability
  • Citing Otter
    • Runtime citation API
      • CitationMixin
        • CitationMixin.citation()
      • bibliography_entries()
      • write_citations_markdown()
    • Reference rules for contributors
  • Bibliography
Otter
  • Scientific benchmark gallery
  • View page source

Scientific benchmark gallery

This gallery contains fixed-state validation studies and comparisons with published data. Run a page’s Python source to calculate its electronic and ionic states and generate the plots. No precomputed Otter NPZ is required. Pages containing MD require LAMMPS and MPI. Documentation builds display recorded figures and terminal output; they do not launch scientific calculations.

The scripts are already included in the complete source checkout. For setup and the Python, notebook and ZIP download options, see Reproducing examples and benchmarks.

These pages are separate from the capability-oriented example gallery. They test documented scientific configurations; they are not templates for silently changing a benchmark state.

Carbon structure factors: Otter PA-HNC and DFT-MD

Carbon structure factors: Otter PA-HNC and DFT-MD

Bethkenhagen et al. carbon-ionization comparison

Bethkenhagen et al. carbon-ionization comparison

CH₂: HNC and molecular dynamics

CH₂: HNC and molecular dynamics

Beryllium ionization: Döppner et al. (2023)

Beryllium ionization: Döppner et al. (2023)

Ion-structure literature library

Ion-structure literature library

Two-temperature aluminium: Johnson et al. (2025)

Two-temperature aluminium: Johnson et al. (2025)

Equilibrium aluminium structure factors: Schörner et al. (2022)

Equilibrium aluminium structure factors: Schörner et al. (2022)

Starrett et al. CH1.36 mixture pair distributions

Starrett et al. CH1.36 mixture pair distributions

Starrett–Saumon electronic levels and ionization

Starrett--Saumon electronic levels and ionization

Single-species Starrett–Saumon ion-structure benchmarks

Single-species Starrett--Saumon ion-structure benchmarks

Download all examples in Python source code: gen_benchmarks_python.zip

Download all examples in Jupyter notebooks: gen_benchmarks_jupyter.zip

Gallery generated by Sphinx-Gallery


© Copyright 2026, Chongbing Qu (瞿崇兵).

Built with Sphinx using a theme provided by Read the Docs.