cpmdc
/

Tutorials

  • Build the default library
  • Describe the method and the geometry
  • Run the example host
  • Write your own host
  • Switch to OpenCPMD
  • What you built
  • What connects to what
  • Prepare the run directory
  • Run the minimisation
  • Change the method
  • Run on several ranks
  • Default Build
  • Common Paths
  • Work Loop
  • What To Read After The First Run
  • Run The Host Example
  • Test Selection
  • Session Suites
  • OpenCPMD Archive Build
  • Common Failures
  • Cap’n Proto Fixtures

How-To Guides

  • What gets built
  • Requirements
  • Build the default library
  • Meson options
  • Build against OpenCPMD
  • Install
  • Pixi tasks
  • Goal
  • Patches and what each one is for
  • Build a patched tree
  • Patch a tree that is already built
  • Link and check
  • Goal
  • Write the message as Cap’n Proto text
  • Map deck lines to fields
  • Defaults that change the physics
  • Check the rendered deck
  • Where the geometry-dependent lines go
  • Pick The Entry Point
  • C ABI
  • Message Flow
  • Feature Discovery
  • Session Step Calls (direct-call socket)
  • Result Buffer Contract
  • Session Lifetime
  • CPMD Input Ownership
  • RESTART files
  • Units
  • OpenCPMD Runtime Inputs
  • Nuclear forces from repeated SCF calls
  • Goal
  • The rules
  • One calculator over all ranks
  • Several calculators in one job
  • Share the parent’s result
  • One session per calculator
  • Finalize MPI
  • Threads
  • Goal
  • Measured on the Si3N4 cluster
  • Set ODIIS in the message
  • When to keep PCG
  • Always set MAXITER
  • Goal
  • Write the deck to a file
  • What the OpenCPMD path changes
  • Checks worth making on the file
  • Compare with a deck that works
  • Energies
  • Failed calls
  • Forces
  • Build and link

Reference

  • Conventions
  • Types
  • Library status
  • MPI
  • Configuration without a session
  • Global array calls
  • Sessions
  • One-shot message calls
  • Results of the last evaluation
  • Discovery
  • RESTART file library
  • Read by libcpmdc at run time
  • Read by the tests and tools
  • Read by hosts that load libcpmdc
  • CPMDParams
  • CPMDInputSection
  • CPMDDirective
  • CPMDCpmdSection, the fields a force call uses
  • CPMDSystemSection, the fields that set the cell
  • CPMDDftSection
  • CPMDAtomsSection and CPMDAtomsPseudopotential
  • ForceInput
  • PotentialConfig
  • Contract
  • Top-level CPMDParams fields
  • Feature ID namespaces
  • Mapping a CPMD manual line
  • Inventory guardrails
  • CPMDInputSection kinds
  • Escape hatches
  • Choosing an input carrier
  • Catalog section exposure
  • Other structured parameter features
  • Typed &CPMD controls
  • Typed &DFT controls
  • PotentialConfig
  • Two copies of one list
  • Feature IDs
  • Query it from C
  • The inventory file
  • The checks
  • Add a row
  • Sources checked
  • Symbols
  • Parser sections
  • A
  • C
  • D
  • E
  • F
  • G
  • H
  • K
  • M
  • N
  • O
  • P
  • R
  • S
  • T
  • W
  • API Reference
    • Global Namespace
      • enum CPMDCFeatureKind
      • struct CPMDCChargeIntegrals
      • struct CPMDCEnergyComponents
      • struct CPMDCFeatureEntry
      • struct CPMDCMDTrajectoryRow
      • struct CPMDCMultiStateEnergies
      • struct CPMDCPropertySnapshot
      • struct CPMDCResult
      • struct CPMDCStressTensor

Explanation

  • Why a C ABI around CPMD
  • Layers
  • Two messages, two lifetimes
  • What one evaluation does
  • Where the deck comes from
  • Sessions, topology, and state
  • Three builds, one ABI
  • The file route it replaces
  • What one call costs
  • How the wavefunction travels
  • What each route has to guard against
  • Both routes give the same answers
  • Cold and warm calls
  • Where the orbitals are kept
  • What clears the orbitals
  • The RESTART file
  • The optimiser on a warm start
  • Every rank is a copy of the host
  • The communicator CPMD uses
  • Why the parent rank’s result counts
  • One session per calculator
  • Who ends MPI
  • Threads inside ranks

Contributing

  • Development Checks
  • Add a typed CPMD keyword
  • Source Layout
  • Documentation
  • Release Process
    • Versioning
    • Checklist

Project

  • Changelog
cpmdc 0 0
Edit this page
  1. cpmdc /
  2. API Reference
View Source Open in ChatGPT Open in Claude

API ReferenceΒΆ

Reference and Index:

Global Namespace
Index
Previous
A
Next
Global Namespace

2026-present, cpmdc developers

Made with Sphinx and Shibuya theme.