the Schmid factor of slip systems under a stress tensor or a uniaxial tension; MATLAB’s SchmidFactor
Syntax
sF = SchmidFactor(sS)
A function of the tension direction.
tau = SchmidFactor(sS, v)
Under a uniaxial tension along v.
tau = SchmidFactor(sS, sigma)
Under a stress tensor.
tau = SchmidFactor(sS, sigma, relative=True)
Over the critical resolved shear stress.
Description
Under a tension direction r the Schmid factor is cos(phi) cos(lambda), the product of the cosines between r and the slip direction and between r and the plane normal. Under a stress tensor it is the resolved shear stress divided by the difference of the largest and the smallest principal stress, so a uniaxial tension gives the same number and the factor lies between -0.5 and 0.5.
One load on a list of systems gives one factor per system, a list of loads a (loads, systems) matrix. Without a load the result is the function of the tension direction on the sphere, antipodal, vector valued for several systems; relative=True divides it by the CRSS as well.
The systems and the load must be given in the same frame: both in crystal coordinates, or ori * sS and the stress as measured.
Input
sS |
slipSystem |
sigma |
stressTensor, or vector3d or Miller, the tension directions |
Keywords
| keyword | default | description |
|---|---|---|
relative |
False |
divide by the critical resolved shear stress sS.CRSS of every system |
Output
tau |
the Schmid factors, or an S2FunHarmonic of the tension direction |
Example
Evaluate FCC slip systems under uniaxial loading. Transform the specimen loading direction into crystal coordinates before passing it to crystal-frame slip systems.
import numpy as np
import matplotlib.pyplot as plt
from mtex import crystalFrame, slipSystem, orientation, vector3d, degree, inv
cs = crystalFrame('m-3m')
systems = slipSystem.fcc(cs).symmetrise(antipodal=True)
ori = orientation.byEuler(25*degree, 35*degree, 45*degree, cs)
loading = inv(ori) * vector3d.Z
factors = systems.SchmidFactor(loading)
print('Loading in crystal coordinates:', np.round(loading.normalize().data, 3))
print('Largest absolute Schmid factor:', round(float(np.max(np.abs(factors))), 4))
plt.bar(np.arange(1, systems.size+1), np.abs(factors))
plt.xlabel('FCC slip-system number in this list')
plt.ylabel('Absolute Schmid factor')
plt.ylim(0, 0.5)
plt.show()
Factors are signed and dimensionless; absolute values compare the two shear senses. Multiplying by the applied uniaxial stress gives resolved shear stress. A factor alone does not establish slip activity: the critical resolved shear stress and material response also matter.
Loading in crystal coordinates: [0.406 0.406 0.819]
Largest absolute Schmid factor: 0.4096

See also
SchmidTensor, calcShearStress, stressTensor.uniaxial
source
Citing this page.
This page is part of the documentation of
MTEX, a free and open
source MATLAB toolbox for analyzing and modeling crystallographic textures.
It was written by The MTEX Developers and is published at
https://mtex-toolbox.github.io/mtex.SchmidFactor_py.html.
If you use MTEX, or reuse text or figures from this page, in your research,
please cite
F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63
BibTeX
@article{bachmann2010mtex,
author = {F. Bachmann and R. Hielscher and H. Schaeben},
title = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
journal = {Solid State Phenomena},
volume = {160},
pages = {63-68},
year = {2010},
doi = {10.4028/www.scientific.net/SSP.160.63},
url = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}
Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.