
.. DO NOT EDIT.
.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY.
.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE:
.. "examples\04-fermi3d\plot_fermi3d_isovalue_gif.py"
.. LINE NUMBERS ARE GIVEN BELOW.

.. only:: html

    .. note::
        :class: sphx-glr-download-link-note

        :ref:`Go to the end <sphx_glr_download_examples_04-fermi3d_plot_fermi3d_isovalue_gif.py>`
        to download the full example code.

.. rst-class:: sphx-glr-example-title

.. _sphx_glr_examples_04-fermi3d_plot_fermi3d_isovalue_gif.py:


.. _ref_plotting_fermi3d_isovalue_gif:

Plotting fermi3d isovalue_gif
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Symmetry does not currently work! Make sure for fermi surface calculations turn off symmetry

Plotting fermi3d isovalue_gif example.

First download the example files with the code below. Then replace data_dir below.

.. code-block::
   :caption: Downloading example

    data_dir = pyprocar.download_example(save_dir='', 
                                material='Fe',
                                code='qe', 
                                spin_calc_type='non-spin-polarized',
                                calc_type='fermi')

.. GENERATED FROM PYTHON SOURCE LINES 23-26

.. code-block:: Python


    # sphinx_gallery_thumbnail_number = 1








.. GENERATED FROM PYTHON SOURCE LINES 27-33

.. code-block:: Python


    import pyvista

    # You do not need this. This is to ensure an image is rendered off screen when generating exmaple gallery.
    pyvista.OFF_SCREEN = True








.. GENERATED FROM PYTHON SOURCE LINES 34-35

importing pyprocar and specifying local data_dir

.. GENERATED FROM PYTHON SOURCE LINES 35-49

.. code-block:: Python


    import os

    import pyprocar

    data_dir = os.path.join(
        pyprocar.utils.DATA_DIR, "examples", "Fe", "qe", "non-spin-polarized", "fermi"
    )

    # First create the FermiHandler object, this loads the data into memory. Then you can call class methods to plot
    # Symmetry only works for specfic space groups currently.
    # For the actual calculations turn off symmetry and set 'apply_symmetry'=False
    fermiHandler = pyprocar.FermiHandler(code="qe", dirname=data_dir, apply_symmetry=True)





.. rst-class:: sphx-glr-script-out

 .. code-block:: none


                    WARNING : Fermi Energy not set! Set `fermi={value}`. By default, using fermi energy found in given directory.
                    ---------------------------------------------------------------------------------------------------------------
                
    C:\Users\lllang\Desktop\Current_Projects\pyprocar\pyprocar\core\ebs.py:1076: ComplexWarning: Casting complex values to real discards the imaginary part
      new_properties[prop][start_idx:end_idx] = original_value




.. GENERATED FROM PYTHON SOURCE LINES 50-54

Plain mode
+++++++++++++++++++++++++++++++++++++++



.. GENERATED FROM PYTHON SOURCE LINES 54-71

.. code-block:: Python



    # iso_range will be the energy range around the fermi level. 2 would search 1 ev above and below.
    iso_range = 2

    # iso_surface will generate 5 surfaces equally space throughout the range.
    iso_surfaces = 5

    # Instead of iso_range and iso_surfaces, you can specify exact energy values to generate isosurfaces
    iso_values = [-1, -0.5, 0.25, 1, 5]

    fermiHandler.create_isovalue_gif(
        iso_range=iso_range,
        iso_surfaces=iso_surfaces,
        save_gif="isovalue_gif.gif",
        mode="plain",
    )



.. image-sg:: /examples/04-fermi3d/images/sphx_glr_plot_fermi3d_isovalue_gif_001.gif
   :alt: plot fermi3d isovalue gif
   :srcset: /examples/04-fermi3d/images/sphx_glr_plot_fermi3d_isovalue_gif_001.gif
   :class: sphx-glr-single-img


.. rst-class:: sphx-glr-script-out

 .. code-block:: none


                    --------------------------------------------------------
                    There are additional plot options that are defined in a configuration file. 
                    You can change these configurations by passing the keyword argument to the function
                    To print a list of plot options set print_plot_opts=True

                    Here is a list modes : plain , parametric , spin_texture , overlay
                    Here is a list of properties: fermi_speed , fermi_velocity , harmonic_effective_mass
                    --------------------------------------------------------
                
    ij,uvwabj->uvwabi





.. rst-class:: sphx-glr-timing

   **Total running time of the script:** (0 minutes 30.366 seconds)


.. _sphx_glr_download_examples_04-fermi3d_plot_fermi3d_isovalue_gif.py:

.. only:: html

  .. container:: sphx-glr-footer sphx-glr-footer-example

    .. container:: sphx-glr-download sphx-glr-download-jupyter

      :download:`Download Jupyter notebook: plot_fermi3d_isovalue_gif.ipynb <plot_fermi3d_isovalue_gif.ipynb>`

    .. container:: sphx-glr-download sphx-glr-download-python

      :download:`Download Python source code: plot_fermi3d_isovalue_gif.py <plot_fermi3d_isovalue_gif.py>`

    .. container:: sphx-glr-download sphx-glr-download-zip

      :download:`Download zipped: plot_fermi3d_isovalue_gif.zip <plot_fermi3d_isovalue_gif.zip>`


.. only:: html

 .. rst-class:: sphx-glr-signature

    `Gallery generated by Sphinx-Gallery <https://sphinx-gallery.github.io>`_
