miniff issueshttps://gitlab.kwant-project.org/qt/miniff/-/issues2021-03-31T15:57:47Zhttps://gitlab.kwant-project.org/qt/miniff/-/issues/35CI downloads 800Mb of pytorch2021-03-31T15:57:47ZArtem PulkinCI downloads 800Mb of pytorchSee e.g. https://gitlab.kwant-project.org/qt/miniff/-/jobs/178727See e.g. https://gitlab.kwant-project.org/qt/miniff/-/jobs/178727https://gitlab.kwant-project.org/qt/miniff/-/issues/34Add flake8 to CI to check code compliance with PEP8 coding style2021-03-30T13:08:26ZNiket AgrawalAdd flake8 to CI to check code compliance with PEP8 coding styleDesired behavior is the following.
- Push to repository should be only successful if flake8 output does not complain.
- Merge request should be annotated with flake8 output, if any, upon submission, so that the contributor(s) can take no...Desired behavior is the following.
- Push to repository should be only successful if flake8 output does not complain.
- Merge request should be annotated with flake8 output, if any, upon submission, so that the contributor(s) can take notice and make necessary changes in case they didn't do that already.
Additionally, developers can use [pylint](http://pylint.pycqa.org/en/latest/) to identify code smells during development on their local environments.https://gitlab.kwant-project.org/qt/miniff/-/issues/33Display docs build status on repository via Read the Docs badge2021-03-24T16:39:00ZNiket AgrawalDisplay docs build status on repository via Read the Docs badgeThe documentation is built by Read the Docs upon each push to the master branch, but the final status is not indicated. This can be done by copying the docs passed/failed status badge URL from the project's read the docs account. More in...The documentation is built by Read the Docs upon each push to the master branch, but the final status is not indicated. This can be done by copying the docs passed/failed status badge URL from the project's read the docs account. More info [here](https://docs.readthedocs.io/en/stable/badges.html)https://gitlab.kwant-project.org/qt/miniff/-/issues/29Upload miniff on conda-forge2021-03-22T14:52:23ZNiket AgrawalUpload miniff on conda-forgeUpload miniff on conda-forgeUpload miniff on conda-forgehttps://gitlab.kwant-project.org/qt/miniff/-/issues/26Package name2021-02-15T11:03:37ZArtem PulkinPackage nameConsider changing the package name. Originally, `miniff` stands for a minimal implementation of force fields.
Current name positives:
- quite unique (we need a unique name for publishing)
- short enough (fewer typo possibilities)
negat...Consider changing the package name. Originally, `miniff` stands for a minimal implementation of force fields.
Current name positives:
- quite unique (we need a unique name for publishing)
- short enough (fewer typo possibilities)
negatives:
- does not represent the package: no reference to neural-network potentials
- not so easy to pronounce (transcription is a lot longer than the word itself)
This has to be closed before publishing the package.Artem PulkinArtem Pulkinhttps://gitlab.kwant-project.org/qt/miniff/-/issues/21Baking (compiling) fast efficient functions during runtime2021-01-25T11:31:30ZArtem PulkinBaking (compiling) fast efficient functions during runtimeCurrently, bottleneck "potential" functions are compiled at the build time as a separate `_potentials` library. This may not be the optimal choice for those users who are willing to define their own potentials. Currently, they will have ...Currently, bottleneck "potential" functions are compiled at the build time as a separate `_potentials` library. This may not be the optimal choice for those users who are willing to define their own potentials. Currently, they will have to modify package sources and to re-compile it. Another option is to implement compiling during runtime taking simple potential expressions as the input and producing fast library functions as the output.
Function stub example:
```python
def build_potential(expression: str, inputs: Iterable, type: str, openmp: bool=True) -> Callable:
"""
Builds a potential or its gradient with the given expression.
Args:
expression: numerical formula of the potential in python formatting;
inputs: adjustable parameters of the potential;
type: the type of the potential ('potential-2-g' for example);
openmp: if True, makes a parallel function compiled against OpenMP;
Returns:
A function implementing this potential.
"""
# Assemble sources, compile and import the function
```https://gitlab.kwant-project.org/qt/miniff/-/issues/15Tutorials2021-05-25T13:27:41ZArtem PulkinTutorialsWe are lacking tutorials and we are working on designing them.
**What do we need to cover?**
1. Introduce basic concepts
1. function fitting: the most abstract view on the problem and the implemented solution.
Tutorials: `f...We are lacking tutorials and we are working on designing them.
**What do we need to cover?**
1. Introduce basic concepts
1. function fitting: the most abstract view on the problem and the implemented solution.
Tutorials: `fitting_1d_function.rst`.
2. neural networks: how do they enter in function fitting
3. atomic structure and classical potentials: what are atomic coordinates, energy functionals, forces, stress, boundary conditions and more
`intro.rst`
4. descriptors: what is their meaning
Tutorials: `computing_descriptors.rst`.
2. High-level usage of the package
1. data organization: what data pieces do we need and where do they go
2. fetching atomic structure data: how to collect coordinates and energies
3. normalization: demonstrate possible approaches
4. energy gradients: how they assist in fitting
5. beyond: charges, partial energies, Hamiltonian matrix elements: what can we fit beyond energies and how it is done
6. fitting and testing: example
7. using the obtained fit: how individual coordinates are turned into descriptors, propagated and differentiated for energy gradients
3. Low-level usage of the package
1. code organization: how the code is structured, what belong to where and how individual modules are related
2. potentials and cython: how to implement your own potential/descriptor
**How the above is presented?**
Tutorials will be a part of the documentation.Artem PulkinArtem Pulkinhttps://gitlab.kwant-project.org/qt/miniff/-/issues/4Publish in package indexes2020-12-14T12:41:46ZArtem PulkinPublish in package indexesSubj.Subj.