-
Notifications
You must be signed in to change notification settings - Fork 80
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
Tensornet-q #353
base: main
Are you sure you want to change the base?
Tensornet-q #353
Conversation
…nn.module passed and use_cuda_graph=true
…into tn_add_extra_args
I added support for arbitrary extra properties in #289. My implementation was fully general, maintained perfect backward compatibility, and introduced them into the model in a way that works much better than what's currently done for |
Yes, I was also working on the inclusion of additional labels in PR #306, but this PR focuses on a simpler approach to ensure the reproducibility of a paper currently under revision. That said, if we aim for a more general solution or wish to incorporate your implementation, I’m completely open to it. |
The approach in #289 was used in https://doi.org/10.1021/acs.jctc.4c00794. I did that work with PhysicsML—without this feature, I can't implement my models in TorchMD-Net. I can tell you that based on extensive testing, that approach works much better than the one currently used for |
This PR introduces updates to enable TorchMD-Net to handle additional properties, collectively referred to as extra_args, such as charges, partial charges, or spin. The implementation allows models to utilize these extra_args, though currently, only TensorNet supports these additional labels. At this stage, only one property (charge, partial charges, or spin) can be used at a time. Future updates may expand support to handle combinations of multiple
extra_args
, potentially incorporating learnable parameters to optimize their integration.Main changes:
module.py
), model (model.py)
, and model architecture (tensornet.py
, etc.) ensuring backward compatibility by limiting changes to the forward pass.total_charge
andspin
in addition topartial_charges
.partial_charges
.extra_args
.extra_args.
test_calculator.py.