Tools for the generation and analysis of dislocation distributions.
Project description
Line Profile Analysis - Input
This repository is related to the analysis of crystals containing dislocations by X-ray diffraction. It is part of a project conducted during a research internship at the laboratory of material and structural sciences of the École Nationale Supérieure des Mines de Saint-Étienne. Three python packages have been developed 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)
Features
The package lpa.input
can be used to:
- generate dislocation distributions according to different models
- export the distributions in standardized files for input to an X-ray diffraction simulation program
- export the distributions in dislocation maps
- export a spatial analysis of the distributions
Installation
The package is indexed on PyPI and installable directly via pip:
pip install -U lpa-input
Examples
Distribution maps
Input data files
# please keep the structure of this file unchanged
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.404940 # a: cell parameter [nm]
50 # s: Cylinder radius [nm]
2.6 # a3: step size of 'L' along x [nm]
0.345 # nu: Poisson's number [1]
16 # number of dislocations
# Burgers vector and dislocation (x,y) coordinates
1 1.13058137427338092351E+01 -4.76600232529834855200E+01
1 -7.24634689401348541793E+00 -3.36789036259036222987E+01
1 4.11971770783698545415E+01 1.97465636113370450744E+01
1 1.40300831051175638464E+01 -5.05846035346056321913E-01
-1 6.04497556380058576053E+00 1.08883960386682971944E+01
-1 -3.56144577559420838497E+01 2.59934318627030158666E+01
-1 1.54036860797628740727E+01 3.21880761359844447256E+00
-1 -4.36699650001685313327E+01 1.60868469539326213180E+01
-1 1.17803289708455576346E+01 -4.96603575341169829471E+01
-1 -1.52647469191448177384E+01 -7.09460846800485569474E+01
-1 4.93465844192345883812E+01 2.36527242238702122279E+01
-1 1.77957208333133877431E+02 -6.41613792463802035115E+00
1 9.74374358415108616782E+01 1.75507308381520175544E+02
1 -4.57993525636381448862E+01 3.34269402155986767866E+01
1 1.55508426276012443168E+02 3.24955795569969723147E+01
1 -5.04073629684087691771E+01 1.85687241430349949667E+01
Spatial analysis
Physical aspects
Two 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 sense
b
- a position
p
A distribution is mainly characterized by the following elements:
- the shape of the region of interest
- the model used for the random generation of dislocations
- the generated dislocations
A sample is a set of distribution and is mainly characterized by:
- the number of generated distribution stored
- the shape of the region of interest
- the model used for the random generation of dislocations
- the stored distributions
Abbreviations
Some abbreviations are used in the program:
Models
RDD
random dislocation distributionRRDD
restrictedly random dislocation distributionRCDD
random cell dislocation distribution
Model variants
R
randomly distributed Burgers vectorsE
evenly distributed Burgers vectorsD
dipolar Burgers vectors
Boundary conditions
PBCG
periodic boundary conditions applied when generating the distributionPBCR
periodic boundary conditions applied when running the simulationIDBC
image dislocations boundary conditions
User guide
The directory tests/
contains several examples of package module usage. The docstrings are carefully written and it is recommended to refer to the documentation with the help()
command.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file lpa-input-0.9.10.tar.gz
.
File metadata
- Download URL: lpa-input-0.9.10.tar.gz
- Upload date:
- Size: 24.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd497993de4e61346d74c4ad59a63e19bdecd1b65d3cc9d8b7d54efd1bc5515 |
|
MD5 | a807aa3f650521cb1eacf654d11f8279 |
|
BLAKE2b-256 | 355beeccc26f8617b860d45da6ad14ffcb25742202ec144eb82dd4f874fc7f0f |
File details
Details for the file lpa_input-0.9.10-py3-none-any.whl
.
File metadata
- Download URL: lpa_input-0.9.10-py3-none-any.whl
- Upload date:
- Size: 26.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53a31e94f5e668aac325701059eed23a413d39cd4457fbd56d038bdb03cfa4d4 |
|
MD5 | bc81002e10c04b901d71841edf910a63 |
|
BLAKE2b-256 | e2c937221a0b59db319ce3c5ec6833451fdf89b9702cad3ff0ee9cba83bb6bfa |