- Fix various input parsing bugs related to the distributed jobs
- Add formal Python 3.12 support
- Update C++ dependencies in the prebuilt wheels
- Migrate from setup.cfg to pyproject.toml
- Fix
cell_angles
being unable to acceptNone
- Remove references to a removed function in the IDOS workflow
- Add MacOS arm64 wheels.
- Move the C++ python bindings to a dedicated file.
- Drop support for Python 3.7.
- Use dataclasses internally for storing nano-qmflows settings.
- Add formal Python 3.11 support
- Fix the minimum macosx version of vendored libraries.
- Replace
pybind11
as a build dependency withnumpy
. - Generate ABI3 wheels.
- Remove
cython
leftovers. - Add minimum versions to most dependencies.
- Always compile with C++11 as we don't use any newer features.
- Bump the minimum qmflows version to >= 1.12.1.
- Increase the SCF convergence in the (non-guess) templates from 5e-04 to 1e-06.
- Fix the ill-defined active space for unrestricted calculations.
- Add MacOS x86_64 and Linux aarch64 wheels.
- Automatically build and upload manylinux2014 wheels when creating a release.
- Allow for the use of basis sets consisting of multiple exponent sets.
- Bump the minimum QMFlows version to >= 0.12.0.
- Change the
basisFormat
hdf5 attribute from a string into an integer array. - Move the
compute_integrals
extension module tonanoqm.compute_integrals
. - Move all
print
calls to the nanoqm logger.
- Do not hard code basis set names for compution of the HOMO index.
- Do not overwrite explicit
basis_set_file_name
andpotential_file_name
CP2K settings. - Add the
basis_file_name
andpotential_file_name
options. - Do not hard-code the
BASIS_MOLOPT
coefficients in the .hdf5 file. - Always use the
-q
suffix when reading basis sets from .hdf5. - Add settings for manual choice of XC functionals for GGA, MGGA and hybrids.
- Remove the upper version bound of noodles.
- Formally set the minimum python version to >= 3.7.
- Only distribute source files on pypi.
- Fixed a number of pypi classifiers.
- Support Python 3.9 and 3.10
- Allow to compute the spectrum of multiple stack geometries (324)
- Check for duplicate keys when loading .yaml files.
- Make cell parameters optional.
- Various fixes.
- Print CP2K err/out files if the calculation fails (#150)
- HDF5 storage layout (#300)
- Allow to compute both alphas/betas derivative couplings simultaneusly (#275)
- Allow to compute mutipole matrices for unrestricted calculation (#297, #299)
- Do not remove the CP2K log files by default
- Do not remove the point folder wher ethe CP2K orbitals are stored
- Unrestricted Hamiltitonians name (#286)
- Hamiltonian units (#290)
- Schema error (#292)
- Distribute Slurm to retrieve Hamiltonians (#296)
- Template to create B3LYP computations (#269)
- Add support for derivative couplings for system with more than one spin state (#275)
- Distribution error (#272)
- Molecular orbital error in qmflows (#270)
- Multivalue settings issue (#260)
- CP2K executable (#264)
- Keywords to print eigenvalues and eigenvectors (#248)
- SLURM free-format specification (#245)
- Touch HDF5 file if it doesn't exist (#246)
- Create a separate folder for each distributed chunk (#247)
- Error creating the scratch path and the HDF5 file (#255)
- Rename package to nano-qmflows
- Add the global run_type keyword in the templates
- Replace
qmflows.utils
with more-itertools
- smiles_calculator script to compute molecular properties from smiles.
- Use f-strings
- Clean C++ interface to libint
- Unused code to compile the C++ interface to libint
- Passed to libint2 the Cartesian coordinates in Angstrom instead atomic units.
- Allow to compute charge molecules in the C2Pk input.
- Compute the multipole integrals in the center of mass.
- A new variable called
aux_fix
has been introduced to change the quality of the auxiliar basis set for hybrid calculation. The possible values are: "low", "medium", "good", "verygood" and "excellent". The default value is: verygood. - Return a
input_parameters.yml
file containing the input after all the preprocessing steps.
- The
path_basis
variable in the yaml input, points to the folder where all the CP2K basis are located. By Default this variable points to /nac/basis where there are some default basis.
- The
path_potential
variable has been removed since it is superseded by thepath_basis
.
- Compute the overlap integrals to calculate the derivative coupling and the multipole integrals using libint2
- Used
openmp
to compute the integrals in all the available cores - New dependencies: eigen, highfive, libint2 and pybind11
- Python/Cython implementation of the overlap integrals
- Unused functionality replaced by libint2
-
The user only need to provide an active_space and both the
mo_index_range
andnHOMO
keywords are computed automatically. -
Added fast test to compute the couplings
-
Removed all the Fourier transform for orbitals.
-
Removed unused electron transfer functionality.
-
The
nHOMO
and thekinds
for the CP2K input are computed using the valence_electrons from the basis/pseudpotential combination. -
Use a configuration dictionary to around the initial input instead of many arguments functions.
-
Import only the most important functions.
- Removed all the MPI unused functionality
- Refactor the distribute_jobs.py script to split the derivative coupling calculations.
- removed
workflow_oscillator_strength
. Useworkflow_stddft
instead
- Moved
nHomo
keyword togeneral_setting
- Renamed the
ci_range
keyword and replaced it by the CP2K keywordmo_index_range
- Templates to call functionals pbe and pbe0 to compute the Molecular orbitals
- Replace the
json schemas
with the schemas library
The following actions were performed:
- Removed nose and pandas dependencies
- Use pytest for testing
- Replace MIT license by Apache-2.0
- Allow only fast tests in Travis
- Added changelog
- made general mergeHDF5 script
- Added Runners: MPI and Multiprocessing(default)
- Introduce new input file (yaml)
- Validate input files with json schemas
- Refactor the workflow API
- Used noodles==0.3.1 and qmflows==0.3.0
- Dead code from
workflow_cube