Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Added the m1n1_compression option as an option for averaging (this corresponds to mu=1 nu=1 compression from Darby et al.) to the soap descriptor. Added the necessary modifications to the SOAP python wrapper and to ext under soapGeneral and soapGTO. Performed an initial test by generating features for the QM9 dataset using either a polynomial or GTO basis with successful results. updated test_soap.py under tests with tests specific for this averaging option. All tests pass except the numerical derivative test, which fails because the new averaging optino is not implemented in assert_derivatives. Will fix this shortly.... * Updated descriptor.cpp to ensure number of features is calculated correctly when using m1n1 compression. Finished updates to tests. All tests now run successfully. * m1n1_compression was originally implemented as an alternative form of averaging, but this is likely to confuse the end user. To correct this problem, we have now modified soap.py so that the end user can supply two additional arguments to the class constructor: 'compression', which may be one of 'off', 'agnostic' or 'm1n1', and 'species_weights', which if supplied must be a dict containing the same elements as the species. The extension code has been updated to implement these alternatives. The code compiles correctly but tests have not been conducted. Next step: update and run unit tests. * Fixed bugs in m1n1 and agnostic compression; numerical derivatives now calculate correctly with and without averaging. Parallellization test now fails however; fix this next. * Fixed parallellization issue (caused by typo in average setting in descriptor_local.py). Updated polynomial basis code for agnostic compression. Added species weighting to unit tests. Updated all unit tests to include m1n1 compression and numerical derivatives for compression w/ and w/out averaging. All unit tests pass successfully. * Ran linter, updated docs. * Removed a .swp file. * Updated SOAP descriptor to take compression dict as input. Removed crossover argument since it is now part of the compression dict. Removed species weighting argument since it is now part of the compression dict. Updated extension and test code to follow this new format. Tests passed successfully. * Ran linter, updated docs. * Revised nomenclature for compression so that 'agnostic' is now 'mu2' and 'm1n1' is now 'mu1nu1'. Re-ran tests, tests pass successfully. Updated docs. * Fixed conflicts with main. In particular, changed nomenclature for rcut, nmax and lmax in soap.cpp and soap.h; changed test_exceptions in test_soap; updated objects.inv and searchindex in docs. * Ran linter, resulting in reformatting for 1 file.
- Loading branch information