{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Kinect Monte Carlo Simulations Using LAMMPS" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Requirements\n", "* You will need to install **VOTCA** using the instructions described [here](https://github.com/votca/votca/blob/master/share/sphinx/INSTALL.rst)\n", "* Once the installation is completed you need to activate the VOTCA enviroment by running the `VOTCARC.bash` script that has been installed at the `bin` subfolder for the path that you have provided for the installation step above" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Setting the environment" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will use [matplotlib](https://matplotlib.org/), [seaborn](https://seaborn.pydata.org/) and [pandas](https://pandas.pydata.org/) libraries for plotting. You can install it using [pip](https://pip.pypa.io/en/stable/) like" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:06.169879Z", "iopub.status.busy": "2024-04-28T13:09:06.169434Z", "iopub.status.idle": "2024-04-28T13:09:07.618005Z", "shell.execute_reply": "2024-04-28T13:09:07.617464Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: seaborn in /usr/lib/python3.12/site-packages (0.13.0)\r\n", "Requirement already satisfied: numpy!=1.24.0,>=1.20 in /usr/lib64/python3.12/site-packages (from seaborn) (1.24.4)\r\n", "Requirement already satisfied: pandas>=1.2 in /usr/lib64/python3.12/site-packages (from seaborn) (1.5.3)\r\n", "Requirement already satisfied: matplotlib!=3.6.1,>=3.3 in /usr/lib64/python3.12/site-packages (from seaborn) (3.8.4)\r\n", "Requirement already satisfied: contourpy>=1.0.1 in /usr/lib64/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (1.2.0)\r\n", "Requirement already satisfied: cycler>=0.10 in /usr/lib/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (0.11.0)\r\n", "Requirement already satisfied: fonttools>=4.22.0 in /usr/lib64/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (4.43.1)\r\n", "Requirement already satisfied: kiwisolver>=1.3.1 in /usr/lib64/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (1.4.5)\r\n", "Requirement already satisfied: packaging>=20.0 in /usr/lib/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (23.1)\r\n", "Requirement already satisfied: pillow>=8 in /usr/lib64/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (10.3.0)\r\n", "Requirement already satisfied: pyparsing>=2.3.1 in /usr/lib/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (3.0.9)\r\n", "Requirement already satisfied: python-dateutil>=2.7 in /usr/lib/python3.12/site-packages (from matplotlib!=3.6.1,>=3.3->seaborn) (2.8.2)\r\n", "Requirement already satisfied: pytz>=2020.1 in /usr/lib/python3.12/site-packages (from pandas>=1.2->seaborn) (2024.1)\r\n", "Requirement already satisfied: six>=1.5 in /usr/lib/python3.12/site-packages (from python-dateutil>=2.7->matplotlib!=3.6.1,>=3.3->seaborn) (1.16.0)\r\n" ] } ], "source": [ "!pip install seaborn --user" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Notes\n", "> * The `${VOTCASHARE}` environmental variable is set to the path that you provided during the VOTCA installation, by the default is set to `/usr/local/votca`.\n", "> * In Jupyter the `!` symbol means: *run the following command as a standard unix command*\n", "> * In Jupyter the command `%env` set an environmental variable" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Site energies and pair energy differences\n", "We will compute the histrogram using `resolution_sites` of 0.03 eV. See [eanalyze options and defaults](https://votca.github.io/xtp/eanalyze.html) for more information." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:07.621321Z", "iopub.status.busy": "2024-04-28T13:09:07.620803Z", "iopub.status.idle": "2024-04-28T13:09:08.692424Z", "shell.execute_reply": "2024-04-28T13:09:08.691844Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==================================================\r\n", "======== VOTCA (http://www.votca.org) ========\r\n", "==================================================\r\n", "\r\n", "please submit bugs to https://github.com/votca/votca/issues\r\n", "\r\n", "xtp_run, version 2024-dev gitid: 289203f (compiled Apr 28 2024, 13:06:47)\r\n", "\r\n", "Initializing calculator\r\n", "... eanalyze\r\n", "1 frames in statefile, Ids are: 10000 \r\n", "Starting at frame 10000\r\n", "Evaluating frame 10000\r\n", "Import MD Topology (i.e. frame 10000) from state.hdf5\r\n", ".... \r\n", "... eanalyze\r\n", " Using 1 threads\r\n", "... ... Short-listed 1000 segments (pattern='*')\r\n", "... ... ... NOTE Statistics of site energies and spatial correlations thereof are based on the short-listed segments only. \r\n", "... ... ... Statistics of site-energy differences operate on the full list.\r\n", "... ... excited state e\r\n", "... ... excited state h\r\n", "... ... excited state s\r\n", "... ... excited state t\r\n", "Changes have not been written to state file.\r\n" ] } ], "source": [ "!xtp_run -e eanalyze -c resolution_sites=0.03 -f state.hdf5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the current work directoy you can see the resulting files," ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:08.695497Z", "iopub.status.busy": "2024-04-28T13:09:08.695108Z", "iopub.status.idle": "2024-04-28T13:09:08.805966Z", "shell.execute_reply": "2024-04-28T13:09:08.805425Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "eanalyze.pairhist_e.out eanalyze.pairlist_s.out eanalyze.sitehist_e.out\r\n", "eanalyze.pairhist_h.out eanalyze.pairlist_t.out eanalyze.sitehist_h.out\r\n", "eanalyze.pairhist_s.out eanalyze.sitecorr_e.out eanalyze.sitehist_s.out\r\n", "eanalyze.pairhist_t.out eanalyze.sitecorr_h.out eanalyze.sitehist_t.out\r\n", "eanalyze.pairlist_e.out eanalyze.sitecorr_s.out\r\n", "eanalyze.pairlist_h.out eanalyze.sitecorr_t.out\r\n" ] } ], "source": [ "!ls eanalyze*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plotting the energies\n", "We will the previously installed `pandas` and `seaborn` library to plot the electron histrogram computed in the previous step," ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:08.808929Z", "iopub.status.busy": "2024-04-28T13:09:08.808459Z", "iopub.status.idle": "2024-04-28T13:09:09.941188Z", "shell.execute_reply": "2024-04-28T13:09:09.940433Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "<>:5: SyntaxWarning: invalid escape sequence '\\s'\n", "<>:5: SyntaxWarning: invalid escape sequence '\\s'\n", "/tmp/ipykernel_15157/2362228021.py:5: SyntaxWarning: invalid escape sequence '\\s'\n", " df = pd.read_table(\"eanalyze.pairhist_e.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2)\n", "/usr/lib/python3.12/site-packages/seaborn/axisgrid.py:854: FutureWarning: \n", "\n", "The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.\n", "\n", " func(*plot_args, **plot_kwargs)\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pandas as pd \n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "columns = [\"E(eV)\", \"counts\"] \n", "df = pd.read_table(\"eanalyze.pairhist_e.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2) \n", "sns.relplot(x=\"E(eV)\", y=\"counts\", ci=None, kind=\"line\", data=df) \n", "plt.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Couplings histrogram\n", "In this step we will analyze the electron/hole couplings, using the `ianalyze` calculator using the `resolution_logJ2` parameter of 0.1 units. See the [ianalyze options and defaults](https://votca.github.io/xtp/ianalyze.html) for more information about the calculator." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:09.944271Z", "iopub.status.busy": "2024-04-28T13:09:09.943777Z", "iopub.status.idle": "2024-04-28T13:09:10.899496Z", "shell.execute_reply": "2024-04-28T13:09:10.898853Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==================================================\r\n", "======== VOTCA (http://www.votca.org) ========\r\n", "==================================================\r\n", "\r\n", "please submit bugs to https://github.com/votca/votca/issues\r\n", "\r\n", "xtp_run, version 2024-dev gitid: 289203f (compiled Apr 28 2024, 13:06:47)\r\n", "\r\n", "Initializing calculator\r\n", "... ianalyze\r\n", "1 frames in statefile, Ids are: 10000 \r\n", "Starting at frame 10000\r\n", "Evaluating frame 10000\r\n", "Import MD Topology (i.e. frame 10000) from state.hdf5\r\n", ".... \r\n", "... ianalyze\r\n", " Using 1 threads\r\n", "Calculating for state e now.\r\n", "Calculating for state h now.\r\n", "Changes have not been written to state file.\r\n" ] } ], "source": [ "!xtp_run -e ianalyze -c resolution_logJ2=0.1 states=e,h -f state.hdf5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plotting the coupling histogram\n", "We can now plot the logarithm of the squared coupling for the hole," ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:10.902743Z", "iopub.status.busy": "2024-04-28T13:09:10.902215Z", "iopub.status.idle": "2024-04-28T13:09:11.112713Z", "shell.execute_reply": "2024-04-28T13:09:11.112027Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "<>:2: SyntaxWarning: invalid escape sequence '\\s'\n", "<>:2: SyntaxWarning: invalid escape sequence '\\s'\n", "/tmp/ipykernel_15157/886975016.py:2: SyntaxWarning: invalid escape sequence '\\s'\n", " df = pd.read_table(\"ianalyze.ihist_h.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2)\n", "/usr/lib/python3.12/site-packages/seaborn/axisgrid.py:854: FutureWarning: \n", "\n", "The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.\n", "\n", " func(*plot_args, **plot_kwargs)\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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AzVRDzdlyhTMmzcv3MMgohYwUBNRSK1YscJvm9uPP/4Y06dPR0ZGBhITEzFx4kR888034RsgUZRhoCaiLrV+/XpMnz4dX375JQoKCjB16lRcfvnl2LFjR7iHRhQVGKiJSFFdXY1bbrkFKSkpMBqNmDlzJg4dOuR3z5tvvom8vDwYjUb86le/wuLFi1s9KGbJkiV49NFHcdZZZyE/Px8LFy5Efn4+Pvvssy5+N0SxgYGaiBS33XYbtm3bhk8//RSbN2+GKIq49NJL4XA4AAAbN27E3Xffjfvvvx87d+7E9OnT2308qdvtRl1dHVJTU7viLRDFHB5zSUQAgEOHDuHTTz/Fxo0bMWnSJADA//t//w95eXn45JNPMHv2bCxduhQzZ87Eww8/DAAYPHgwNm3ahM8//zzon/PSSy+hoaEB11xzTZe8D6JYw4yaiAAA+/btg0ajwYQJE5RraWlpGDJkCPbt2wcAOHDgAM4++2y/5wV+35r33nsPCxYswAcffIDMzMzQDJwoxjGjJiIAQEsn3oqiCEEQmvy5recF+uCDDzBnzhz8+9//xrRp0zo3WKIehBk1EQEAhg8fDqfTif/+97/KtcrKShw8eBDDhg0DAAwdOhRbtmzxe962bdvafO333nsPt912G1auXInLLrsstAMninEM1EQEAMjPz8eVV16JO++8Exs2bMCuXbtw0003oVevXrjyyisBAPfddx++/PJLLF68GIcOHcLrr7+Or776qkmW7eu9997DLbfcgpdeegnnnHMOSktLUVpaitra2u56a0RRjYGaiBTLly/H+PHjMWvWLEycOBGiKOLLL7+EVqsFAJx77rl47bXXsHjxYowePRpff/01HnjgAej1euU13G43NBrvrNrrr78Op9OJe+65Bzk5OcrX/fff3+3vjygaCWKwE0xERM248847sX//fvz4448AgD//+c949913sXv37jCPjCg2sJmMiNrlr3/9K6ZPnw6TyYSvvvoKb7/9Nl555RVYLBbs378fy5cvx8yZM8M9TKKYwdI3EbXLli1bMH36dIwaNQqvvfYa/v73v+OOO+7AG2+8gWnTpmH06NF46qmnwj1MopjB0jcREVEEY0ZNREQUwRioiYiIIhgDNRERUQRjoCYiIopgDNREREQRjIGaiIgogjFQExERRTAGaiIiogjGQE1ERBTB/j+g3yQMm1EQrQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "columns = [\"logJ2\", \"counts\"] \n", "df = pd.read_table(\"ianalyze.ihist_h.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2) \n", "sns.relplot(x=\"logJ2\", y=\"counts\", ci=None, kind=\"line\", data=df) \n", "plt.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## KMC simulations of multiple holes or electrons in periodic boundary conditions\n", "Finally, lets do a 1000 seconds KMC simulation for the electron, with a 10 seconds window between output and a field of 10 *V/m* along the x-axis," ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2024-04-28T13:09:11.115446Z", "iopub.status.busy": "2024-04-28T13:09:11.115243Z", "iopub.status.idle": "2024-04-28T13:09:12.047474Z", "shell.execute_reply": "2024-04-28T13:09:12.046894Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==================================================\r\n", "======== VOTCA (http://www.votca.org) ========\r\n", "==================================================\r\n", "\r\n", "please submit bugs to https://github.com/votca/votca/issues\r\n", "\r\n", "xtp_run, version 2024-dev gitid: 289203f (compiled Apr 28 2024, 13:06:47)\r\n", "\r\n", "Initializing calculator\r\n", "... kmcmultiple\r\n", "1 frames in statefile, Ids are: 10000 \r\n", "Starting at frame 10000\r\n", "Evaluating frame 10000\r\n", "Import MD Topology (i.e. frame 10000) from state.hdf5\r\n", ".... \r\n", "... kmcmultiple\r\n", " Using 1 threads\r\n", " ... \r\n", "-----------------------------------\r\n", " KMC FOR MULTIPLE CHARGES\r\n", "-----------------------------------\r\n", "\r\n", " ... \r\n", "Calculating initial rates.\r\n", " ... Rate engine initialized:\r\n", " Ratetype:marcus\r\n", " Temperature T[k] = 300\r\n", " Electric field[V/nm](x,y,z) =1e-08 0 0 ||F|| 1e-08\r\n", "\r\n", " ... \r\n", " ... carriertype: electron\r\n", " ... Rates for 1000 sites are computed.\r\n", " ... \r\n", "Rates are written to rates.dat\r\n", " ... Nblist has 10151 pairs. Nodes contain 20302 jump events\r\n", "with avg=20.302 std=2.07913 max=28 min=14 jumps per site\r\n", "Minimum jumpdistance =0.366063 nm Maximum distance =1.10167 nm\r\n", "\r\n", " ... spatial carrier density: 0.00729374 nm^-3\r\n", " ... \r\n", "Algorithm: VSSM for Multiple Charges\r\n", " ... number of carriers: 1\r\n", " ... number of nodes: 1000\r\n", " ... stop condition: 1000 steps.\r\n", " ... output frequency: every 10 steps.\r\n", " ... (If you specify runtimes larger than 100 kmcmultiple assumes that you are specifying the number of steps for both runtime and outputtime.)\r\n", " ... Writing trajectory to trajectory.csv.\r\n", " ... looking for injectable nodes...\r\n", " ... starting position for charge 0: segment 697\r\n", " ... \r\n", "Occupations are written to occupation.dat\r\n", " ... \r\n", "finished KMC simulation after 1000 steps.\r\n", "simulated time 5.92255e-09 seconds.\r\n", "\r\n", " ... carrier 1: 1.205058e+08 5.671523e+07 1.959596e+07\r\n", " ... Overall average velocity (nm/s): 1.205058e+08 5.671523e+07 1.959596e+07\r\n", " ... \r\n", "Distances travelled (nm): \r\n", " ... carrier 1: 7.137019e-01 3.358990e-01 1.160581e-01\r\n", " ... \r\n", "Mobilities (nm^2/Vs): \r\n", " ... carrier 1: mu=1.205058e+16\r\n", " ... Overall average mobility in field direction =1.205058e+16 nm^2/Vs \r\n", " ... \r\n", "Eigenvalues:\r\n", " \r\n", " ... Eigenvalue: 2.670560e-09\r\n", " ... Eigenvector: 1.317081e-01 6.198754e-02 -9.893485e-01\r\n", "\r\n", " ... Eigenvalue: 2.670560e-09\r\n", " ... Eigenvector: 4.258378e-01 -9.047995e-01 0.000000e+00\r\n", "\r\n", " ... Eigenvalue: 5.366503e+07\r\n", " ... Eigenvector: -8.951621e-01 -4.213020e-01 -1.455661e-01\r\n", "Changes have not been written to state file.\r\n" ] } ], "source": [ "!xtp_run -e kmcmultiple -c runtime=1000 outputtime=10 field=10,0,0 carriertype=electron -f state.hdf5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can find both the *occupation data* and the *rates* for the electron at 300 K, on files `occupation.dat` and `rates.dat`, respectively." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.2" } }, "nbformat": 4, "nbformat_minor": 4 }