Commit 1871f80a authored by Sherri Hadian's avatar Sherri Hadian
Browse files

changes to pep8, paper, jupyter notes

parent 78711f16
Loading
Loading
Loading
Loading
+40 −32

File changed.

Preview size limit exceeded, changes collapsed.

+214 −373

File changed.

Preview size limit exceeded, changes collapsed.

+0 −2
Original line number Diff line number Diff line
@@ -748,8 +748,6 @@ def main():
            print(" \nPick a GB plane and customize the io_file! ")
            print(" then run : python gb_generator.py io_file\n ")



        except:
            print("Your input sigma is wrong!")
            sys.exit()
+2 −4
Original line number Diff line number Diff line
@@ -28,15 +28,13 @@ Grain boundaries (GBs) are crystalline borders between single crystals in materi

GBs are geometrical entities with a large parameter space that has been well formulated within a coincident site lattice (CSL) mathematical framework [@Sutton:1996]. One important computational advantage of the CSL formalism is that it enables the construction of GBs in a periodic setup for atomistic simulations. ``GB_code`` [@GB_code] uses the CSL construction to generate GB atomic structures (currently for cubic materials) systematically. It provides input atomic structures for large-scale atomistic simulations with interatomic potentials (as implemented e.g. in ``LAMMPS``[@LAMMPS]) or _ab initio_, density-functional-theory (DFT) simulations (as implemented e.g. in VASP [@VASP]). These atomistic codes can further calculate different properties of the GBs. In addition to providing the input structures, the ``csl_generator.py`` script and the attached Jupyter notebooks have extra functionality to show how the CSL properties can be used to locate, classify and categorize different GBs and to extract detailed information about them; which causes it to be a good interactive toolbox to learn about grain boundaries and versatile for running high-throughput calculations. The target audience are students/scientists of materials science and physics at any level of familiarity with the topic.

``GB_code`` is mainly designed to be run in Linux terminal as it is documented in detail in the README file of the repository
``GB_code`` is mainly designed to be run in terminal as it is documented in detail in the README file of the repository
but it can also be accessed via the attached Jupyter notebooks. The code consists of two main scripts, ``csl_generator.py`` and ``gb_generator.py``, that should be used in this order to produce the final GB structures. The attached Jupyter notebooks, ``Usage_of_GB_code.ipynb`` and ``Dichromatic_pattern_CSL.ipynb``, can access the two scripts as modules, the former addresses the
general usage of the code with some extra tips and functions to locate GBs of interest, the latter depicts how CSL properties such
as the overlapping patterns and displacement shift complete (DSC) vectors can be extracted and visualized. In the notebooks, two examples of the usage of the ``GB_code`` in our previous publications[@Pub1, @Pub2] have been
shown as well.

``GB_code``uses the analytical and mathematical formulations of the following works [@Sutton:1996, @Bollmann:1984, @Grimmer]. Some functionality from this code [@Marcin] on CSL has been used in a modified form in the ``GB_code``. To our knowledge, in comparison to other GB generation codes in different scientific groups``GB_code``is relatively faster due its extensive usage of python Numpy library
and is more comprehensive. The code has been designed to be simple to use and instructive with a special
attention to GB plane orientation which is often lacking in other grain bundary creation codes.
``GB_code``uses the analytical and mathematical formulations of the following works [@Sutton:1996, @Bollmann:1984, @Grimmer]. Some functionality from this code [@Marcin] on CSL has been used in a modified form in the ``GB_code``. To our knowledge, in comparison to other GB generation codes in different scientific groups``GB_code``is faster due its extensive usage of python Numpy library and is more comprehensive. The user need only to select a rotation axis and then will be guided through in a step by step manner how to find and create the GB of interest. The code has been designed to be simple to use and instructive with a special attention to GB plane orientation which is often lacking in other grain bundary creation codes.


# Acknowledgements