Closed iProzd closed 1 month ago
The recent changes introduce a new class DescrptSeT
across multiple files, representing a DeepPot-SE descriptor for atomic configurations. This class incorporates angular and radial information, provides methods for computing descriptors, managing parameters, serialization, and updating selections for neighbor statistics. Additionally, test cases for consistency and JIT compilation have been added, and the env_protection
parameter has been integrated into the descriptor initialization and related methods.
Files/Groups | Change Summary |
---|---|
deepmd/dpmodel/descriptor/se_t.py , deepmd/pt/model/descriptor/se_t.py , deepmd/tf/descriptor/se_t.py |
Introduced DescrptSeT class with methods for descriptor computation, parameter management, serialization, and updating selections. Added env_protection parameter in the __init__ method. |
deepmd/pt/model/descriptor/se_a.py |
Modified __init__ method to include trainable parameter and removed ntypes and **kwargs . Added logic to raise NotImplementedError if spin is not None . |
source/tests/pt/model/test_se_t.py |
Added test cases for DescrptSeT functionality, including consistency checks and JIT compilation testing. |
source/tests/consistent/descriptor/test_se_t.py |
Introduced test cases for DescrptSeT descriptor class across different deep learning frameworks, ensuring consistency across frameworks. |
sequenceDiagram
participant User
participant DescrptSeT
participant DeepPot-SE Frameworks
User->>DescrptSeT: Initialize with parameters
DescrptSeT->>DeepPot-SE Frameworks: Compute descriptor
DeepPot-SE Frameworks-->>DescrptSeT: Return descriptor
DescrptSeT-->>User: Provide descriptor
DescrptSeT
across different frameworks, which aligns with the need for self-consistent unit tests mentioned in the issue.Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Attention: Patch coverage is 82.74336%
with 78 lines
in your changes are missing coverage. Please review.
Project coverage is 82.53%. Comparing base (
dd7f27a
) to head (0ac65d6
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
A UT is needed for testing consistency between results using exclude_types
and results from masked nlist. I opened an issue https://github.com/deepmodeling/deepmd-kit/issues/3830 and a seperate PR needed, after finding inconsistencies in some of the existing descriptors.
Note:
exclude_types
is supported only for pt/dp.resnet_dt
isTrue
forse_e3
.Summary by CodeRabbit
New Features
DescrptSeT
class for DeepPot-SE descriptor with enhanced atomic configuration handling.DescrptBlockSeT
class for descriptor block functionality.Improvements
env_protection
parameter for better environmental control.Bug Fixes
Tests
DescrptSeT
class across different deep learning frameworks.