Skip to content

Add noise term in dpd pressure calculation#5332

Open
Yashas17 wants to merge 6 commits into
espressomd:pythonfrom
Yashas17:dpd_add_noise
Open

Add noise term in dpd pressure calculation#5332
Yashas17 wants to merge 6 commits into
espressomd:pythonfrom
Yashas17:dpd_add_noise

Conversation

@Yashas17

Copy link
Copy Markdown
Contributor

Co-authored-by: Jean-Noël Grad jgrad@icp.uni-stuttgart.de

Fixes #

Description of changes:

  • The random force (noise) term is added back to the DPD pressure.
  • With this, the Green-Kubo viscosity matches with Bindgen et al. (2021) paper and also with Groot-Warren theory.
image

@Yashas17 Yashas17 changed the title Added noise term in dpd pressure calculation Add noise term in dpd pressure calculation Jun 10, 2026
@Yashas17 Yashas17 force-pushed the dpd_add_noise branch 4 times, most recently from 9fa5f14 to 8203b91 Compare July 8, 2026 08:04
Yashas17 and others added 5 commits July 9, 2026 15:08
Co-authored-by: Jean-Noël Grad <jgrad@icp.uni-stuttgart.de>
test_dpd_stress originally looped over kT=[0, 2], comparing the
thermalized stress against a dissipative-only reference. That reference
omits the random force, so it is only valid before the noise term was
added to the DPD stress calculation. Restrict test_dpd_stress to the
unthermalized case (kT=0) and cover the noise term separately.

Add test_dpd_stress_noise_statistics: a single fixed pair with zero
relative velocity produces a pure-noise stress whose mean is zero and
whose per-component variance follows the fluctuation-dissipation result
Var(sigma_ij) = (d_i^2/V^2) * (1/12) * ((A^2-B^2)*dhat_j^2 + B^2). A
generic off-axis separation makes all nine components nonzero and
distinct, and sampling over many RNG counters checks them against the
analytic values.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant