Skip to main content

Tools for the generation and analysis of dislocation distributions.

Project description

Mines Saint-Etienne

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

RDD RRDD-E

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

Ripley’s K function Pair correlation function Symmetric and antisymmetric functions

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 distribution
  • RRDD restrictedly random dislocation distribution
  • RCDD random cell dislocation distribution

Model variants

  • R randomly distributed Burgers vectors
  • E evenly distributed Burgers vectors
  • D dipolar Burgers vectors

Boundary conditions

  • PBCG periodic boundary conditions applied when generating the distribution
  • PBCR periodic boundary conditions applied when running the simulation
  • IDBC 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lpa-input-0.9.11.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

lpa_input-0.9.11-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file lpa-input-0.9.11.tar.gz.

File metadata

  • Download URL: lpa-input-0.9.11.tar.gz
  • Upload date:
  • Size: 25.1 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

Hashes for lpa-input-0.9.11.tar.gz
Algorithm Hash digest
SHA256 7d50d4e4a58edefd721c9c558b19a5e92661e4621426110d3afa8237901ff3ab
MD5 63cd9e8e482f5ca36c79a3eb5292062d
BLAKE2b-256 76811cae434961f171f3d8c5bd0b95b657b261dfbf56ac4b9435b82c67cd4ff7

See more details on using hashes here.

File details

Details for the file lpa_input-0.9.11-py3-none-any.whl.

File metadata

  • Download URL: lpa_input-0.9.11-py3-none-any.whl
  • Upload date:
  • Size: 26.8 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

Hashes for lpa_input-0.9.11-py3-none-any.whl
Algorithm Hash digest
SHA256 d70914f25bad87843eae8fb58237bcf9f932577b75fb7cdcddf313f25a43346e
MD5 f6fa51b53181157ae2fe4f9d241a9c0c
BLAKE2b-256 2d7345b0139a7c0674e414b2e50faaf34f5bcdbb69625af244335c28660e5d85

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page