From 993895b04887db483062ac11aabe6f9acca47eaf Mon Sep 17 00:00:00 2001
From: andy <andy>
Date: Mon, 4 Aug 2014 15:50:14 +0100
Subject: [PATCH] ENH: Radiation P-1 model - added protection for divide by
 zero

---
 .../radiationModels/radiationModel/P1/P1.C                  | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C b/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C
index 6a8bafa99e9..546a0da8f79 100644
--- a/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C
+++ b/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2014 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -217,6 +217,8 @@ void Foam::radiation::P1::calculate()
     E_ = absorptionEmission_->E();
     const volScalarField sigmaEff(scatter_->sigmaEff());
 
+    const dimensionedScalar a0 ("a0", a_.dimensions(), ROOTVSMALL);
+
     // Construct diffusion
     const volScalarField gamma
     (
@@ -228,7 +230,7 @@ void Foam::radiation::P1::calculate()
             IOobject::NO_READ,
             IOobject::NO_WRITE
         ),
-        1.0/(3.0*a_ + sigmaEff)
+        1.0/(3.0*a_ + sigmaEff + a0)
     );
 
     // Solve G transport equation
-- 
GitLab