Loading...
Searching...
No Matches
uniformBinary.C
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2017-2018 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
11 This file is part of OpenFOAM.
12
13 OpenFOAM is free software: you can redistribute it and/or modify it
14 under the terms of the GNU General Public License as published by
15 the Free Software Foundation, either version 3 of the License, or
16 (at your option) any later version.
17
18 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26\*---------------------------------------------------------------------------*/
27
28#include "uniformBinary.H"
30#include "breakupModel.H"
31
32// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
34namespace Foam
35{
36namespace diameterModels
37{
39{
42 (
46 );
48}
49}
50
51
52// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
53
56(
57 const breakupModel& breakup,
58 const dictionary& dict
59)
63
64
65// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
66
69{}
70
71
72// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
73
76(
77 const label i,
78 const label k
79) const
80{
81 const dimensionedScalar& xi = breakup_.popBal().sizeGroups()[i].x();
82 const dimensionedScalar& xk = breakup_.popBal().sizeGroups()[k].x();
83 const UPtrList<sizeGroup>& sizeGroups = breakup_.popBal().sizeGroups();
84
85 if (i == 0)
86 {
87 return (sizeGroups[i+1].x() - xi)/xk;
88 }
89 else if (i == k)
90 {
91 return (xi - sizeGroups[i-1].x())/xk;
92 }
93 else
94 {
95 return (sizeGroups[i+1].x() - xi)/xk + (xi - sizeGroups[i-1].x())/xk;
96 }
97}
98
99
100// ************************************************************************* //
label k
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
Definition UPtrList.H:101
Base class for breakup models which give a total breakup rate and a separate daughter size distributi...
Base class for daughter size distribution models.
const breakupModel & breakup_
Reference to the breakupModel.
daughterSizeDistributionModel(const breakupModel &breakup, const dictionary &dict)
Uniform binary daughter size distribution. Used for verification and validation of the breakup formul...
virtual dimensionedScalar calcNik(const label i, const label k) const
Return total number of particles assigned to class i when a particle.
uniformBinary(const breakupModel &breakup, const dictionary &dict)
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition dictionary.H:133
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
Definition className.H:142
Namespace for OpenFOAM.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
dictionary dict