Skip to content

Anselmoo/TanabeSugano

Repository files navigation

๐Ÿ”ฌ TanabeSugano

A Python-based Eigensolver for Tanabe-Sugano & Energy-Correlation Diagrams

Interactive visualization of d-orbital splitting in transition metal complexes


๐Ÿ“Š Build & Quality

Python Package CodeFactor uv

๐Ÿ“ฆ Package Info

PyPI PyPI - Python Version Downloads GitHub release (latest by date including pre-releases)

๐Ÿ“š Resources

DOI GitHub Open In Colab


๐Ÿš€ Quick Start โ€ข โœจ Features โ€ข ๐Ÿ“– Documentation โ€ข ๐ŸŽจ Examples โ€ข ๐Ÿค Contributing


๐Ÿ“‹ Table of Contents


๐ŸŒŸ Overview

TanabeSugano is a comprehensive Python package for calculating and visualizing Tanabe-Sugano and Energy-Correlation diagrams for d2-d8 transition metal ions. Based on the pioneering work of Yukito Tanabe and Satoru Sugano, this tool provides both computational accuracy and interactive visualization capabilities.

Why TanabeSugano?

  • ๐ŸŽฏ Accurate Calculations - Based on rigorous quantum mechanical principles
  • ๐Ÿ“Š Beautiful Visualizations - Generate publication-quality diagrams
  • ๐Ÿ”„ Interactive Exploration - Explore diagrams with Plotly integration
  • ๐Ÿš€ Easy to Use - Simple CLI and Python API
  • ๐Ÿ“ฑ Cloud-Ready - Run in Google Colab or locally

๐Ÿš€ Quick Start

Installation

Choose your preferred installation method:

# ๐Ÿ“ฆ Install from PyPI (recommended)
pip install TanabeSugano

# ๐Ÿ”ง Install with interactive plotting support
pip install TanabeSugano[plotly]

# ๐ŸŒ Install from GitHub (latest development version)
pip install git+https://github.com/Anselmoo/TanabeSugano.git

Basic Usage

Generate a Tanabe-Sugano diagram in seconds:

# Generate diagram for d6 configuration
tanabesugano -d 6

# Customize parameters
tanabesugano -d 6 -Dq 8000 -B 860 1.0 -C 3850 1.0

๐ŸŽฎ Try it now: Open In Colab


โœจ Features

๐Ÿ“Š Visualization

  • Static Plots via Matplotlib
  • Interactive Diagrams via Plotly
  • Export Formats: PNG, HTML, TXT
  • Publication-Ready output quality

โš™๏ธ Calculations

  • Eigen-Energies for all term symbols
  • Customizable Parameters: B, C ratios
  • Slater-Condon Parameters: Fยฒ, Fโด
  • Crystal Field Splitting: 10Dq control

๐ŸŽฏ Supported Systems

  • dยฒ through dโธ configurations
  • Octahedral complexes
  • Atomic term symbols
  • Energy correlations

๐Ÿ“ค Export Options

  • Tables via PrettyTable
  • Diagrams as images or HTML
  • Data as text files
  • Interactive HTML exports

๐Ÿ“– Usage

Command Line Interface

๐Ÿ”ง View all CLI options
tanabesugano --help

usage: __main__.py [-h] [-d D] [-Dq DQ] [-cut CUT] [-B B B] [-C C C] [-n N]
               [-ndisp] [-ntxt] [-slater]

optional arguments:
  -h, --help     show this help message and exit
  -d D           Number of unpaired electrons (default d5)
  -Dq DQ         10Dq crystal field splitting (default 10Dq = 8065 cm-)
  -cut CUT       10Dq crystal field splitting (default 10Dq = 8065 cm-)
  -B B B         Racah Parameter B and the corresponding reduction (default B = 860 cm- * 1.)
  -C C C         Racah Parameter C and the corresponding reduction (default C = 4.477*860 cm- * 1.)
  -n N           Number of roots (default nroots = 500)
  -ndisp         Plot TS-diagram (default = on)
  -ntxt          Save TS-diagram and dd energies (default = on)
  -slater        Using Slater-Condon F2,F4 parameter instead Racah-Parameter B,C (default = off)
  -v, --version  Print version number and exit
  -html          Save TS-diagram and dd energies (default = on)

Python API

from tanabesugano import TanabeSugano

# Create a d6 configuration
ts = TanabeSugano(d=6, Dq=8065, B=860, C=3850)

# Generate and display diagram
ts.plot()

# Export to HTML for interactive use
ts.export_html('d6_diagram.html')

๐ŸŽจ Examples

Static Matplotlib Plot

High-quality diagram for d6 configuration with B = 860 cmโปยน and C = 3850 cmโปยน:

Tanabe-Sugano Diagram for d6

Figure: Tanabe-Sugano diagram showing energy levels as a function of crystal field strength

Interactive Plotly Visualization

Interactive diagram for d6 with Slater-Condon parameters Fยฒ = 1065 cmโปยน and Fโด = 5120 cmโปยน:

Interactive Tanabe-Sugano Diagram

Figure: Interactive diagram with hover tooltips and zoom capabilities


๐ŸŒ Interactive Diagrams

โœจ NEW: Explore all Tanabe-Sugano diagrams online!

All diagrams (dยฒ through dโธ) are now available on our interactive GitHub Pages site with full Plotly integration:

No installation required - just click and explore!


๐Ÿ“š Scientific Background

This implementation is based on the seminal work of Yukito Tanabe and Satoru Sugano:

๐Ÿ“„ Original Publications

๐Ÿ“– Paper I: Absorption Spectra of Complex Ions

Authors: Yukito Tanabe, Satoru Sugano
Journal: Journal of the Physical Society of Japan, Vol. 9, pp. 753-766 (1954)
DOI: 10.1143/JPSJ.9.753
Link: https://journals.jps.jp/doi/10.1143/JPSJ.9.753

๐Ÿ“– Paper II: Absorption Spectra of Complex Ions

Authors: Yukito Tanabe, Satoru Sugano
Journal: Journal of the Physical Society of Japan, Vol. 9, pp. 766-779 (1954)
DOI: 10.1143/JPSJ.9.766
Link: https://journals.jps.jp/doi/10.1143/JPSJ.9.766

๐Ÿ“– Paper III: Calculation of Crystalline Field Strength

Authors: Yukito Tanabe, Satoru Sugano
Journal: Journal of the Physical Society of Japan, Vol. 11, pp. 864-877 (1956)
DOI: 10.1143/JPSJ.11.864
Link: https://journals.jps.jp/doi/10.1143/JPSJ.11.864


๐Ÿค Contributing

We welcome contributions! Whether you're fixing bugs, adding features, or improving documentation, your help is appreciated.

  • ๐Ÿ“– Read our Contributing Guide
  • ๐Ÿ› Report issues on GitHub Issues
  • ๐Ÿ’ก Suggest features or improvements
  • ๐Ÿ”ง Submit pull requests

๐Ÿ“ Citation

If you use TanabeSugano in your research, please cite:

@software{tanabesugano,
  author       = {Anselm Hahn},
  title        = {TanabeSugano: Python-based Eigensolver for Tanabe-Sugano Diagrams},
  year         = {2024},
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.206847682},
  url          = {https://github.com/Anselmoo/TanabeSugano}
}

DOI


๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with โค๏ธ for the scientific community

โญ Star us on GitHub โ€” it helps!

Report Bug ยท Request Feature ยท Discussions