Scientific computing
Scientific computing for atomistic tight binding and NEGF |
Ben Haley |
Objective:
- Implement atomistic strain calculation for nanowires and quantum dots in OMEN
- Increase speed of matrix construction for recomputed Hamiltonian in NEMO 3D
- Track memory usage in OMEN
- Develop scripting interfaces for OMEN
Approach:
- Serial (1D decomposition) and parallel (3D decomposition) Valence Force Field calculation using C++ in OMEN
- Explicitly unroll loops over orbitals in NEMO 3D matrix element calculation
- Implement memory allocation in OMEN using the NEMO Math Library
- Develop a new language, OWL, for OMEN scripting, as well as Python, Tcl, and Ruby bindings for OMEN
|
Impacts and Results:
- Correctly handling atomic displacements allows for truly realistic simulations of both nanowires and quantum dots
- Explicit Hamiltonian construction increased the speed of NEMO 3D recompute calculations by a factor of five
- Identifying memory usage bottlenecks in OMEN leads to streamlined and optimized performance
- Top level scripts in OWL, Python, Ruby, and Tcl allow specific modules of OMEN to run and interact with other programs
- The changes to the OMEN code base for the scripting interfaces allow for the development of a material database, which can be called from OMEN or any other code which needs material properties.
|
Powerpoint slide as ppt, pdf, or as image below.