From 65833e6c22d55ad326677d902bb6dd30cff79c60 Mon Sep 17 00:00:00 2001
From: mattijs <mattijs>
Date: Thu, 28 Dec 2017 12:07:37 +0000
Subject: [PATCH] BUG: pressure: generate calculated bcs early. Fixes #685. Ep
 581.

---
 src/functionObjects/field/pressure/pressure.C | 21 ++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/src/functionObjects/field/pressure/pressure.C b/src/functionObjects/field/pressure/pressure.C
index e0a26091119..3699e78dcca 100644
--- a/src/functionObjects/field/pressure/pressure.C
+++ b/src/functionObjects/field/pressure/pressure.C
@@ -70,7 +70,23 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::rhoScale
 {
     if (p.dimensions() == dimPressure)
     {
-        return p;
+        return tmp<volScalarField>
+        (
+            new volScalarField
+            (
+                IOobject
+                (
+                    "rhoScale",
+                    p.mesh().time().timeName(),
+                    p.mesh(),
+                    IOobject::NO_READ,
+                    IOobject::NO_WRITE,
+                    false
+                ),
+                p,
+                fvPatchField<scalar>::calculatedType()
+            )
+        );
     }
     else
     {
@@ -188,8 +204,7 @@ bool Foam::functionObjects::pressure::calc()
                     IOobject::NO_READ,
                     IOobject::NO_WRITE
                 ),
-                coeff(pRef(pDyn(p, rhoScale(p)))),
-                fvPatchField<scalar>::calculatedType()
+                coeff(pRef(pDyn(p, rhoScale(p))))
             )
         );
 
-- 
GitLab