Implementation of an impurity solver for the Hubbard model.
- lapack
- blas
- pfapack or gfortran
You can choose your implementation for blas, I use intel-mkl. Simply modify the Cargo.toml
for your preference.
To build, simply
cargo build -r
To run the main script,
cargo run -r
To run the tests, this includes unit tests, tests inside the tests directory and the exemple in the documentation, run
cargo test
Speed micro-benchmarks are implemented in the benches directory. To see if an implementation improved or regressed, you need to run both implementation with
cargo bench
To implement a new micro-bench, simply add a new benchmark in the appropriate
file in the benches/benchmarks
directory, then add the function to the
benchmark main.
See my Trello.
Commit messages follow the angular convention. Must be one of the following:
- build: Changes that affect the build system or external dependencies
- ci: Changes to our CI configuration files and scripts
- docs: Documentation only changes
- feat: A new feature
- fix: A bug fix
- perf: A code change that improves performance
- refactor: A code change that neither fixes a bug nor adds a feature
- style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
- test: Adding missing tests or correcting existing tests The scope is ommited.