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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cg particle support #148

Open
wants to merge 16 commits into
base: develop
Choose a base branch
from
Open

Cg particle support #148

wants to merge 16 commits into from

Conversation

Bernadette-Mohr
Copy link
Collaborator

Addition of a class ParticleCell to model_system for the parsing of coarse-grained representations.
The normalizer still calls atomic_cell.to_ase_atoms; somewhere, particle_cell must be automatically changed to atomic_cell.

# Set the name of the section
self.name = self.m_def.name #! self.name here is 'ParticleCell'

def is_equal_cell(self, other) -> bool:
Copy link
Collaborator

Choose a reason for hiding this comment

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

What exactly is this used for in atomic_cell? Is it for defining different reference frames?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I don't think it is even used in nomad AtomicCell. I don't see an issue with removing it.

particles = Particles(symbols=particle_labels)

# PBC
if self.periodic_boundary_conditions is None:
Copy link
Collaborator

Choose a reason for hiding this comment

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

I am assuming a lot of these functionalities are shared with atomic_cell. I am wondering if they can be taken up to cell, or defined consistently between the classes in some other way?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

That would make sense as far as possible. To prevent errors with CG systems, we have to check carefully for all situations where functions from ase are called and keep those duplicates.

@coveralls
Copy link

coveralls commented Nov 27, 2024

Pull Request Test Coverage Report for Build 12144007686

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-80.1%) to 0.0%

Totals Coverage Status
Change from base Build 11890140918: -80.1%
Covered Lines: 0
Relevant Lines: 0

💛 - Coveralls

@@ -1137,11 +1305,16 @@ def normalize(self, archive: 'EntryArchive', logger: 'BoundLogger') -> None:
sec_symmetry = self.m_create(Symmetry)
sec_symmetry.normalize(archive, logger)

print(self.model_system)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Do these mean that you have tested this with your parser? If not how are you testing? And with normalization?

Copy link
Collaborator

@JFRudzinski JFRudzinski left a comment

Choose a reason for hiding this comment

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

Upon initial glance, I think the direction is looking good. Could you maybe just list out here any major changes that you have made compared with AtomicCell? It would be easy for me to look into those directly once I know.

Another thing that comes to mind is units. For gromacs or other sims using physical units we can get away with this for now, but we need to figure out a bigger solution for reduced units and such. This is not really on you, we need to have a discussion with Area D eventually. For now, just think about the different situations with CG units that you know.

Perhaps as a minimum effort to indicate that units may not be meaningful, using ParticleCell could trigger some sort of warning, or populate some metadata upstream, i.e., in Simulation(), about this 🤔

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 participants