1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
7 -------------------------------------------------------------------------------
9 This file is part of OpenFOAM.
11 OpenFOAM is free software: you can redistribute it and/or modify it
12 under the terms of the GNU General Public License as published by
13 the Free Software Foundation, either version 3 of the License, or
14 (at your option) any later version.
16 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 You should have received a copy of the GNU General Public License
22 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 Foam::ORourkeCollision
28 Collision model by P.J. O'Rourke.
31 \*---------------------------------------------------------------------------*/
33 #ifndef ORourkeCollision_H
34 #define ORourkeCollision_H
36 #include "StochasticCollisionModel.H"
38 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
42 /*---------------------------------------------------------------------------*\
43 Class ORourkeCollision Declaration
44 \*---------------------------------------------------------------------------*/
46 template<class CloudType>
47 class ORourkeCollision
49 public StochasticCollisionModel<CloudType>
53 dictionary coeffsDict_;
58 //- Runtime type information
64 //- Construct from dictionary
65 ORourkeCollision(const dictionary& dict, CloudType& cloud);
68 ORourkeCollision(const ORourkeCollision<CloudType>& cm);
70 //- Construct and return a clone
71 virtual autoPtr<StochasticCollisionModel<CloudType> > clone() const
73 return autoPtr<StochasticCollisionModel<CloudType> >
75 new ORourkeCollision<CloudType>(*this)
81 virtual ~ORourkeCollision();
115 // 1 is the larger drop and 2 is the smaller
119 cachedRandom& rndGen,
146 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148 } // End namespace Foam
150 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
153 # include "ORourkeCollision.C"
156 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
160 // ************************************************************************* //