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

ACE1 Software Paper #97

Closed
cortner opened this issue Jan 21, 2023 · 7 comments
Closed

ACE1 Software Paper #97

cortner opened this issue Jan 21, 2023 · 7 comments

Comments

@cortner
Copy link
Member

cortner commented Jan 21, 2023

This is a META-issue collecting what are the key priorities to complete for the publication of the software paper. I will start filling in details here and ask everybody I CC to closely follow discussions here. If there are specific issues on your mind that you'd like included here, it may be better to discuss on Slack and post below only when a discussion has settled and there is a clear TODO item. I will keep editing this post with updates.

  1. Paper writing

  2. Documentation

  3. Names of user-facing functions and parameters

  4. Tutorials

  5. Default Heuristics

  6. Code Code and Performance

CC @tjjarvinen @WillBaldwin0 @gelzinyte @wcwitt @casv2

@cortner
Copy link
Member Author

cortner commented Jan 21, 2023

0. Paper

  • Write appendix that sketches out fast evaluation with reference to new kernel. (CO)
  • Fix how we present the code / pseudocode
  • JSON interface

1. Documentation

  • rewrite "intro to ACE models" once the manuscript is done and base it on that. -> moved to another issue
  • need a page in the docs on how to prepare data to work with ACE1pack Documentation on Preparing Data #95 -> moved to another issue
  • The ASE and LAMMMPs tutorials should be extended and self-contained.
  • liberally add links into the documentation, e.g. every time we mention ACE1 or ACE1pack etc.

@cortner
Copy link
Member Author

cortner commented Jan 21, 2023

2. Names of user-facing functions and parameters

  • should the default key for forces be "forces" instead of "force"? @wcwitt. WCW edit: @gelzinyte and I made this change.
  • The smoothness prior is at the moment impossible to construct for a user, we should introduce the function smoothness_prior, already done for the ACE1Model in WIP: New Affine Model Interface  #92 , but should also introduce this for the ACE basis and the combined basis; done in ACE1pack, TODO move it to ACE1? Elena edit: Also rename ACE1pack's regularizer.laplacian_regularizer to be consistent with ACE1Model.
  • Closely related to the previous item: should the prior be passed to the solver or should it be passed to acefit!?
  • Consider Elena's suggestions for clearer keyword argument, maxdeg2, rcut2; cf Verbose parameter names for acemodel #99
  • ACEfit Bayesian solver names and default parameters; Clarify naming of Bayesian solvers ACEfit.jl#41
  • P vs Gamma for the regulariser. Probably P for prior, but let's please never call it a preconditioner again
  • species -> elements (requested by Gabor)
  • N -> bodyorder or should it be order? (requested by Gabor)

@cortner
Copy link
Member Author

cortner commented Jan 21, 2023

3. Tutorials

  • Fix the output of ACE1pack.linear_errors; cf. Redesign linear_errors #98
  • what is the default solver and default solver parameters that we should use in the tutorials? @wcwitt
  • need expanded examples (for dummies!) for ASE and LAMMPs usage, Working Examples for ASE and LAMMPS #94 ; those tutorials should be fully self-contained and need to be revised (broken links etc...)
  • add a tutorial on running a simple MD simulation with Molly.jl

@cortner
Copy link
Member Author

cortner commented Jan 21, 2023

4. Default Heuristics

  • add multi-degree and wL choices to the acebasis and acemodel interfaces - CO, done for ACE1.jl, todo for ACE1pack.jl cf WIP: Backporting simplified multi-degree interface #104
  • When using BLR then the solver should automagically generate a committee and attach it to the potential. Or, alternatively, this can be done in acefit! instead of BLR? What's the right approach? cf BLR and Committees #106
  • BLR should be the default solver and if no solver is specified it should work reasonably well with default parameters. To be tested on a few benchmarks?
  • maxdeg_pair = maxdeg; i.e. hide the 2-body from the user until they dig deeper into the documentation

@cortner
Copy link
Member Author

cortner commented Jan 21, 2023

5. Core Code and Performance

  • CI needs to be fixed
  • consider moving to new kernels asap
  • Make ACE1 potentials compatible with Molly.jl - cc @tjjarvinen
  • Add unit test for acemodel (- EG edit)

Random stuff

  • export smoothness_prior

@wcwitt wcwitt pinned this issue Jan 24, 2023
@wcwitt
Copy link
Collaborator

wcwitt commented Jan 24, 2023

Thanks for this.

@cortner
Copy link
Member Author

cortner commented Jan 24, 2023

I see you edited your message. I guess it's ok to discuss here as well, but let's make sure all ACTUAL action points remain in the posts above.

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

No branches or pull requests

2 participants