Skip to content

[pull] develop from lammps:develop#159

Merged
pull[bot] merged 8 commits into
comphy-lab:developfrom
lammps:develop
Jun 30, 2026
Merged

[pull] develop from lammps:develop#159
pull[bot] merged 8 commits into
comphy-lab:developfrom
lammps:develop

Conversation

@pull

@pull pull Bot commented Jun 30, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

akohlmey and others added 8 commits June 18, 2026 13:02
Two latent bugs in the elastic-plastic (eps) peridynamic model are corrected.

1. Yield norm.  compute_DeviatoricForceStateNorm() built the trial deviatoric
   force state with an extra dilatation factor theta (omega*theta/wvolume) that
   the force loop's deviatoric force state (omega/wvolume) does not have, so the
   yield surface was evaluated against a different, theta-inflated force state
   and the material yielded much later than intended.  The norm now uses the
   same intensive deviatoric force state the model applies.

2. Plastic extension update.  The per-bond plastic deviatoric extension was
   updated as edpNp1 + rkNew*deltalambda, which reduces (uniform case) to a gain
   of ~2/r0 on (e_dev - edp) and overshoots/diverges under sustained plastic
   flow.  It now uses the dimensionally consistent radial return
   edpNp1 + (deviatoric_extension - edpNp1)*(1 - sqrt(2*psi)/tdnorm).

With both fixes an elastic-perfectly-plastic uniaxial test yields at the
intended stress and the deviatoric stress plateaus stably instead of diverging.
The existing PairPeri unit test still passes; results for peri/eps runs that
reach the plastic regime will differ from earlier versions (documented with a
versionchanged note).  Found while re-implementing the PERI models on the BPM
framework, where the corrected forms are used.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…request)

Per the PR #5046 review discussion, recast correction 2 (the per-bond plastic
deviatoric extension update) as a minimal correction of the literal Mitchell
2011 (SAND2011-3166) Eq. 45 transcription, rather than switching the model to
the closest-point ("radial") return.

The original "edp += rkNew*deltalambda" is dimensionally inconsistent in
LAMMPS's discrete force-state convention: because the influence function is
omega = 1/r0 (units 1/length), the increment is dimensionless while the plastic
extension is a length, injecting a spurious gain of order 2/r0 that diverges
under sustained plastic flow.  The update now restores the missing length
factor (0.5*r0), which removes the runaway and, in the equal-weighted-volume
interior, coincides with the radial return that lands the deviatoric force
state on the yield surface.

The dimensionally exact, per-bond radial-return form (also exact at free
surfaces) is documented in a source comment and the doc page as a deferred
refinement for review by a peridynamics expert, since it would change results
near boundaries.  Correction 1 (removal of the spurious dilatation factor in
the yield norm) is unchanged.  No behavior change for purely elastic runs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019nii2NLXtpCD2oqS4rrYAX
…otes

Wire the deferred-refinement tracking issue (#5064, adopting the exact per-bond
radial-return plastic update at free surfaces) into the peri/eps versionchanged
note in doc/src/pair_peri.rst and the source comment in pair_peri_eps.cpp, so the
TODO is discoverable from both the docs and the code. Comment/doc only.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019nii2NLXtpCD2oqS4rrYAX
PERI: fix peri/eps yield norm and plastic return mapping
@pull pull Bot locked and limited conversation to collaborators Jun 30, 2026
@pull pull Bot added the ⤵️ pull label Jun 30, 2026
@pull pull Bot merged commit e4168f6 into comphy-lab:develop Jun 30, 2026
3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants