high-throughput-lmto
This package automates the TB-LMTO-ASA program for high-throughput calculations
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.2%) to scientific vocabulary
Repository
This package automates the TB-LMTO-ASA program for high-throughput calculations
Basic Info
Statistics
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
High-throughput LMTO
This is a package to automate the steps involved in performing LMTO calculations. The code will take a list of .cif files as input and for each structure in the list, an LMTO calculation will be performed including optimization, band structure calculation, and density of states calculation (DOS). The outputs from band structure, DOS, and COHP calculations are saved as comma-separated (.csv) files their plots are saved as png files.
Outputs can be visualized using the following plotter package.
The current README.md serves as a tutorial and documentation - last update June 20, 2025
Demo

Getting started
Here is a quick tutorial on how to locally install the package.
How to install htlmto locally
cd into the project directory:
bash
cd High-throughput-LMTO
Create and activate a new conda environment:
bash
conda create -n lmto_env python=3.13
conda activate lmto_env
Install your package with dependencies sourced from pip
The package requires TB-LMTO program installed and its path added to the system's PATH variable.
It's simple. The only command required is the following:
bash
pip install -e .
Install TB-LMTO-ASA and htlmto via docker container
If you have the lmto source code (not shared in this repository) and want to setup a docker container, you may use the provided docker file.
Note: This setup works on x86_64 and known to fail in systems with Apple Silicon.
To setup the docker container,
- Install docker, if you haven't already
- Clone or download this repository
- In a terminal window,
cdintoHigh-throughput-LMTO - Copy the TB-LMTO-ASA source code (in
.tar.gzarchive format) and rename it assource.tar.gz - Type
docker build -t YOUR_CONTAINER_NAME . - To share files between your host (the computer where container is installed) and the container, make a directory
- To launch the container with file sharing, type
docker run --user lmto --cpus=2.0 -it --mount type=bind,source=/path/to/directory_created_in_step_6,target=/home/lmto/lmto_calculations YOUR_CONTAINER_NAME - (Optional) create an alias (
alias lmto="docker run --user lmto --cpus=2.0 -it --mount type=bind,source=/path/to/directory_created_in_step_6,target=/home/lmto/lmto_calculations YOUR_CONTAINER_NAME") in your.bashrcor.bash_profilefile to launch the container.
Verify your package has been installed
Verify the installation:
bash
pip list
Run
To get help, type
``` htlmto -h
usage: htlmto [-h] [-n ] [--force-O2] input_path
A High Throughput LMTO Calculator.
This code automates the LMTO calculations using TB-LMTO program.
positional arguments: input_path Path to the input file / folder
options: -h, --help show this help message and exit -n, --num-cores Number of CPU cores to use. Default is 2. --force-O2 Force origin choice 2
```
To run, type
htlmto my_structure.cif
or
htlmto my_directory_with_multiple_cifs
Origin Choice
The origin choice can be changed by either editing the cif
change _space_group_name_H-M_alt 'F d -3 m' to _space_group_name_H-M_alt 'F d -3 m (origin choice 2)'
or use the --force-O2 flag (this does not change the basis).
What htlmto does?
It performs the following steps:
- Write the INIT file and run lminit.run to initialize CTRL and CBAK files.
- Run lmhart.run and get the VOLSPHbyVOL
- If VOLSPHbyVOL less than 100.0, then run lmes.run and lmovl.run iteratively. At each iteration check the output of lmovl.run for errors, get recommended changes (for RMAXS and OMMAX) based on the messages in the output file, and modify parameters in the CTRL file accordingly.
- Run lmstr.run, check for recommended action in the output file if the run failed. Make the changes (for RMAXS and OMMAX) in CTRL file and run iteratively until lmstr.run finishes without errors.
- Run lm.run until it converges.
- Modify the number of KPOINTS (currently doubles) and optimize.
- Perform band structure calculation.
- Perform DOS calculation and extract total DOS and partial DOS for each element in the system.
- Perform COHP calculation using interaction distances calculated using coordination environments and save element-element interactions.
- Make plots for DOS, COHP, and band structure.
For Hf, Lanthanides, and Actinides
- All lanthanides are substituted with La and their 4f orbitals are downfolded.
- All actinides are substituted with Th and and their 5f orbitals are downfolded.
- Hf is replaced with Zr.
Contributors
- Balaranjan Selvaratnam
- Anton Oliynyk
- Emil Jaffal
- Sangjoon Bob Lee
How to ask for help
- If you have any issues or questions, please feel free to reach out or leave an issue.
Owner
- Name: Balaranjan Selvaratnam
- Login: balaranjan
- Kind: user
- Repositories: 1
- Profile: https://github.com/balaranjan
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: High throughput LMTO
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Balaranjan
family-names: Selvaratnam
affiliation: City University of New York
- given-names: Emil
family-names: Jaffal
affiliation: City University of New York
- given-names: Anton
family-names: Oliynyk
affiliation: City University of New York
identifiers:
- type: url
value: "https://github.com/balaranjan/High-throughput-LMTO"
repository-code: "https://github.com/balaranjan/High-throughput-LMTO"
license: MIT
GitHub Events
Total
- Create event: 3
- Issues event: 7
- Watch event: 4
- Delete event: 4
- Issue comment event: 5
- Member event: 1
- Public event: 1
- Push event: 62
- Pull request event: 24
- Fork event: 1
Last Year
- Create event: 3
- Issues event: 7
- Watch event: 4
- Delete event: 4
- Issue comment event: 5
- Member event: 1
- Public event: 1
- Push event: 62
- Pull request event: 24
- Fork event: 1