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/>.
28 Place holder for 'none' option
33 \*---------------------------------------------------------------------------*/
38 #include "CollisionModel.H"
40 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 /*---------------------------------------------------------------------------*\
46 Class NoCollision Declaration
47 \*---------------------------------------------------------------------------*/
49 template<class CloudType>
52 public CollisionModel<CloudType>
57 //- Runtime type information
63 //- Construct from components
64 NoCollision(const dictionary& dict, CloudType& owner);
67 NoCollision(NoCollision<CloudType>& cm);
69 //- Construct and return a clone
70 virtual autoPtr<CollisionModel<CloudType> > clone()
72 return autoPtr<CollisionModel<CloudType> >
74 new NoCollision<CloudType>(*this)
80 virtual ~NoCollision();
85 //- Return the number of times to subcycle the current
86 // timestep to meet the criteria of the collision model. For
87 // this model this will always be 1.
88 virtual label nSubCycles() const;
90 //- Flag to indicate whether model activates collision model
91 virtual bool active() const;
93 //- Indicates whether model determines wall collisions or not,
94 // used to determine what value to use for wallImpactDistance
95 virtual bool controlsWallInteraction() const;
98 virtual void collide();
102 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
104 } // End namespace Foam
106 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
109 # include "NoCollision.C"
112 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
116 // ************************************************************************* //