{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# useful to autoreload the module without restarting the kernel\n", "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from mppi import Parsers as P" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Tutorial for the YamboParser class" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This tutorial describes the usage of the YamboParser class that parse the o- file(s) produced by a yambo computation.\n", "\n", "The class is designed to deal with the list of files produced as the output key of the run method of YamboCalculator.\n", "\n", "Here we present some example:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "qp_output = ['YamboParser_test/qp_results/o-qp_test1.qp']" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "qp_output_extendOut = ['YamboCalculator_test/qp_test_ExtendOut/o-qp_test_ExtendOut.qp']" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "rt_output = ['YamboParser_test/rt_results/o-NETime_1000-dephase_0.01-freq_1.55-pol_circular.carriers',\n", " 'YamboParser_test/rt_results/o-NETime_1000-dephase_0.01-freq_1.55-pol_circular.spin_magnetization',\n", " 'YamboParser_test/rt_results/o-NETime_1000-dephase_0.01-freq_1.55-pol_circular.external_field',\n", " 'YamboParser_test/rt_results/o-NETime_1000-dephase_0.01-freq_1.55-pol_circular.polarization']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When the list of files is passed to the parser the extendOut option used to run the computation has to be provided,\n", "otherwise the parser could perform a wrong assignement of the names of the variables. " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "results = P.YamboParser(files=qp_output,extendOut=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "results is a dictionary with the structure" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'qp': {'kpoint': array([1., 1., 1., 1., 1., 1., 1., 1., 2., 2., 2., 2., 2., 2., 2., 2.]),\n", " 'band': array([1., 2., 3., 4., 5., 6., 7., 8., 1., 2., 3., 4., 5., 6., 7., 8.]),\n", " 'e0': array([-1.190291e+01, -1.176000e-05, -1.176000e-05, 0.000000e+00,\n", " 2.551225e+00, 2.551230e+00, 2.551230e+00, 3.152071e+00,\n", " -1.110872e+01, -3.914389e+00, -7.552550e-01, -7.552460e-01,\n", " 1.962407e+00, 3.490390e+00, 3.490396e+00, 6.757975e+00]),\n", " 'eme0': array([-1.50691 , 0.7861 , 0.7914 , 0.7771 , 1.884047, 1.907533,\n", " 1.906476, 2.349819, -1.21027 , 0.216875, 0.676644, 0.653277,\n", " 1.799721, 2.065016, 2.084261, 2.726886]),\n", " 'sce0': array([ 4.48108 , 2.194 , 2.201 , 2.184061, -2.137494, -2.110904,\n", " -2.112035, -2.203245, 4.52994 , 2.934759, 2.263484, 2.236098,\n", " -2.186759, -2.20382 , -2.182057, -2.267519])}}" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For several usage it can be useful to access to the results with the object.attribute sintax. \n", "\n", "In this case it is possible to use the AttributeDict class the perform this conversion" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "from mppi import Utilities as U" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "obj = U.AttributeDict(**results)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "and we can access as" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-1.190291e+01, -1.176000e-05, -1.176000e-05, 0.000000e+00,\n", " 2.551225e+00, 2.551230e+00, 2.551230e+00, 3.152071e+00,\n", " -1.110872e+01, -3.914389e+00, -7.552550e-01, -7.552460e-01,\n", " 1.962407e+00, 3.490390e+00, 3.490396e+00, 6.757975e+00])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "obj.qp.e0" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Test of a parsing with extendOut = True" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "results = P.YamboParser(files=qp_output_extendOut,extendOut=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "now all the variables are available, for instance" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.7587, 0.8448, 0.8449, 0.8443, 0.8378, 0.8386, 0.8387, 0.8421,\n", " 0.8305, 0.8306, 0.8149, 0.8152, 0.7562, 0.828 , 0.8421, 0.8417,\n", " 0.8403, 0.836 , 0.8367, 0.8331, 0.8293, 0.8282, 0.8112, 0.8115])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results['qp']['z_Re']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's see a further example by parsing the typical files of a real-time computation" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "results = P.YamboParser(rt_output)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this case we have several files, so the dictionary has more than one key" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['carriers', 'spin_magnetization', 'external_field', 'polarization'])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results.keys()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can easily perform some plots" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "time = results['carriers']['time']\n", "elec = results['carriers']['dne']\n", "field_int = results['external_field']['Intensity']\n", "pol = results['polarization']['Pol_x']\n", "\n", "ratio = max(field_int)/max(elec)\n", "\n", "plt.plot(time,ratio*elec,label='dne')\n", "plt.plot(time,field_int,label='field_int')\n", "plt.legend()\n", "plt.show()\n", "\n", "plt.plot(time,pol,label='Pol_x')\n", "plt.legend()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Again we can access to the results using the attribute syntax. For instance if we are intersted to the spin_magnetization\n", "part of the resutls we can set" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "spin_results = U.AttributeDict(**results['spin_magnetization'])" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(spin_results.time,spin_results.Mc_z)\n", "plt.plot(spin_results.time,spin_results.Mv_z)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Parsing of a ypp computation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We test the functionality of the Parser to deal with the output of a ypp -s b computation for plotting the bands structure along a path" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "bands_output = ['YamboCalculator_test/bands_test1/o-bands_test1.bands_interpolated']" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "results = P.YamboParser(bands_output)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For instance" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0. , 0.022969 , 0.045938 , 0.068908 , 0.091877 , 0.1148459,\n", " 0.1378151, 0.1607843, 0.1837534, 0.2067226, 0.2296918, 0.252661 ,\n", " 0.2756301, 0.2985993, 0.3215685, 0.3445377, 0.3675069, 0.3904761,\n", " 0.4134453, 0.436415 , 0.459384 , 0.482353 , 0.50532 , 0.52829 ,\n", " 0.55088 , 0.573478 , 0.596071 , 0.6186643, 0.6412575, 0.6638508,\n", " 0.686444 , 0.7090373, 0.7316306, 0.7542238, 0.7768171, 0.7994103,\n", " 0.8220036, 0.8445969, 0.8671901, 0.8897834, 0.9123766, 0.9349699,\n", " 0.9575632, 0.9801564, 1.0027497, 1.0253429, 1.0479362, 1.0705295,\n", " 1.0931227, 1.115716 , 1.1383092, 1.1617714, 1.1852336, 1.2086958,\n", " 1.2321579, 1.2556201, 1.2790824, 1.3025446, 1.3260068, 1.3494689,\n", " 1.3729311, 1.3963933, 1.4198556, 1.4433178, 1.4660518, 1.4887859,\n", " 1.5115199, 1.534254 , 1.556988 , 1.579722 , 1.6024561, 1.6251901,\n", " 1.6479242, 1.6706582, 1.6933923, 1.7161263, 1.7388604, 1.7615944,\n", " 1.7843285, 1.8070625, 1.8297966, 1.8525306, 1.8752646, 1.8979987,\n", " 1.9207327, 1.9434668, 1.9662008, 1.9889349, 2.0116689, 2.0344031,\n", " 2.057137 , 2.079871 , 2.10261 , 2.1253 ])" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results['bands_interpolated']['col0'] # kpath" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-6.9219413e+00, -6.8940660e+00, -6.8085430e+00, -6.6620450e+00,\n", " -6.4545340e+00, -6.1918492e+00, -5.8844337e+00, -5.5441275e+00,\n", " -5.1817107e+00, -4.8061004e+00, -4.4246202e+00, -4.0431900e+00,\n", " -3.6652303e+00, -3.2892687e+00, -2.9078989e+00, -2.5116823e+00,\n", " -2.0972719e+00, -1.6731431e+00, -1.2571059e+00, -8.6869100e-01,\n", " -5.2580200e-01, -2.4899600e-01, -6.5040000e-02, 4.3244000e-06,\n", " -6.2932000e-02, -2.3642800e-01, -4.8253200e-01, -7.5852300e-01,\n", " -1.0327194e+00, -1.2913052e+00, -1.5373757e+00, -1.7856199e+00,\n", " -2.0538857e+00, -2.3532255e+00, -2.6814742e+00, -3.0252931e+00,\n", " -3.3692219e+00, -3.7041819e+00, -4.0295515e+00, -4.3500915e+00,\n", " -4.6728029e+00, -5.0056581e+00, -5.3559804e+00, -5.7269859e+00,\n", " -6.1147633e+00, -6.5082169e+00, -6.8906918e+00, -7.2399797e+00,\n", " -7.5270734e+00, -7.7186036e+00, -7.7862172e+00, -7.7605839e+00,\n", " -7.6950994e+00, -7.6177669e+00, -7.5589328e+00, -7.5380111e+00,\n", " -7.5569811e+00, -7.6014857e+00, -7.6482453e+00, -7.6763530e+00,\n", " -7.6773896e+00, -7.6584306e+00, -7.6362071e+00, -7.6266656e+00,\n", " -7.5948839e+00, -7.5105047e+00, -7.3746767e+00, -7.1930261e+00,\n", " -6.9738584e+00, -6.7258620e+00, -6.4578810e+00, -6.1798000e+00,\n", " -5.9016418e+00, -5.6306071e+00, -5.3687224e+00, -5.1128516e+00,\n", " -4.8563991e+00, -4.5915818e+00, -4.3120995e+00, -4.0155549e+00,\n", " -3.7040555e+00, -3.3825510e+00, -3.0564950e+00, -2.7303798e+00,\n", " -2.4069378e+00, -2.0864594e+00, -1.7668935e+00, -1.4455550e+00,\n", " -1.1219864e+00, -8.0136440e-01, -4.9847700e-01, -2.4046800e-01,\n", " -6.3440000e-02, 4.3244000e-06])" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results['bands_interpolated']['col1'] # energies of the first band included in the computation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The parser cannot determine the names of the columns because the number of colums depend on the\n", "number of bands considered. The meaning of the columns can be identified by knowing the input used to \n", "perform the post processing. " ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "r = results['bands_interpolated']\n", "kpath = r['col0']\n", "band3 = r['col1']\n", "band4 = r['col2']\n", "band5 = r['col3']\n", "band6 = r['col4']" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(kpath,band3,label='band3')\n", "plt.plot(kpath,band4,label='band4')\n", "plt.plot(kpath,band5,label='band5')\n", "plt.plot(kpath,band6,label='band6')\n", "plt.legend()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Build a nice band plot" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [], "source": [ "G = [0.,0.,0.]\n", "X = [1.,0.,0.]\n", "L = [0.5,0.5,0.5]\n", "W = [1.0,0.5,0.]\n", "fcc_high_sym = {'X':X,'L':L,'G':G,'W':W}" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "band_range = [3,6]" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "data = results['bands_interpolated']\n", "#data" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(band_range)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "def get_kp_coord_path(data,band_range):\n", " \"\"\"\n", " Return a list with the coordinates of the kpoints\n", " ordered along the path. The coordinates are expressed in the same\n", " units provided by the output of the ypp computation.\n", " \"\"\"\n", " num_bands = band_range[1]-band_range[0]+1\n", " index_first_col = 1 + num_bands\n", " len_kpath = len(data['col1'])\n", " kp_coord = []\n", " for ind in range(len_kpath):\n", " kp_coord.append([data['col'+str(index_first_col)][ind] for i in [0,1,2]])\n", " return kp_coord" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[[0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0],\n", " [0.0, 0.0, 0.0]]" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "get_kp_coord_path(data,band_range)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.6.9" } }, "nbformat": 4, "nbformat_minor": 4 }