From dac9c7c46dd84ebff477b42a8acaf2c4941f77a9 Mon Sep 17 00:00:00 2001 From: mattijs <mattijs> Date: Fri, 3 Dec 2010 12:00:29 +0000 Subject: [PATCH] BUG: cyclicLduInterfaceField : nonuniform transformation --- .../cyclicLduInterfaceField.C | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterfaceFields/cyclicLduInterfaceField/cyclicLduInterfaceField.C b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterfaceFields/cyclicLduInterfaceField/cyclicLduInterfaceField.C index e5da5b9e4df..7c9d704616c 100644 --- a/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterfaceFields/cyclicLduInterfaceField/cyclicLduInterfaceField.C +++ b/src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterfaceFields/cyclicLduInterfaceField/cyclicLduInterfaceField.C @@ -41,16 +41,20 @@ Foam::cyclicLduInterfaceField::~cyclicLduInterfaceField() void Foam::cyclicLduInterfaceField::transformCoupleField ( - scalarField& pnf, + scalarField& f, const direction cmpt ) const { if (doTransform()) { - scalar forwardScale = - pow(diag(forwardT()[0]).component(cmpt), rank()); - - pnf *= forwardScale; + if (forwardT().size() == 1) + { + f *= pow(diag(forwardT()[0]).component(cmpt), rank()); + } + else + { + f *= pow(diag(forwardT())().component(cmpt), rank()); + } } } -- GitLab