From 360af221fead0140f98acb152ce9c0cc75faba6d Mon Sep 17 00:00:00 2001 From: Andrew Heather <> Date: Fri, 25 Nov 2022 09:23:50 +0000 Subject: [PATCH] BUG: [fa|fv]Matrix setValuesFromList - corrected loops. Fixes #2642 --- src/finiteArea/faMatrices/faMatrix/faMatrix.C | 8 +++++++- src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/finiteArea/faMatrices/faMatrix/faMatrix.C b/src/finiteArea/faMatrices/faMatrix/faMatrix.C index e5a1eed1a5..b98f60e66a 100644 --- a/src/finiteArea/faMatrices/faMatrix/faMatrix.C +++ b/src/finiteArea/faMatrices/faMatrix/faMatrix.C @@ -335,9 +335,15 @@ void Foam::faMatrix::setValuesFromList psi[facei] = value; source_[facei] = value*Diag[facei]; + } - if (symmetric() || asymmetric()) + if (symmetric() || asymmetric()) + { + forAll(faceLabels, i) { + const label facei = faceLabels[i]; + const Type& value = values[i]; + for (const label edgei : edges[facei]) { if (mesh.isInternalEdge(edgei)) diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C index 1184146fb1..0a0879db77 100644 --- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C +++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C @@ -249,9 +249,15 @@ void Foam::fvMatrix::setValuesFromList psi[celli] = value; source_[celli] = value*Diag[celli]; + } - if (symmetric() || asymmetric()) + if (symmetric() || asymmetric()) + { + forAll(cellLabels, i) { + const label celli = cellLabels[i]; + const Type& value = values[i]; + for (const label facei : cells[celli]) { if (mesh.isInternalFace(facei))