Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use set for placer ids. #390

Merged
merged 14 commits into from
Sep 1, 2021
Merged

Conversation

andrewtarzia
Copy link
Collaborator

@andrewtarzia andrewtarzia commented Aug 31, 2021

Related Issues: #372 , #276, #156
Requested Reviewers: @lukasturcani
Note for Reviewers: If you accept the review request add a 馃憤 to this post

Found, while working on #372, that BuildingBlock._placer_ids contained duplicate ids from distinct functional groups. This PR fixes this issue by using a frozen set in BuildingBlock.py.

Main change in

  • src/stk/molecular/molecules/building_block.py:BuildingBlock._normalize_placer_ids(): This method now returns a set.

Added a test of this specific issue.

Also added the BuildingBlock._core_ids attribute and the BuildingBlock._get_core_ids() method such that this property, similar to _placer_ids is set on initialization of the BuildingBlock instead of collected from scratch on call of BuildingBlock.get_core_atom_ids().

Many position matrices change negligibly but enough to fail the tests due to new centroid positions due to the set. @lukasturcani please visualise structures to see that things look about right to you?

Copy link
Owner

@lukasturcani lukasturcani left a comment

Choose a reason for hiding this comment

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

Pretty close.

src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Show resolved Hide resolved
@lukasturcani
Copy link
Owner

An explanation of why the _core_atom_ids attribute needed to be created would be good in the PR message.

Copy link
Owner

@lukasturcani lukasturcani left a comment

Choose a reason for hiding this comment

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

closer.

src/stk/molecular/molecules/building_block.py Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
src/stk/molecular/molecules/building_block.py Outdated Show resolved Hide resolved
@lukasturcani lukasturcani merged commit 27951be into lukasturcani:master Sep 1, 2021
@andrewtarzia andrewtarzia deleted the placer_set branch September 1, 2021 16:56
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.

None yet

2 participants