Skip to content

One electron count and one solvent calc-type list (B2.8) - #144

Merged
NCCU-Schultz-Lab merged 1 commit into
mainfrom
claude/b28-single-sources
Oct 11, 2026
Merged

NCCU-Schultz-Lab merged 1 commit into
mainfrom
claude/b28-single-sources

Conversation

@NCCU-Schultz-Lab

@NCCU-Schultz-Lab NCCU-Schultz-Lab commented Oct 11, 2026 •

Copy link
Copy Markdown
Collaborator

Two pieces of chemistry bookkeeping were written out in several places and had already drifted once. The SLURM resource estimate counted Mn, Co, Ni and Mo as 0 electrons.

Changes

  • config.electron_count(atoms, charge) is now the only electron count. Molecule.get_electron_count, molecule.suggest_multiplicity, xyz_input.electron_count and the SLURM estimate all use it. Symbols are title-cased, so suggest_multiplicity now also counts lowercase symbols. The standard-library quantui-batch launcher keeps its own copy, which the existing parity tests hold equal.
  • The Calculate tab's solvent-capable calc types are derived from the batch worker's SOLVENT_CALC_TYPES, plus Transition State. TS runs only in the app until it is added to SLURM, so it is the one app-only entry. This replaces a second hand-written list; the result is the same six calc types.

Testing

  • pytest -m "not network": 3817 passed, 19 skipped, 0 failed.
  • ruff, black and mypy (run as in CI): clean.
  • New tests:
    • electron counts for neutral, charged, transition-metal and lowercase input;
    • every caller agrees on MnO₄⁻ (58 electrons);
    • the app's solvent set equals the batch set plus Transition State.

Authorship

  • Claude (Opus 5.5): code edits, review, and conceptual discussion
  • Jonathan Schultz: overall vision, planning, review, and orchestration

- config.electron_count(atoms, charge) is now the only electron count:
  Molecule.get_electron_count, molecule.suggest_multiplicity,
  xyz_input.electron_count and the SLURM resource estimate call it. The
  copies had already drifted once (the estimate counted Mn/Co/Ni/Mo as 0
  electrons). Symbols are title-cased, so suggest_multiplicity now also
  counts lowercase symbols. The stdlib quantui-batch launcher keeps its
  port, held equal by the existing parity tests.
- app_runflow's solvent-capable Calculate-tab labels are derived from
  batch_input.SOLVENT_CALC_TYPES plus Transition State (app-only until
  TS.5), instead of a second hand-written list. Same six labels as
  before.

Contributions:
- Claude (Opus 5.5): code edits, review, and conceptual discussion
- Jonathan Schultz: overall vision, planning, review, and orchestration

Co-authored-by: Jonathan Schultz <nccu-schultz-lab@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@NCCU-Schultz-Lab
NCCU-Schultz-Lab merged commit de7a2b8 into main Oct 11, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant