{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Table basics\n", "\n", "OOMMF saves the scalar data of micromagnetic simulations in `.odt` files, whereas mumax$^{3}$ saves it in `.txt` files. `ubermagtable` is a convenience tool which provides functions for reading, manipulating, and visualising data from those files.\n", "\n", "Reading data from OOMMF and mumax3 table files is done using `ubermagtable.Table.fromfile` class method. It takes filename as an input argument." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import os\n", "\n", "import ubermagtable as ut\n", "\n", "# Sample OOMMF .odt file\n", "dirname = os.path.join(\"..\", \"ubermagtable\", \"tests\", \"test_sample\")\n", "odtfile = os.path.join(dirname, \"oommf-new-file2.odt\")\n", "\n", "table = ut.Table.fromfile(odtfile)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Table data is now loaded into `pandas.DataFrame` and it can be accessed via `data` attribute." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
EE_calc_countmax_dmdtdE/dtdelta_Eaverage_uE_exchangemax_spin_ang_exchangestage_max_spin_ang_exchangerun_max_spin_ang_exchangeE_dmiE_uniaxialanisotropyiterationstage_iterationstagemxmymzlast_time_stept
0-3.138757e-1961.05105.7866621.131548e-091.234439e-22400.07.819720e-1924.98191924.98191924.981919-1.791404e-186.955566e-198.08.00.0-0.0043560.0017110.7793091.146802e-131.000000e-12
1-3.123365e-1992.05393.8203571.881778e-092.714936e-22400.07.859070e-1925.99911425.99911425.999114-1.795166e-186.969222e-1914.05.01.0-0.0073990.0025270.7792121.481817e-132.000000e-12
2-3.101629e-19129.05478.1059372.410525e-091.525909e-22400.07.908188e-1926.83954026.83954026.839540-1.800156e-186.991741e-1921.06.02.0-0.0100580.0025960.7791036.371456e-143.000000e-12
3-3.075651e-19172.05775.5961172.750961e-092.026333e-22400.07.963184e-1927.52301827.52301827.523018-1.806035e-187.021517e-1928.06.03.0-0.0122430.0020780.7790377.397143e-144.000000e-12
4-3.046980e-19209.06099.4084552.938665e-091.417659e-22400.08.020796e-1927.96849427.96849427.968494-1.812650e-187.058726e-1935.06.04.0-0.0139150.0011390.7790584.838847e-145.000000e-12
...............................................................
195-4.666219e-207786.06419.7137172.798949e-101.373560e-23400.01.222876e-1829.27924229.39648733.740702-1.937412e-186.678731e-191372.06.0195.0-0.007893-0.0080170.8992295.094469e-141.960000e-10
196-4.634379e-207829.06444.1888762.763562e-101.564748e-23400.01.222846e-1829.35833829.35833833.740702-1.936677e-186.674871e-191379.06.0196.0-0.007885-0.0080070.8992986.044352e-141.970000e-10
197-4.601751e-207866.06397.2957442.905618e-101.926693e-23400.01.222790e-1829.41828329.41828333.740702-1.935846e-186.670387e-191386.06.0197.0-0.007876-0.0079980.8993837.101084e-141.980000e-10
198-4.568193e-207909.06374.5879443.124776e-101.795553e-23400.01.222710e-1829.39700729.41986133.740702-1.934920e-186.665281e-191393.06.0198.0-0.007866-0.0079890.8994825.961504e-141.990000e-10
199-4.533615e-207946.06479.6745663.377564e-102.490729e-23400.01.222607e-1829.30131129.39700733.740702-1.933899e-186.659556e-191400.06.0199.0-0.007854-0.0079810.8995957.547542e-142.000000e-10
\n", "

200 rows × 20 columns

\n", "
" ], "text/plain": [ " E E_calc_count max_dmdt dE/dt delta_E \\\n", "0 -3.138757e-19 61.0 5105.786662 1.131548e-09 1.234439e-22 \n", "1 -3.123365e-19 92.0 5393.820357 1.881778e-09 2.714936e-22 \n", "2 -3.101629e-19 129.0 5478.105937 2.410525e-09 1.525909e-22 \n", "3 -3.075651e-19 172.0 5775.596117 2.750961e-09 2.026333e-22 \n", "4 -3.046980e-19 209.0 6099.408455 2.938665e-09 1.417659e-22 \n", ".. ... ... ... ... ... \n", "195 -4.666219e-20 7786.0 6419.713717 2.798949e-10 1.373560e-23 \n", "196 -4.634379e-20 7829.0 6444.188876 2.763562e-10 1.564748e-23 \n", "197 -4.601751e-20 7866.0 6397.295744 2.905618e-10 1.926693e-23 \n", "198 -4.568193e-20 7909.0 6374.587944 3.124776e-10 1.795553e-23 \n", "199 -4.533615e-20 7946.0 6479.674566 3.377564e-10 2.490729e-23 \n", "\n", " average_u E_exchange max_spin_ang_exchange \\\n", "0 400.0 7.819720e-19 24.981919 \n", "1 400.0 7.859070e-19 25.999114 \n", "2 400.0 7.908188e-19 26.839540 \n", "3 400.0 7.963184e-19 27.523018 \n", "4 400.0 8.020796e-19 27.968494 \n", ".. ... ... ... \n", "195 400.0 1.222876e-18 29.279242 \n", "196 400.0 1.222846e-18 29.358338 \n", "197 400.0 1.222790e-18 29.418283 \n", "198 400.0 1.222710e-18 29.397007 \n", "199 400.0 1.222607e-18 29.301311 \n", "\n", " stage_max_spin_ang_exchange run_max_spin_ang_exchange E_dmi \\\n", "0 24.981919 24.981919 -1.791404e-18 \n", "1 25.999114 25.999114 -1.795166e-18 \n", "2 26.839540 26.839540 -1.800156e-18 \n", "3 27.523018 27.523018 -1.806035e-18 \n", "4 27.968494 27.968494 -1.812650e-18 \n", ".. ... ... ... \n", "195 29.396487 33.740702 -1.937412e-18 \n", "196 29.358338 33.740702 -1.936677e-18 \n", "197 29.418283 33.740702 -1.935846e-18 \n", "198 29.419861 33.740702 -1.934920e-18 \n", "199 29.397007 33.740702 -1.933899e-18 \n", "\n", " E_uniaxialanisotropy iteration stage_iteration stage mx \\\n", "0 6.955566e-19 8.0 8.0 0.0 -0.004356 \n", "1 6.969222e-19 14.0 5.0 1.0 -0.007399 \n", "2 6.991741e-19 21.0 6.0 2.0 -0.010058 \n", "3 7.021517e-19 28.0 6.0 3.0 -0.012243 \n", "4 7.058726e-19 35.0 6.0 4.0 -0.013915 \n", ".. ... ... ... ... ... \n", "195 6.678731e-19 1372.0 6.0 195.0 -0.007893 \n", "196 6.674871e-19 1379.0 6.0 196.0 -0.007885 \n", "197 6.670387e-19 1386.0 6.0 197.0 -0.007876 \n", "198 6.665281e-19 1393.0 6.0 198.0 -0.007866 \n", "199 6.659556e-19 1400.0 6.0 199.0 -0.007854 \n", "\n", " my mz last_time_step t \n", "0 0.001711 0.779309 1.146802e-13 1.000000e-12 \n", "1 0.002527 0.779212 1.481817e-13 2.000000e-12 \n", "2 0.002596 0.779103 6.371456e-14 3.000000e-12 \n", "3 0.002078 0.779037 7.397143e-14 4.000000e-12 \n", "4 0.001139 0.779058 4.838847e-14 5.000000e-12 \n", ".. ... ... ... ... \n", "195 -0.008017 0.899229 5.094469e-14 1.960000e-10 \n", "196 -0.008007 0.899298 6.044352e-14 1.970000e-10 \n", "197 -0.007998 0.899383 7.101084e-14 1.980000e-10 \n", "198 -0.007989 0.899482 5.961504e-14 1.990000e-10 \n", "199 -0.007981 0.899595 7.547542e-14 2.000000e-10 \n", "\n", "[200 rows x 20 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table.data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Apart from the data, units for individual columns are stored in `units` attribute." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'E': 'J',\n", " 'E_calc_count': '',\n", " 'max_dmdt': 'deg/ns',\n", " 'dE/dt': 'J/s',\n", " 'delta_E': 'J',\n", " 'average_u': 'm/s',\n", " 'E_exchange': 'J',\n", " 'max_spin_ang_exchange': 'deg',\n", " 'stage_max_spin_ang_exchange': 'deg',\n", " 'run_max_spin_ang_exchange': 'deg',\n", " 'E_dmi': 'J',\n", " 'E_uniaxialanisotropy': 'J',\n", " 'iteration': '',\n", " 'stage_iteration': '',\n", " 'stage': '',\n", " 'mx': '',\n", " 'my': '',\n", " 'mz': '',\n", " 'last_time_step': 's',\n", " 't': 's'}" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table.units" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This returns a dictionary, whose keys are column names and its values are the units.\n", "\n", "By default, column names from OOMMF `.odt` and mumax3 `.txt` files are shortened. This can be changed by passing `rename=False` to the `Table.fromfile` class method:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "table_not_renamed = ut.Table.fromfile(odtfile, rename=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The column names are now:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SpinTEvolve:evolver:Total energySpinTEvolve:evolver:Energy calc countSpinTEvolve:evolver:Max dm/dtSpinTEvolve:evolver:dE/dtSpinTEvolve:evolver:Delta ESpinTEvolve:evolver:average uUniformExchange:exchange:EnergyUniformExchange:exchange:Max Spin AngUniformExchange:exchange:Stage Max Spin AngUniformExchange:exchange:Run Max Spin AngDMI_Cnv:dmi:EnergyUniaxialAnisotropy:uniaxialanisotropy:EnergyTimeDriver::IterationTimeDriver::Stage iterationTimeDriver::StageTimeDriver::mxTimeDriver::myTimeDriver::mzTimeDriver::Last time stepTimeDriver::Simulation time
0-3.138757e-1961.05105.7866621.131548e-091.234439e-22400.07.819720e-1924.98191924.98191924.981919-1.791404e-186.955566e-198.08.00.0-0.0043560.0017110.7793091.146802e-131.000000e-12
1-3.123365e-1992.05393.8203571.881778e-092.714936e-22400.07.859070e-1925.99911425.99911425.999114-1.795166e-186.969222e-1914.05.01.0-0.0073990.0025270.7792121.481817e-132.000000e-12
2-3.101629e-19129.05478.1059372.410525e-091.525909e-22400.07.908188e-1926.83954026.83954026.839540-1.800156e-186.991741e-1921.06.02.0-0.0100580.0025960.7791036.371456e-143.000000e-12
3-3.075651e-19172.05775.5961172.750961e-092.026333e-22400.07.963184e-1927.52301827.52301827.523018-1.806035e-187.021517e-1928.06.03.0-0.0122430.0020780.7790377.397143e-144.000000e-12
4-3.046980e-19209.06099.4084552.938665e-091.417659e-22400.08.020796e-1927.96849427.96849427.968494-1.812650e-187.058726e-1935.06.04.0-0.0139150.0011390.7790584.838847e-145.000000e-12
...............................................................
195-4.666219e-207786.06419.7137172.798949e-101.373560e-23400.01.222876e-1829.27924229.39648733.740702-1.937412e-186.678731e-191372.06.0195.0-0.007893-0.0080170.8992295.094469e-141.960000e-10
196-4.634379e-207829.06444.1888762.763562e-101.564748e-23400.01.222846e-1829.35833829.35833833.740702-1.936677e-186.674871e-191379.06.0196.0-0.007885-0.0080070.8992986.044352e-141.970000e-10
197-4.601751e-207866.06397.2957442.905618e-101.926693e-23400.01.222790e-1829.41828329.41828333.740702-1.935846e-186.670387e-191386.06.0197.0-0.007876-0.0079980.8993837.101084e-141.980000e-10
198-4.568193e-207909.06374.5879443.124776e-101.795553e-23400.01.222710e-1829.39700729.41986133.740702-1.934920e-186.665281e-191393.06.0198.0-0.007866-0.0079890.8994825.961504e-141.990000e-10
199-4.533615e-207946.06479.6745663.377564e-102.490729e-23400.01.222607e-1829.30131129.39700733.740702-1.933899e-186.659556e-191400.06.0199.0-0.007854-0.0079810.8995957.547542e-142.000000e-10
\n", "

200 rows × 20 columns

\n", "
" ], "text/plain": [ " SpinTEvolve:evolver:Total energy SpinTEvolve:evolver:Energy calc count \\\n", "0 -3.138757e-19 61.0 \n", "1 -3.123365e-19 92.0 \n", "2 -3.101629e-19 129.0 \n", "3 -3.075651e-19 172.0 \n", "4 -3.046980e-19 209.0 \n", ".. ... ... \n", "195 -4.666219e-20 7786.0 \n", "196 -4.634379e-20 7829.0 \n", "197 -4.601751e-20 7866.0 \n", "198 -4.568193e-20 7909.0 \n", "199 -4.533615e-20 7946.0 \n", "\n", " SpinTEvolve:evolver:Max dm/dt SpinTEvolve:evolver:dE/dt \\\n", "0 5105.786662 1.131548e-09 \n", "1 5393.820357 1.881778e-09 \n", "2 5478.105937 2.410525e-09 \n", "3 5775.596117 2.750961e-09 \n", "4 6099.408455 2.938665e-09 \n", ".. ... ... \n", "195 6419.713717 2.798949e-10 \n", "196 6444.188876 2.763562e-10 \n", "197 6397.295744 2.905618e-10 \n", "198 6374.587944 3.124776e-10 \n", "199 6479.674566 3.377564e-10 \n", "\n", " SpinTEvolve:evolver:Delta E SpinTEvolve:evolver:average u \\\n", "0 1.234439e-22 400.0 \n", "1 2.714936e-22 400.0 \n", "2 1.525909e-22 400.0 \n", "3 2.026333e-22 400.0 \n", "4 1.417659e-22 400.0 \n", ".. ... ... \n", "195 1.373560e-23 400.0 \n", "196 1.564748e-23 400.0 \n", "197 1.926693e-23 400.0 \n", "198 1.795553e-23 400.0 \n", "199 2.490729e-23 400.0 \n", "\n", " UniformExchange:exchange:Energy UniformExchange:exchange:Max Spin Ang \\\n", "0 7.819720e-19 24.981919 \n", "1 7.859070e-19 25.999114 \n", "2 7.908188e-19 26.839540 \n", "3 7.963184e-19 27.523018 \n", "4 8.020796e-19 27.968494 \n", ".. ... ... \n", "195 1.222876e-18 29.279242 \n", "196 1.222846e-18 29.358338 \n", "197 1.222790e-18 29.418283 \n", "198 1.222710e-18 29.397007 \n", "199 1.222607e-18 29.301311 \n", "\n", " UniformExchange:exchange:Stage Max Spin Ang \\\n", "0 24.981919 \n", "1 25.999114 \n", "2 26.839540 \n", "3 27.523018 \n", "4 27.968494 \n", ".. ... \n", "195 29.396487 \n", "196 29.358338 \n", "197 29.418283 \n", "198 29.419861 \n", "199 29.397007 \n", "\n", " UniformExchange:exchange:Run Max Spin Ang DMI_Cnv:dmi:Energy \\\n", "0 24.981919 -1.791404e-18 \n", "1 25.999114 -1.795166e-18 \n", "2 26.839540 -1.800156e-18 \n", "3 27.523018 -1.806035e-18 \n", "4 27.968494 -1.812650e-18 \n", ".. ... ... \n", "195 33.740702 -1.937412e-18 \n", "196 33.740702 -1.936677e-18 \n", "197 33.740702 -1.935846e-18 \n", "198 33.740702 -1.934920e-18 \n", "199 33.740702 -1.933899e-18 \n", "\n", " UniaxialAnisotropy:uniaxialanisotropy:Energy TimeDriver::Iteration \\\n", "0 6.955566e-19 8.0 \n", "1 6.969222e-19 14.0 \n", "2 6.991741e-19 21.0 \n", "3 7.021517e-19 28.0 \n", "4 7.058726e-19 35.0 \n", ".. ... ... \n", "195 6.678731e-19 1372.0 \n", "196 6.674871e-19 1379.0 \n", "197 6.670387e-19 1386.0 \n", "198 6.665281e-19 1393.0 \n", "199 6.659556e-19 1400.0 \n", "\n", " TimeDriver::Stage iteration TimeDriver::Stage TimeDriver::mx \\\n", "0 8.0 0.0 -0.004356 \n", "1 5.0 1.0 -0.007399 \n", "2 6.0 2.0 -0.010058 \n", "3 6.0 3.0 -0.012243 \n", "4 6.0 4.0 -0.013915 \n", ".. ... ... ... \n", "195 6.0 195.0 -0.007893 \n", "196 6.0 196.0 -0.007885 \n", "197 6.0 197.0 -0.007876 \n", "198 6.0 198.0 -0.007866 \n", "199 6.0 199.0 -0.007854 \n", "\n", " TimeDriver::my TimeDriver::mz TimeDriver::Last time step \\\n", "0 0.001711 0.779309 1.146802e-13 \n", "1 0.002527 0.779212 1.481817e-13 \n", "2 0.002596 0.779103 6.371456e-14 \n", "3 0.002078 0.779037 7.397143e-14 \n", "4 0.001139 0.779058 4.838847e-14 \n", ".. ... ... ... \n", "195 -0.008017 0.899229 5.094469e-14 \n", "196 -0.008007 0.899298 6.044352e-14 \n", "197 -0.007998 0.899383 7.101084e-14 \n", "198 -0.007989 0.899482 5.961504e-14 \n", "199 -0.007981 0.899595 7.547542e-14 \n", "\n", " TimeDriver::Simulation time \n", "0 1.000000e-12 \n", "1 2.000000e-12 \n", "2 3.000000e-12 \n", "3 4.000000e-12 \n", "4 5.000000e-12 \n", ".. ... \n", "195 1.960000e-10 \n", "196 1.970000e-10 \n", "197 1.980000e-10 \n", "198 1.990000e-10 \n", "199 2.000000e-10 \n", "\n", "[200 rows x 20 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table_not_renamed.data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can specify the name of an independent variable in the table." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "table.x = \"t\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If we already knew what the independent variable was going to be when we loaded the file, we could have passed it to `fromfile` method." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "table = ut.Table.fromfile(odtfile, x=\"t\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If table data was obtained by using time driver, table data store different values which are all a function of time. Column names of all time-dependent data can be obtained using `y`:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['E',\n", " 'E_calc_count',\n", " 'max_dmdt',\n", " 'dE/dt',\n", " 'delta_E',\n", " 'average_u',\n", " 'E_exchange',\n", " 'max_spin_ang_exchange',\n", " 'stage_max_spin_ang_exchange',\n", " 'run_max_spin_ang_exchange',\n", " 'E_dmi',\n", " 'E_uniaxialanisotropy',\n", " 'iteration',\n", " 'stage_iteration',\n", " 'stage',\n", " 'mx',\n", " 'my',\n", " 'mz',\n", " 'last_time_step']" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table.y" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Similarly, column name storing independent variable:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'t'" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table.x" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The maximum value of `x`:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2e-10" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table.xmax" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, the representation string of the table is:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ " E E_calc_count max_dmdt dE/dt delta_E \\\n", "0 -3.138757e-19 61.0 5105.786662 1.131548e-09 1.234439e-22 \n", "1 -3.123365e-19 92.0 5393.820357 1.881778e-09 2.714936e-22 \n", "2 -3.101629e-19 129.0 5478.105937 2.410525e-09 1.525909e-22 \n", "3 -3.075651e-19 172.0 5775.596117 2.750961e-09 2.026333e-22 \n", "4 -3.046980e-19 209.0 6099.408455 2.938665e-09 1.417659e-22 \n", ".. ... ... ... ... ... \n", "195 -4.666219e-20 7786.0 6419.713717 2.798949e-10 1.373560e-23 \n", "196 -4.634379e-20 7829.0 6444.188876 2.763562e-10 1.564748e-23 \n", "197 -4.601751e-20 7866.0 6397.295744 2.905618e-10 1.926693e-23 \n", "198 -4.568193e-20 7909.0 6374.587944 3.124776e-10 1.795553e-23 \n", "199 -4.533615e-20 7946.0 6479.674566 3.377564e-10 2.490729e-23 \n", "\n", " average_u E_exchange max_spin_ang_exchange \\\n", "0 400.0 7.819720e-19 24.981919 \n", "1 400.0 7.859070e-19 25.999114 \n", "2 400.0 7.908188e-19 26.839540 \n", "3 400.0 7.963184e-19 27.523018 \n", "4 400.0 8.020796e-19 27.968494 \n", ".. ... ... ... \n", "195 400.0 1.222876e-18 29.279242 \n", "196 400.0 1.222846e-18 29.358338 \n", "197 400.0 1.222790e-18 29.418283 \n", "198 400.0 1.222710e-18 29.397007 \n", "199 400.0 1.222607e-18 29.301311 \n", "\n", " stage_max_spin_ang_exchange run_max_spin_ang_exchange E_dmi \\\n", "0 24.981919 24.981919 -1.791404e-18 \n", "1 25.999114 25.999114 -1.795166e-18 \n", "2 26.839540 26.839540 -1.800156e-18 \n", "3 27.523018 27.523018 -1.806035e-18 \n", "4 27.968494 27.968494 -1.812650e-18 \n", ".. ... ... ... \n", "195 29.396487 33.740702 -1.937412e-18 \n", "196 29.358338 33.740702 -1.936677e-18 \n", "197 29.418283 33.740702 -1.935846e-18 \n", "198 29.419861 33.740702 -1.934920e-18 \n", "199 29.397007 33.740702 -1.933899e-18 \n", "\n", " E_uniaxialanisotropy iteration stage_iteration stage mx \\\n", "0 6.955566e-19 8.0 8.0 0.0 -0.004356 \n", "1 6.969222e-19 14.0 5.0 1.0 -0.007399 \n", "2 6.991741e-19 21.0 6.0 2.0 -0.010058 \n", "3 7.021517e-19 28.0 6.0 3.0 -0.012243 \n", "4 7.058726e-19 35.0 6.0 4.0 -0.013915 \n", ".. ... ... ... ... ... \n", "195 6.678731e-19 1372.0 6.0 195.0 -0.007893 \n", "196 6.674871e-19 1379.0 6.0 196.0 -0.007885 \n", "197 6.670387e-19 1386.0 6.0 197.0 -0.007876 \n", "198 6.665281e-19 1393.0 6.0 198.0 -0.007866 \n", "199 6.659556e-19 1400.0 6.0 199.0 -0.007854 \n", "\n", " my mz last_time_step t \n", "0 0.001711 0.779309 1.146802e-13 1.000000e-12 \n", "1 0.002527 0.779212 1.481817e-13 2.000000e-12 \n", "2 0.002596 0.779103 6.371456e-14 3.000000e-12 \n", "3 0.002078 0.779037 7.397143e-14 4.000000e-12 \n", "4 0.001139 0.779058 4.838847e-14 5.000000e-12 \n", ".. ... ... ... ... \n", "195 -0.008017 0.899229 5.094469e-14 1.960000e-10 \n", "196 -0.008007 0.899298 6.044352e-14 1.970000e-10 \n", "197 -0.007998 0.899383 7.101084e-14 1.980000e-10 \n", "198 -0.007989 0.899482 5.961504e-14 1.990000e-10 \n", "199 -0.007981 0.899595 7.547542e-14 2.000000e-10 \n", "\n", "[200 rows x 20 columns]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "table" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.8.10" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": {}, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 4 }