Merge pull request #3462 from akohlmey/pdlammps-howto

Add peridynamics howto document
This commit is contained in:
Axel Kohlmeyer 2022-09-29 14:33:46 -04:00 committed by GitHub
commit afc35aa7b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 1119 additions and 25 deletions

View File

@ -85,6 +85,7 @@ Packages howto
Howto_coreshell
Howto_drude
Howto_drude2
Howto_peri
Howto_manifold
Howto_spins

1078
doc/src/Howto_peri.rst Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

View File

@ -2220,6 +2220,7 @@ Foster (UTSA).
**Supporting info:**
* src/PERI: filenames -> commands
* :doc:`Peridynamics Howto <Howto_peri>`
* `doc/PDF/PDLammps_overview.pdf <PDF/PDLammps_overview.pdf>`_
* `doc/PDF/PDLammps_EPS.pdf <PDF/PDLammps_EPS.pdf>`_
* `doc/PDF/PDLammps_VES.pdf <PDF/PDLammps_VES.pdf>`_

View File

@ -32,10 +32,9 @@ The "damage" of a Peridynamics particles is based on the bond breakage
between the particle and its neighbors. If all the bonds are broken
the particle is considered to be fully damaged.
See the `PDLAMMPS user guide
<https://download.lammps.org/pdfs/PDLAMMPS_user_guide.pdf>`_ for a
formal definition of "damage" and more details about Peridynamics as it
is implemented in LAMMPS.
See the :doc:`Peridynamics Howto <Howto_peri>` for a formal definition
of "damage" and more details about Peridynamics as it is implemented in
LAMMPS.
This command can be used with all the Peridynamic pair styles.

View File

@ -35,12 +35,12 @@ The dilatation :math:`\theta` for each peridynamic particle :math:`i` is
calculated as a sum over its neighbors with unbroken bonds, where the
contribution of the :math:`ij` pair is a function of the change in bond
length (versus the initial length in the reference state), the volume
fraction of the particles and an influence function. See the `PDLAMMPS
user guide <https://download.lammps.org/pdfs/PDLAMMPS_user_guide.pdf>`_
for a formal definition of dilatation.
fraction of the particles and an influence function. See the
:doc:`Peridynamics Howto <Howto_peri>` for a formal definition of
dilatation.
This command can only be used with a subset of the Peridynamic
:doc:`pair styles <pair_peri>`: peri/lps, peri/ves and peri/eps.
:doc:`pair styles <pair_peri>`: *peri/lps*, *peri/ves*, and *peri/eps*.
The dilatation value will be 0.0 for atoms not in the specified
compute group.

View File

@ -70,25 +70,24 @@ solid (EPS) model.
The canonical papers on Peridynamics are :ref:`(Silling 2000)
<Silling2000>` and :ref:`(Silling 2007) <Silling2007>`. The
implementation of Peridynamics in LAMMPS is described in :ref:`(Parks)
<Parks>`. Also see the `PDLAMMPS user guide
<https://download.lammps.org/pdfs/PDLAMMPS_user_guide.pdf>`_ for more
<Parks>`. Also see the :doc:`Peridynamics Howto <Howto_peri>` for more
details about its implementation.
The peridynamic VES and EPS models in PDLAMMPS were implemented by
R. Rahman and J. T. Foster at University of Texas at San Antonio. The
original VES formulation is described in "(Mitchell2011)" and the
original EPS formulation is in "(Mitchell2011a)". Additional PDF docs
that describe the VES and EPS implementations are include in the
LAMMPS distribution in `doc/PDF/PDLammps_VES.pdf <PDF/PDLammps_VES.pdf>`_ and
that describe the VES and EPS implementations are include in the LAMMPS
distribution in `doc/PDF/PDLammps_VES.pdf <PDF/PDLammps_VES.pdf>`_ and
`doc/PDF/PDLammps_EPS.pdf <PDF/PDLammps_EPS.pdf>`_. For questions
regarding the VES and EPS models in LAMMPS you can contact R. Rahman
(rezwanur.rahman at utsa.edu).
The following coefficients must be defined for each pair of atom types
via the :doc:`pair_coeff <pair_coeff>` command as in the examples above,
or in the data file or restart files read by the
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
commands, or by mixing as described below.
or in the data file or restart files read by the :doc:`read_data
<read_data>` or :doc:`read_restart <read_restart>` commands, or by
mixing as described below.
For the *peri/pmb* style:
@ -99,8 +98,8 @@ For the *peri/pmb* style:
C is the effectively a spring constant for Peridynamic bonds, the
horizon is a cutoff distance for truncating interactions, and s00 and
:math:`\alpha` are used as a bond breaking criteria. The units of c are such
that c/distance = stiffness/volume\^2, where stiffness is
:math:`\alpha` are used as a bond breaking criteria. The units of c are
such that c/distance = stiffness/volume\^2, where stiffness is
energy/distance\^2 and volume is distance\^3. See the users guide for
more details.
@ -113,8 +112,8 @@ For the *peri/lps* style:
* :math:`\alpha` (unitless)
K is the bulk modulus and G is the shear modulus. The horizon is a
cutoff distance for truncating interactions, and s00 and :math:`\alpha` are
used as a bond breaking criteria. See the users guide for more
cutoff distance for truncating interactions, and s00 and :math:`\alpha`
are used as a bond breaking criteria. See the users guide for more
details.
For the *peri/ves* style:
@ -128,12 +127,12 @@ For the *peri/ves* style:
* m_taubi (unitless)
K is the bulk modulus and G is the shear modulus. The horizon is a
cutoff distance for truncating interactions, and s00 and :math:`\alpha` are
used as a bond breaking criteria. m_lambdai and m_taubi are the
cutoff distance for truncating interactions, and s00 and :math:`\alpha`
are used as a bond breaking criteria. m_lambdai and m_taubi are the
viscoelastic relaxation parameter and time constant,
respectively. m_lambdai varies within zero to one. For very small
values of m_lambdai the viscoelastic model responds very similar to a
linear elastic model. For details please see the description in
respectively. m_lambdai varies within zero to one. For very small values
of m_lambdai the viscoelastic model responds very similar to a linear
elastic model. For details please see the description in
"(Mitchell2011)".
For the *peri/eps* style:

View File

@ -1,3 +1,11 @@
.math {
text-align: left;
}
.eqno {
float: right;
}
.wy-nav-content {
max-width: 100% !important;
}

View File

@ -747,6 +747,7 @@ dirname
discoverable
discretization
discretized
discretizing
disp
dissipative
Dissipative
@ -915,6 +916,7 @@ emax
Emax
Embt
emi
Emmrich
emol
eN
endian
@ -2124,6 +2126,7 @@ modelled
modelling
Modelling
Modine
moduli
mofff
MOFFF
Mohd
@ -2139,6 +2142,7 @@ Monaghan
Monaghans
monodisperse
monodispersity
monolayer
monopole
monovalent
Montalenti
@ -2414,6 +2418,7 @@ normy
normz
Noskov
noslip
notational
noticable
Nout
noutcol
@ -2774,6 +2779,7 @@ ps
Ps
pscreen
pscrozi
Pseudocode
pseudodynamics
pseudopotential
pSp
@ -3133,6 +3139,7 @@ sectoring
sed
segmental
Seifert
Seleson
sellerio
Sellerio
Semaev
@ -3211,7 +3218,7 @@ slategray
slater
Slepoy
Sliozberg
sLLG
sLL
sllod
sm
smallbig
@ -3622,6 +3629,7 @@ unsmoothed
unsolvated
unsplit
unstrained
unstretched
untar
untilted
Unwin