Skip to content

New descriptors and faster Insight loading#110

Merged
matteobecchi merged 45 commits into
GMPavanLab:mainfrom
matteobecchi:devel
Jul 25, 2025
Merged

New descriptors and faster Insight loading#110
matteobecchi merged 45 commits into
GMPavanLab:mainfrom
matteobecchi:devel

Conversation

@matteobecchi

@matteobecchi matteobecchi commented Jul 21, 2025

Copy link
Copy Markdown
Collaborator

Related Issues: #108
Requested Reviewers: @andrewtarzia

Three main things:

  1. Added a new "descriptors" module, which contains miscellaneous, "standard" single-particle descriptors. I put many_body_tica() in it, and also implemented the velocity alignment and the orientational order parameter, commonly used when studying colloidal particles or liquids.
  2. Added functions for computing Shannon entropy with KL estimator (useful because aparametric), and negentropy.
  3. Changed the way Insights and ClusterInsights are saved/loaded to/from JSON, using an auxiliary.npy file that can be open with mmap_mode, which is way faster fore large datasets.

I think I changed all the related examples and documentation accordingly.

@matteobecchi
matteobecchi marked this pull request as ready for review July 21, 2025 15:26
@matteobecchi matteobecchi self-assigned this Jul 21, 2025
@matteobecchi matteobecchi added the enhancement New feature or request label Jul 21, 2025
@matteobecchi matteobecchi linked an issue Jul 21, 2025 that may be closed by this pull request

@andrewtarzia andrewtarzia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly minor changes - great work @matteobecchi

Comment thread docs/source/analysis.rst Outdated
Comment thread docs/source/descriptors.rst
Comment thread docs/source/index.rst Outdated
Comment thread src/dynsight/_internal/analysis/entropy.py
Comment thread src/dynsight/_internal/analysis/entropy.py Outdated
Comment thread src/dynsight/_internal/trajectory/insight.py Outdated
Comment thread src/dynsight/_internal/trajectory/cluster_insight.py Outdated
Comment thread src/dynsight/_internal/trajectory/cluster_insight.py Outdated
Comment thread src/dynsight/_internal/trajectory/cluster_insight.py Outdated
Comment thread src/dynsight/_internal/trajectory/cluster_insight.py Outdated

@andrewtarzia andrewtarzia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just added a comment

@matteobecchi

Copy link
Copy Markdown
Collaborator Author

Addition: a "delay" parameter to the LENS functions, analogously to timeSOAP.

@matteobecchi matteobecchi added the documentation Improvements or additions to documentation label Jul 24, 2025

@SimoneMartino98 SimoneMartino98 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all ok for me; just a question / doubt on the convention used for the documentation; maybe it's a silly one, feel free to ignore me.

Comment thread src/dynsight/_internal/trajectory/cluster_insight.py Outdated
@matteobecchi

Copy link
Copy Markdown
Collaborator Author

For future reference: apparently, tSOAP and orientational order parameter are particularly sensitive to numerical errors.

tSOAP because it's a sum of products of hundreds of terms, sometimes very small.

Orientational OP probably because summing complex numbers along the unitary circle, they can be of the order of 1 but their sum very small if they are randomly distributed.

@matteobecchi
matteobecchi merged commit c1d4358 into GMPavanLab:main Jul 25, 2025
6 of 11 checks passed
@matteobecchi
matteobecchi deleted the devel branch July 25, 2025 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Faster loading of large Insight

3 participants