Package: lpa-input
Line Profile Analysis - InputThis project is related to the analysis of crystals containing dislocations by X-ray diffraction. It was developed and used for a study conducted during a research internship at the laboratory of material and structural sciences of theÉcole Nationale Supérieure des Mines de Saint-Étienne. This repository contains the distribution of one of the three published python packages that have been proposed to conduct line profile analyses based on simulation results:lpa-input(line profile analysis input generator)lpa-xrd(line profile analysis x-ray diffraction simulation program)lpa-output(line profile analysis output analyzer)The repositorylpa-workspacecontains the parameters and the scripts for the generation of the data used in the study. You can then easily replicate the results obtained or use it as inspiration to take the code in hand and conduct your own calculations. The software is placed in the public domain and you can use it as you wish. However, users are encouraged to contribute to the development and report issues.FeaturesThe packagelpa.inputcan be used to:generate dislocation distributions according to different modelsexport the distributions in standardized files for input to an X-ray diffraction simulation programexport the distributions in dislocation mapsexport statistical spatial analyses of the distributionsInstallationThe package is indexed onPyPIand installable directly via pip:pipinstall-Ulpa-inputExamplesDistribution mapsInput data files1.2.9 # v: lpa-input version
5.17E+13 # d: dislocation density [m^-2]
 1  1  0 # z: direction of 'l' (line vector) [uvw]
-1  1  0 # x: direction of 'L' (Fourier variable) [uvw]
 1  1  0 # b: Burgers vector direction [uvw]
 2  0  0 # g: diffraction vector direction (hkl)
0.250000 # C: contrast coefficient [1]
0.404600 # a: cell parameter [nm]
     400 # s: radius of the region of interest [nm]
     1.5 # a3: step size of 'L' along x [nm]
   0.345 # nu: Poisson's number [1]
      26 # nd: number of dislocations in this file
# Burgers vector senses and dislocation (x,y) coordinates [1], [nm], [nm]
 1 -2.604424178510505E+02 -3.028586084465366E+02
 1 -4.912383207593395E+01  3.930909606266370E+02
 1  3.202751109125161E+02  8.432420083752132E+01
 1  3.208662976752835E+02  3.344104093784984E+01
 1  1.284915410549065E+02 -3.060088246581881E+02
 1  2.129037512154038E+02 -1.299977713465352E+02
 1 -1.152378285855275E+02 -9.129996531477097E+01
 1 -4.364950050196162E+01 -3.369463689327758E+02
 1 -2.791018700891352E+02 -7.847826265191925E+01
 1  2.045136262814916E+02 -8.839047886863894E+01
 1  1.120985146258099E+02 -2.552794163887354E+02
 1  3.771948070067862E+02  6.490844548543851E+00
 1  2.415271223288822E+02 -3.018470005359157E+02
-1  2.339563106390758E+02  5.011662584016895E+01
-1 -3.854997415041839E+01 -2.999311127738565E+02
-1  1.021921315581637E+02  2.026224835001035E+02
-1  2.012644520339315E+02 -2.336249669436741E+02
-1 -2.246750810670323E+02 -5.989076747432608E+01
-1 -7.692139318221516E+01  2.382060858907951E+02
-1 -3.337560467370262E+02  1.762123650236804E+02
-1  1.876340919287669E+02  3.374407372277079E+01
-1  2.242855098885634E+02  2.222744996705513E+02
-1 -5.545625349147973E+01 -1.018187552559464E+02
-1 -2.197207935554015E+02 -2.914546903103951E+02
-1 -2.656264525089730E+02 -2.353259801332774E+02
-1 -1.457174998193881E+02  1.306350685124747E+02Spatial analysisPhysical aspectsTwo geometries are proposed:circle (intersection of a plane with a cylinder) centered in(0, 0)square (intersection of a plane with a cuboid) bottom left corner at(0, 0)A dislocation associates:a Burgers vector senseba positionpA distribution is mainly characterized by the following elements:the shape of the region of interestthe model used for the random generation of dislocationsthe generated dislocationsA sample is a set of distribution and is mainly characterized by:the number of generated distribution storedthe shape of the region of interestthe model used for the random generation of dislocationsthe stored distributionsAbbreviationsSome abbreviations are used in the program:Distribution modelsRDDrandom dislocation distributionRRDDrestrictedly random dislocation distributionRCDDrandom cell dislocation distributionDistribution model variantsRrandomly distributed Burgers vectorsEevenly distributed Burgers vectorsDdipolar Burgers vectorsBoundary conditions and considerationsISDimage screw dislocationsPBCperiodic boundary conditionsGBBgeneration beyond boundariesNECno edge correctionWOAweighting by overlapping areaUser guideThe directorytests/contains several examples of package module usage. To become familiar with the use of these modules you should go through these scripts in the following order:test_models.pytest_sets.pytest_boundaries.pytest_notation.pytest_maps.pytest_data.pytest_overlap.pytest_analyze.pytest_parallel.pyIn the sources the docstrings are carefully written and it is recommended to refer to the documentation with thehelp()python command to list the available functions, classes and parameters.The installation from PyPI does not allow the modification of the code. To edit the package and contribute to the development use the following commands in your working directory.pipuninstalllpa-input
gitclonehttps://github.com/DunstanBecht/lpa-input.git
pipinstall-elpa-inputcdlpa-input
gitbranch<name_of_your_new_branch>