Skip to content

1.0.0 release - #74

Merged
jwjeffr merged 37 commits into
mainfrom
many-body
Jul 14, 2026
Merged

jwjeffr merged 37 commits into
mainfrom
many-body

Conversation

@jwjeffr

@jwjeffr jwjeffr commented Jul 10, 2026 •

Copy link
Copy Markdown
Contributor

Lots of changes:

  • Overhauled implementation to accept general $k$-body terms
    • Implemented formulas for $k$-body topological tensors, rather than just $2$ and $3$-body ones
    • Einsum strings are now autogenerated
  • Implemented feature vector differences for general permutations, not just 2-cycles
  • Way less coupling
    • Lattice structure is now not handled by the library, so code is decoupled from it
    • Training now directly dispatches to a model, rather than having to traverse through attributes
    • Cluster expansion is no longer its own object, so no need to communicate with a single point of failure

@jwjeffr jwjeffr linked an issue Jul 10, 2026 that may be closed by this pull request
@jwjeffr
jwjeffr merged commit 9c517fc into main Jul 14, 2026
8 checks passed
@jwjeffr
jwjeffr deleted the many-body branch July 15, 2026 14:35
jwjeffr added a commit that referenced this pull request Jul 15, 2026
* skeleton code for many body + feature spec (issues #10 and #73)

* greek alphabet dependency

* cache mechanism for topological tensors

* some nice warnings

* precomputed feature vector size

* updated examples for new API as well as public training method

* second exotic lattice example updated

* feature name labels, issue #69

* undo ordering of species indices

* adjacency tensors dtype is int

* erroneous print

* tolerance as input

* training api

* fixed the swap issue

* numbers instead of symbols for internal logic

* L label index rather than n

* migrated and fixed some examples

* tighter bounds on example

* multi-target training

* callbacking example

* migrated some tests

* difference training

* fixed intensive dict default value bug

* major cleanup

* docs

* ruff and mypy

* docs

* multiset dependency

* no greek alphabet third party dep and more linting

* outdated example

* erroneous print

* better docs on calculator

* use calculate subclass method

* mypy problem

* some cleaning

* missed examples

* use calc.load
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.

4 body and 5 body terms

1 participant