mirror of
https://github.com/ParticulateFlow/CFDEMcoupling-PFM.git
synced 2025-12-08 06:37:44 +00:00
release on 2012-08-01_14-14-45
This commit is contained in:
82
README
Normal file
82
README
Normal file
@ -0,0 +1,82 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
CFDEMcoupling - Open Source CFD-DEM coupling
|
||||
|
||||
CFDEMcoupling is part of the CFDEMproject
|
||||
www.cfdem.com
|
||||
Christoph Goniva, christoph.goniva@cfdem.com
|
||||
Copyright 2009-2012 JKU Linz
|
||||
Copyright 2012- DCS Computing GmbH, Linz
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of CFDEMcoupling.
|
||||
|
||||
CFDEMcoupling is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
CFDEMcoupling is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with CFDEMcoupling; if not, write to the Free Software Foundation,
|
||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Description
|
||||
This code is designed to realize coupled CFD-DEM simulations using LIGGGHTS
|
||||
and OpenFOAM. Note: this code is not part of OpenFOAM (see DISCLAIMER).
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
CFDEM coupling provides an open source parallel coupled CFD-DEM framework
|
||||
combining the strengths of LIGGGHTS DEM code and the Open Source
|
||||
CFD package OpenFOAM(R)(*). The CFDEMcoupling toolbox allows to expand
|
||||
standard CFD solvers of OpenFOAM(R)(*) to include a coupling to the DEM
|
||||
code LIGGGHTS. In this toolbox the particle representation within the
|
||||
CFD solver is organized by "cloud" classes. Key functionalities are organised
|
||||
in sub-models (e.g. force models, data exchange models, etc.) which can easily
|
||||
be selected and combined by dictionary settings.
|
||||
|
||||
The coupled solvers run fully parallel on distributed-memory clusters.
|
||||
|
||||
Features are:
|
||||
|
||||
- its modular approach allows users to easily implement new models
|
||||
- its MPI parallelization enables to use it for large scale problems
|
||||
- the "forum"_lws on CFD-DEM gives the possibility to exchange with other
|
||||
users / developers
|
||||
- the use of GIT allows to easily update to the latest version
|
||||
- basic documentation is provided
|
||||
|
||||
The file structure:
|
||||
|
||||
- "src" directory including the source files of the coupling toolbox and models
|
||||
- "applications" directory including the solver files for coupled CFD-DEM simulations
|
||||
- "doc" directory including the documentation of CFDEMcoupling
|
||||
- "tutorials" directory including basic tutorial cases showing the functionality
|
||||
|
||||
|
||||
|
||||
Details on installation are given on the "www.cfdem.com"
|
||||
|
||||
The functionality of this CFD-DEM framwork is described via "tutorial cases" showing
|
||||
how to use different solvers and models.
|
||||
|
||||
CFDEMcoupling stands for Computational Fluid Dynamics (CFD) -
|
||||
Discrete Element Method (DEM) coupling.
|
||||
|
||||
CFDEMcoupling is an open-source code, distributed freely under the terms of the
|
||||
GNU Public License (GPL).
|
||||
|
||||
Core development of CFDEMcoupling is done by
|
||||
Christoph Goniva and Christoph Kloss, both at DCS Computing GmbH, 2012
|
||||
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
(*) "OpenFOAM(R)"_of is a registered trade mark of Silicon Graphics
|
||||
International Corp. This offering is not affiliated, approved or endorsed by
|
||||
Silicon Graphics International Corp., the producer of the OpenFOAM(R) software
|
||||
and owner of the OpenFOAM(R) trademark.
|
||||
\*---------------------------------------------------------------------------*/
|
||||
Binary file not shown.
@ -408,6 +408,8 @@ Reasonable example settings for the "liggghtsCommands" dictionary are given in t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -48,7 +48,7 @@ After setting some environment variables LIGGGHTS and CFDEMcoupling can be compi
|
||||
</PRE>
|
||||
<P>To clone the public LIGGGHTS repository, open a terminal and execute:
|
||||
</P>
|
||||
<PRE><H6>git clone git://cfdem.git.sourceforge.net/gitroot/cfdem/liggghtsdev LIGGGHTS-PUBLIC
|
||||
<PRE><H6>git clone git://github.com/CFDEMproject/LIGGGHTS-PUBLIC.git LIGGGHTS-PUBLIC
|
||||
</H6></PRE>
|
||||
<P>If not already done, open a terminal and create a directory for CFDEMcoupling in $HOME:
|
||||
</P>
|
||||
|
||||
Binary file not shown.
@ -35,7 +35,7 @@ cd LIGGGHTS :pre
|
||||
|
||||
To clone the public LIGGGHTS repository, open a terminal and execute:
|
||||
|
||||
git clone git://cfdem.git.sourceforge.net/gitroot/cfdem/liggghtsdev LIGGGHTS-PUBLIC :pre,h6
|
||||
git clone git://github.com/CFDEMproject/LIGGGHTS-PUBLIC.git LIGGGHTS-PUBLIC :pre,h6
|
||||
|
||||
If not already done, open a terminal and create a directory for CFDEMcoupling in $HOME:
|
||||
|
||||
|
||||
5
src/finiteVolume/Make/files
Normal file
5
src/finiteVolume/Make/files
Normal file
@ -0,0 +1,5 @@
|
||||
fvPatchFields = fields/fvPatchFields
|
||||
derivedFvPatchFields = $(fvPatchFields)/derived
|
||||
$(derivedFvPatchFields)/uniformFixedValueVoidfraction/uniformFixedValueVoidfractionFvPatchFields.C
|
||||
|
||||
LIB = $(FOAM_USER_LIBBIN)/libfiniteVolumeCFDEM
|
||||
9
src/finiteVolume/Make/options
Normal file
9
src/finiteVolume/Make/options
Normal file
@ -0,0 +1,9 @@
|
||||
EXE_INC = \
|
||||
-I$(LIB_SRC)/triSurface/lnInclude \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
|
||||
LIB_LIBS = \
|
||||
-lOpenFOAM \
|
||||
-ltriSurface \
|
||||
-lmeshTools
|
||||
@ -0,0 +1,157 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
|
||||
OpenFOAM is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "uniformFixedValueVoidfractionFvPatchField.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
template<class Type>
|
||||
uniformFixedValueVoidfractionFvPatchField<Type>::uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const fvPatch& p,
|
||||
const DimensionedField<Type, volMesh>& iF
|
||||
)
|
||||
:
|
||||
fixedValueFvPatchField<Type>(p, iF),
|
||||
uniformValue_(),
|
||||
//voidfractionFieldName_(dict.lookupOrDefault<word>("voidfraction", "voidfraction"))
|
||||
voidfractionFieldName_("voidfraction")
|
||||
{}
|
||||
|
||||
|
||||
template<class Type>
|
||||
uniformFixedValueVoidfractionFvPatchField<Type>::uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const uniformFixedValueVoidfractionFvPatchField<Type>& ptf,
|
||||
const fvPatch& p,
|
||||
const DimensionedField<Type, volMesh>& iF,
|
||||
const fvPatchFieldMapper&
|
||||
)
|
||||
:
|
||||
fixedValueFvPatchField<Type>(p, iF),
|
||||
uniformValue_(ptf.uniformValue_().clone().ptr()),
|
||||
voidfractionFieldName_("voidfraction")
|
||||
{
|
||||
const scalar t = this->db().time().timeOutputValue();
|
||||
fvPatchField<Type>::operator==(uniformValue_->value(t));
|
||||
}
|
||||
|
||||
|
||||
template<class Type>
|
||||
uniformFixedValueVoidfractionFvPatchField<Type>::uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const fvPatch& p,
|
||||
const DimensionedField<Type, volMesh>& iF,
|
||||
const dictionary& dict
|
||||
)
|
||||
:
|
||||
fixedValueFvPatchField<Type>(p, iF),
|
||||
uniformValue_(DataEntry<Type>::New("uniformValue", dict)),
|
||||
voidfractionFieldName_("voidfraction")
|
||||
{
|
||||
const scalar t = this->db().time().timeOutputValue();
|
||||
fvPatchField<Type>::operator==(uniformValue_->value(t));
|
||||
}
|
||||
|
||||
|
||||
template<class Type>
|
||||
uniformFixedValueVoidfractionFvPatchField<Type>::uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const uniformFixedValueVoidfractionFvPatchField<Type>& ptf
|
||||
)
|
||||
:
|
||||
fixedValueFvPatchField<Type>(ptf),
|
||||
uniformValue_(ptf.uniformValue_().clone().ptr()),
|
||||
voidfractionFieldName_("voidfraction")
|
||||
{
|
||||
const scalar t = this->db().time().timeOutputValue();
|
||||
fvPatchField<Type>::operator==(uniformValue_->value(t));
|
||||
}
|
||||
|
||||
|
||||
template<class Type>
|
||||
uniformFixedValueVoidfractionFvPatchField<Type>::uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const uniformFixedValueVoidfractionFvPatchField<Type>& ptf,
|
||||
const DimensionedField<Type, volMesh>& iF
|
||||
)
|
||||
:
|
||||
fixedValueFvPatchField<Type>(ptf, iF),
|
||||
uniformValue_(ptf.uniformValue_().clone().ptr()),
|
||||
voidfractionFieldName_("voidfraction")
|
||||
{
|
||||
const scalar t = this->db().time().timeOutputValue();
|
||||
fvPatchField<Type>::operator==(uniformValue_->value(t));
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||
|
||||
template<class Type>
|
||||
void uniformFixedValueVoidfractionFvPatchField<Type>::autoMap
|
||||
(
|
||||
const fvPatchFieldMapper& m
|
||||
)
|
||||
{
|
||||
this->setSize(m.size());
|
||||
const scalar t = this->db().time().timeOutputValue();
|
||||
fvPatchField<Type>::operator==(uniformValue_->value(t));
|
||||
}
|
||||
|
||||
|
||||
template<class Type>
|
||||
void uniformFixedValueVoidfractionFvPatchField<Type>::updateCoeffs()
|
||||
{
|
||||
if (this->updated())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
const fvPatchField<scalar>& voidfraction = this->patch().template lookupPatchField<volScalarField, scalar>(voidfractionFieldName_);
|
||||
const scalar t = this->db().time().timeOutputValue();
|
||||
fvPatchField<Type>::operator==(1./voidfraction*uniformValue_->value(t));
|
||||
|
||||
fixedValueFvPatchField<Type>::updateCoeffs();
|
||||
}
|
||||
|
||||
|
||||
template<class Type>
|
||||
void uniformFixedValueVoidfractionFvPatchField<Type>::write(Ostream& os) const
|
||||
{
|
||||
fvPatchField<Type>::write(os);
|
||||
uniformValue_->writeData(os);
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,169 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
CFDEMcoupling - Open Source CFD-DEM coupling
|
||||
|
||||
CFDEMcoupling is part of the CFDEMproject
|
||||
www.cfdem.com
|
||||
Christoph Goniva, christoph.goniva@cfdem.com
|
||||
Copyright (C) 2011 OpenFOAM Foundation
|
||||
Copyright (C) 2012- DCS Computing GmbH,Linz
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of CFDEMcoupling.
|
||||
|
||||
CFDEMcoupling is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
CFDEMcoupling is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with CFDEMcoupling. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::uniformFixedValueVoidfractionFvPatchField
|
||||
|
||||
Description
|
||||
Foam::uniformFixedValueVoidfractionFvPatchField is an evolution of
|
||||
Foam::uniformFixedValueFvPatchField
|
||||
|
||||
SourceFiles
|
||||
uniformFixedValueVoidfractionFvPatchField.C
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifndef uniformFixedValueVoidfractionFvPatchField_H
|
||||
#define uniformFixedValueVoidfractionFvPatchField_H
|
||||
|
||||
#include "Random.H"
|
||||
#include "fixedValueFvPatchFields.H"
|
||||
#include "DataEntry.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class uniformFixedValueVoidfractionFvPatch Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class Type>
|
||||
class uniformFixedValueVoidfractionFvPatchField
|
||||
:
|
||||
public fixedValueFvPatchField<Type>
|
||||
{
|
||||
// Private data
|
||||
|
||||
autoPtr<DataEntry<Type> > uniformValue_;
|
||||
|
||||
word voidfractionFieldName_;
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
TypeName("uniformFixedValueVoidfraction");
|
||||
|
||||
|
||||
// Constructors
|
||||
|
||||
//- Construct from patch and internal field
|
||||
uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const fvPatch&,
|
||||
const DimensionedField<Type, volMesh>&
|
||||
);
|
||||
|
||||
//- Construct from patch, internal field and dictionary
|
||||
uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const fvPatch&,
|
||||
const DimensionedField<Type, volMesh>&,
|
||||
const dictionary&
|
||||
);
|
||||
|
||||
//- Construct by mapping given uniformFixedValueVoidfractionFvPatchField
|
||||
// onto a new patch
|
||||
uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const uniformFixedValueVoidfractionFvPatchField<Type>&,
|
||||
const fvPatch&,
|
||||
const DimensionedField<Type, volMesh>&,
|
||||
const fvPatchFieldMapper&
|
||||
);
|
||||
|
||||
//- Construct as copy
|
||||
uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const uniformFixedValueVoidfractionFvPatchField<Type>&
|
||||
);
|
||||
|
||||
//- Construct and return a clone
|
||||
virtual tmp<fvPatchField<Type> > clone() const
|
||||
{
|
||||
return tmp<fvPatchField<Type> >
|
||||
(
|
||||
new uniformFixedValueVoidfractionFvPatchField<Type>(*this)
|
||||
);
|
||||
}
|
||||
|
||||
//- Construct as copy setting internal field reference
|
||||
uniformFixedValueVoidfractionFvPatchField
|
||||
(
|
||||
const uniformFixedValueVoidfractionFvPatchField<Type>&,
|
||||
const DimensionedField<Type, volMesh>&
|
||||
);
|
||||
|
||||
//- Construct and return a clone setting internal field reference
|
||||
virtual tmp<fvPatchField<Type> > clone
|
||||
(
|
||||
const DimensionedField<Type, volMesh>& iF
|
||||
) const
|
||||
{
|
||||
return tmp<fvPatchField<Type> >
|
||||
(
|
||||
new uniformFixedValueVoidfractionFvPatchField<Type>(*this, iF)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
// Member functions
|
||||
|
||||
// Mapping functions
|
||||
|
||||
//- Map (and resize as needed) from self given a mapping object
|
||||
virtual void autoMap
|
||||
(
|
||||
const fvPatchFieldMapper&
|
||||
);
|
||||
|
||||
|
||||
// Evaluation functions
|
||||
|
||||
//- Update the coefficients associated with the patch field
|
||||
virtual void updateCoeffs();
|
||||
|
||||
|
||||
//- Write
|
||||
virtual void write(Ostream&) const;
|
||||
};
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#ifdef NoRepository
|
||||
# include "uniformFixedValueVoidfractionFvPatchField.C"
|
||||
#endif
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,45 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
CFDEMcoupling - Open Source CFD-DEM coupling
|
||||
|
||||
CFDEMcoupling is part of the CFDEMproject
|
||||
www.cfdem.com
|
||||
Christoph Goniva, christoph.goniva@cfdem.com
|
||||
Copyright (C) 2011 OpenFOAM Foundation
|
||||
Copyright (C) 2012- DCS Computing GmbH,Linz
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of CFDEMcoupling.
|
||||
|
||||
CFDEMcoupling is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
CFDEMcoupling is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with CFDEMcoupling. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "uniformFixedValueVoidfractionFvPatchFields.H"
|
||||
#include "addToRunTimeSelectionTable.H"
|
||||
#include "volFields.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||
|
||||
makePatchFields(uniformFixedValueVoidfraction);
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,51 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
CFDEMcoupling - Open Source CFD-DEM coupling
|
||||
|
||||
CFDEMcoupling is part of the CFDEMproject
|
||||
www.cfdem.com
|
||||
Christoph Goniva, christoph.goniva@cfdem.com
|
||||
Copyright (C) 2011 OpenFOAM Foundation
|
||||
Copyright (C) 2012- DCS Computing GmbH,Linz
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of CFDEMcoupling.
|
||||
|
||||
CFDEMcoupling is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
CFDEMcoupling is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with CFDEMcoupling. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifndef uniformFixedValueVoidfractionFvPatchFields_H
|
||||
#define uniformFixedValueVoidfractionFvPatchFields_H
|
||||
|
||||
#include "uniformFixedValueVoidfractionFvPatchField.H"
|
||||
#include "fieldTypes.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
makePatchTypeFieldTypedefs(uniformFixedValueVoidfraction);
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,52 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
CFDEMcoupling - Open Source CFD-DEM coupling
|
||||
|
||||
CFDEMcoupling is part of the CFDEMproject
|
||||
www.cfdem.com
|
||||
Christoph Goniva, christoph.goniva@cfdem.com
|
||||
Copyright (C) 2011 OpenFOAM Foundation
|
||||
Copyright (C) 2012- DCS Computing GmbH,Linz
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of CFDEMcoupling.
|
||||
|
||||
CFDEMcoupling is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
CFDEMcoupling is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with CFDEMcoupling. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#ifndef uniformFixedValueFvPatchFieldsFwd_H
|
||||
#define uniformFixedValueFvPatchFieldsFwd_H
|
||||
|
||||
#include "fieldTypes.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
template<class Type> class uniformFixedValueFvPatchField;
|
||||
|
||||
makePatchTypeFieldTypedefs(uniform);
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -1,5 +1,6 @@
|
||||
cfdemCloud = cfdemCloud
|
||||
forceModels = subModels/forceModel
|
||||
forceModelsMS = subModels/forceModelMS
|
||||
IOModels = subModels/IOModel
|
||||
voidFractionModels = subModels/voidFractionModel
|
||||
locateModels = subModels/locateModel
|
||||
@ -13,34 +14,53 @@ liggghtsCommandModels = subModels/liggghtsCommandModel
|
||||
|
||||
$(cfdemCloud)/cfdemCloud.C
|
||||
derived/cfdemCloudIB/cfdemCloudIB.C
|
||||
derived/cfdemCloudMS/cfdemCloudMS.C
|
||||
|
||||
$(forceModels)/forceModel/forceModel.C
|
||||
$(forceModels)/forceModel/newForceModel.C
|
||||
$(forceModels)/noDrag/noDrag.C
|
||||
$(forceModels)/DiFeliceDrag/DiFeliceDrag.C
|
||||
$(forceModels)/DiFeliceDragNLift/DiFeliceDragNLift.C
|
||||
$(forceModels)/GidaspowDrag/GidaspowDrag.C
|
||||
$(forceModels)/SchillerNaumannDrag/SchillerNaumannDrag.C
|
||||
$(forceModels)/Archimedes/Archimedes.C
|
||||
$(forceModels)/ArchimedesIB/ArchimedesIB.C
|
||||
$(forceModels)/interface/interface.C
|
||||
$(forceModels)/ShirgaonkarIB/ShirgaonkarIB.C
|
||||
$(forceModels)/fieldTimeAverage/fieldTimeAverage.C
|
||||
$(forceModels)/fieldBound/fieldBound.C
|
||||
$(forceModels)/volWeightedAverage/volWeightedAverage.C
|
||||
$(forceModels)/totalMomentumExchange/totalMomentumExchange.C
|
||||
$(forceModels)/KochHillDrag/KochHillDrag.C
|
||||
$(forceModels)/LaEuScalarLiquid/LaEuScalarLiquid.C
|
||||
$(forceModels)/LaEuScalarTemp/LaEuScalarTemp.C
|
||||
$(forceModels)/LaEuScalarDust/LaEuScalarDust.C
|
||||
$(forceModels)/virtualMassForce/virtualMassForce.C
|
||||
$(forceModels)/gradPForce/gradPForce.C
|
||||
$(forceModels)/gradULiftForce/gradULiftForce.C
|
||||
$(forceModels)/viscForce/viscForce.C
|
||||
$(forceModels)/MeiLift/MeiLift.C
|
||||
$(forceModels)/KochHillDragNLift/KochHillDragNLift.C
|
||||
$(forceModels)/solidsPressureForce/solidsPressureForce.C
|
||||
$(forceModels)/periodicPressure/periodicPressure.C
|
||||
$(forceModels)/averageSlipVel/averageSlipVel.C
|
||||
|
||||
$(forceModelsMS)/forceModelMS/forceModelMS.C
|
||||
$(forceModelsMS)/forceModelMS/newForceModelMS.C
|
||||
$(forceModelsMS)/DiFeliceDragMS/DiFeliceDragMS.C
|
||||
|
||||
$(IOModels)/IOModel/IOModel.C
|
||||
$(IOModels)/IOModel/newIOModel.C
|
||||
$(IOModels)/noIO/noIO.C
|
||||
$(IOModels)/basicIO/basicIO.C
|
||||
$(IOModels)/trackIO/trackIO.C
|
||||
$(IOModels)/sophIO/sophIO.C
|
||||
|
||||
$(voidFractionModels)/voidFractionModel/voidFractionModel.C
|
||||
$(voidFractionModels)/voidFractionModel/newVoidFractionModel.C
|
||||
$(voidFractionModels)/centreVoidFraction/centreVoidFraction.C
|
||||
$(voidFractionModels)/dividedVoidFraction/dividedVoidFraction.C
|
||||
$(voidFractionModels)/dividedVoidFractionMS/dividedVoidFractionMS.C
|
||||
$(voidFractionModels)/bigParticleVoidFraction/bigParticleVoidFraction.C
|
||||
$(voidFractionModels)/GaussVoidFraction/GaussVoidFraction.C
|
||||
$(voidFractionModels)/IBVoidFraction/IBVoidFraction.C
|
||||
@ -56,16 +76,19 @@ $(locateModels)/engineSearchIB/engineSearchIB.C
|
||||
$(meshMotionModels)/meshMotionModel/meshMotionModel.C
|
||||
$(meshMotionModels)/meshMotionModel/newMeshMotionModel.C
|
||||
$(meshMotionModels)/noMeshMotion/noMeshMotion.C
|
||||
$(meshMotionModels)/DEMdrivenMeshMotion/DEMdrivenMeshMotion.C
|
||||
|
||||
$(momCoupleModels)/momCoupleModel/momCoupleModel.C
|
||||
$(momCoupleModels)/momCoupleModel/newMomCoupleModel.C
|
||||
$(momCoupleModels)/explicitCouple/explicitCouple.C
|
||||
$(momCoupleModels)/explicitCoupleSource/explicitCoupleSource.C
|
||||
$(momCoupleModels)/implicitCouple/implicitCouple.C
|
||||
$(momCoupleModels)/noCouple/noCouple.C
|
||||
|
||||
$(regionModels)/regionModel/regionModel.C
|
||||
$(regionModels)/regionModel/newRegionModel.C
|
||||
$(regionModels)/allRegion/allRegion.C
|
||||
$(regionModels)/differentialRegion/differentialRegion.C
|
||||
|
||||
$(dataExchangeModels)/dataExchangeModel/dataExchangeModel.C
|
||||
$(dataExchangeModels)/dataExchangeModel/newDataExchangeModel.C
|
||||
|
||||
@ -1,5 +1,7 @@
|
||||
word CFDEMversion="cfdem-2.4.3";
|
||||
word CFDEMversion="cfdem-2.4.4";
|
||||
word compatibleLIGGGHTSversion="2.0.4";
|
||||
|
||||
Info << "\ncfdem version: " << CFDEMversion << "\n" << endl;
|
||||
Info << "\nCFDEMcoupling version: " << CFDEMversion << "\n" << endl;
|
||||
Info << "\n, compatible to LIGGGHTS version: " << compatibleLIGGGHTSversion << "\n" << endl;
|
||||
|
||||
|
||||
|
||||
@ -30,7 +30,7 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.9
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
@ -40,11 +40,12 @@ timestep 0.00003
|
||||
fix gravi all gravity 981 vector 0.0 0.0 -1.0
|
||||
|
||||
#walls
|
||||
fix xwalls all wall/gran/hertz/history 1 0 xplane 0 1 1
|
||||
#fix ywalls all wall/gran/hertz/history 1 0 yplane -1 1f 1
|
||||
fix ywalls all wall/gran/hertz/history 1 0 yplane 0 1 1
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0 4 1
|
||||
#--modified C.K. deleted z-wall
|
||||
fix xwalls1 all wall/gran/hertz/history primitive type 1 xplane 0.
|
||||
fix xwalls2 all wall/gran/hertz/history primitive type 1 xplane 1.
|
||||
fix ywalls1 all wall/gran/hertz/history primitive type 1 yplane 0.
|
||||
fix ywalls2 all wall/gran/hertz/history primitive type 1 yplane 1.
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 4.
|
||||
|
||||
#-import mesh from cad:
|
||||
#fix cad1 all mesh/gran hopperGenauerSALOME.stl 1 1.0 0. 0. 0. 0. 180. 0.
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# Pour granular particles into chute container, then induce flow
|
||||
|
||||
echo both
|
||||
atom_style granular
|
||||
atom_modify map array
|
||||
communicate single vel yes
|
||||
@ -24,7 +24,7 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
@ -32,20 +32,19 @@ timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
#walls
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0.0 0.0553 1
|
||||
fix cylwalls all wall/gran/hertz/history 1 0 zcylinder 0.01385 1
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.0
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 0.0553
|
||||
fix cylwalls all wall/gran/hertz/history primitive type 1 zcylinder 0.01385 0. 0. tangential_damping off
|
||||
|
||||
#cfd coupling
|
||||
#fix cfd all couple/cfd
|
||||
#particle distributions and insertion
|
||||
region bc cylinder z 0.0 0.0 0.012 0. 0.055 units box
|
||||
fix pts1 all particletemplate/sphere 1 atom_type 1 density constant 200 radius constant 0.0005
|
||||
fix pdd1 all particledistribution/discrete 1. 1 pts1 1.0
|
||||
|
||||
#particle insertion
|
||||
group nve_group region reg
|
||||
region bc cylinder z 0.0 0.0 0.012 0.02 0.03 units box
|
||||
fix ins nve_group pour 10000 1 1 vol 0.7 100 diam uniform 0.001 0.001 dens uniform 200 200 vel uniform 0. 0. 0. 0. -1.0 region bc
|
||||
fix ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -1. insert_every once overlapcheck yes all_in yes particles_in_region 10000 region bc
|
||||
|
||||
#apply nve integration to all particles that are inserted as single particles
|
||||
fix integr nve_group nve/sphere
|
||||
|
||||
fix integr all nve/sphere
|
||||
|
||||
#screen output
|
||||
compute 1 all erotate/sphere
|
||||
|
||||
@ -28,16 +28,16 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
#walls
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0.0 0.0553 1
|
||||
fix cylwalls all wall/gran/hertz/history 1 0 zcylinder 0.01385 1
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.0
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 0.0553
|
||||
fix cylwalls all wall/gran/hertz/history primitive type 1 zcylinder 0.01385 0. 0. tangential_damping off
|
||||
|
||||
# change the particles density
|
||||
set group all density 2000
|
||||
@ -47,18 +47,17 @@ fix cfd all couple/cfd couple_every 100 mpi
|
||||
fix cfd2 all couple/cfd/force
|
||||
|
||||
#apply nve integration to all particles that are inserted as single particles
|
||||
#group nve_group region reg
|
||||
fix integr nve_group nve/sphere
|
||||
fix integr all nve/sphere
|
||||
|
||||
#center of mass
|
||||
compute centerOfMass all com
|
||||
|
||||
#compute total dragforce
|
||||
#compute dragtotal all reduce sum f_dragforce[1] f_dragforce[2] f_dragforce[3]
|
||||
compute dragtotal all reduce sum f_dragforce[1] f_dragforce[2] f_dragforce[3]
|
||||
|
||||
#screen output
|
||||
compute 1 all erotate/sphere
|
||||
thermo_style custom step atoms ke c_1 vol c_centerOfMass[3] #c_dragtotal[1] c_dragtotal[2] c_dragtotal[3]
|
||||
thermo_style custom step atoms ke c_1 vol c_centerOfMass[3] c_dragtotal[1] c_dragtotal[2] c_dragtotal[3]
|
||||
thermo 10
|
||||
thermo_modify lost ignore norm no
|
||||
compute_modify thermo_temp dynamic yes
|
||||
@ -66,7 +65,7 @@ compute_modify thermo_temp dynamic yes
|
||||
#insert the first particles so that dump is not empty
|
||||
dump myDump all stl 1 post/dump_*.stl
|
||||
#run 1
|
||||
dump dmp all custom 5000 ../DEM/post/dump*.liggghts_restart id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius
|
||||
dump dmp all custom 5000 ../DEM/post/dump*.liggghts_restart id type type x y z vx vy vz fx fy fz f_dragforce[1] f_dragforce[2] f_dragforce[3] radius
|
||||
undump myDump
|
||||
|
||||
run 1
|
||||
|
||||
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
# Pour granular particles into chute container, then induce flow
|
||||
|
||||
echo both
|
||||
atom_style granular
|
||||
atom_modify map array
|
||||
communicate single vel yes
|
||||
@ -24,7 +24,7 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
@ -32,19 +32,22 @@ timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
#walls
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0.0 0.0553 1
|
||||
fix cylwalls all wall/gran/hertz/history 1 0 zcylinder 0.01385 1
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.0
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 0.0553
|
||||
fix cylwalls all wall/gran/hertz/history primitive type 1 zcylinder 0.01385 0. 0. tangential_damping off
|
||||
|
||||
#cfd coupling
|
||||
#fix cfd all couple/cfd
|
||||
|
||||
#particle insertion
|
||||
group nve_group region reg
|
||||
region bc cylinder z 0.0 0.0 0.012 0.02 0.03 units box
|
||||
fix ins nve_group pour 10000 1 1 vol 0.7 100 diam uniform 0.001 0.001 dens uniform 200 200 vel uniform 0. 0. 0. 0. -1.0 region bc
|
||||
#particle distributions and insertion
|
||||
region bc cylinder z 0.0 0.0 0.012 0. 0.055 units box
|
||||
fix pts1 all particletemplate/sphere 1 atom_type 1 density constant 200 radius constant 0.0005
|
||||
fix pdd1 all particledistribution/discrete 1. 1 pts1 1.0
|
||||
|
||||
fix ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -1. insert_every once overlapcheck yes all_in yes particles_in_region 10000 region bc
|
||||
|
||||
#apply nve integration to all particles that are inserted as single particles
|
||||
fix integr nve_group nve/sphere
|
||||
fix integr all nve/sphere
|
||||
|
||||
|
||||
#screen output
|
||||
|
||||
@ -28,7 +28,7 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
@ -36,8 +36,10 @@ timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
#walls
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0.0 0.0553 1
|
||||
fix cylwalls all wall/gran/hertz/history 1 0 zcylinder 0.01385 1
|
||||
#walls
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.0
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 0.0553
|
||||
fix cylwalls all wall/gran/hertz/history primitive type 1 zcylinder 0.01385 0. 0. tangential_damping off
|
||||
|
||||
# change the particles density
|
||||
set group all density 2000
|
||||
@ -47,8 +49,7 @@ fix cfd all couple/cfd couple_every 100 mpi
|
||||
fix cfd2 all couple/cfd/force
|
||||
|
||||
#apply nve integration to all particles that are inserted as single particles
|
||||
#group nve_group region reg
|
||||
fix integr nve_group nve/sphere
|
||||
fix integr all nve/sphere
|
||||
|
||||
#center of mass
|
||||
compute centerOfMass all com
|
||||
|
||||
@ -28,7 +28,7 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
@ -36,8 +36,9 @@ timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
#walls
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0.0 0.0553 1
|
||||
fix cylwalls all wall/gran/hertz/history 1 0 zcylinder 0.01385 1
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.0
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 0.0553
|
||||
fix cylwalls all wall/gran/hertz/history primitive type 1 zcylinder 0.01385 0. 0. tangential_damping off
|
||||
|
||||
# change the particles density
|
||||
set group all density 2000
|
||||
@ -47,8 +48,7 @@ fix cfd all couple/cfd couple_every 100 mpi
|
||||
fix cfd2 all couple/cfd/force
|
||||
|
||||
#apply nve integration to all particles that are inserted as single particles
|
||||
#group nve_group region reg
|
||||
fix integr nve_group nve/sphere
|
||||
fix integr all nve/sphere
|
||||
|
||||
#center of mass
|
||||
compute centerOfMass all com
|
||||
|
||||
Binary file not shown.
@ -18,3 +18,8 @@ dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
dummyfile
|
||||
|
||||
@ -27,17 +27,20 @@ fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
fix m5 all property/global characteristicVelocity scalar 2.0
|
||||
|
||||
#pair style
|
||||
pair_style gran/hooke 1 0 #Hookean without cohesion
|
||||
pair_style gran/hooke/history #Hookean without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0.0 -1.0 0.0
|
||||
|
||||
#walls
|
||||
fix xwalls all wall/gran/hooke 1 0 xplane 0.0 0.1 1
|
||||
fix ywalls all wall/gran/hooke 1 0 yplane 0 0.1 1
|
||||
fix zwalls all wall/gran/hooke 1 0 zplane 0 0.01 1
|
||||
#walls (liggghts 2.0)
|
||||
fix xwalls1 all wall/gran/hooke/history primitive type 1 xplane 0.0
|
||||
fix xwalls2 all wall/gran/hooke/history primitive type 1 xplane 0.1
|
||||
fix ywalls1 all wall/gran/hooke/history primitive type 1 yplane 0.0
|
||||
fix ywalls2 all wall/gran/hooke/history primitive type 1 yplane 0.1
|
||||
fix zwalls1 all wall/gran/hooke/history primitive type 1 zplane 0.0
|
||||
fix zwalls2 all wall/gran/hooke/history primitive type 1 zplane 0.01
|
||||
|
||||
#-import mesh from cad:
|
||||
#fix cad1 all mesh/gran hopperGenauerSALOME.stl 1 1.0 0. 0. 0. 0. 180. 0.
|
||||
|
||||
@ -38,7 +38,7 @@ meshMotionModel noMeshMotion;
|
||||
|
||||
regionModel allRegion;
|
||||
|
||||
IOModel off;
|
||||
IOModel basicIO;
|
||||
|
||||
dataExchangeModel twoWayMPI;//twoWayFiles;//oneWayVTK;//
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@ clc;
|
||||
fprintf('\ncalc Ergun eqn:\n')
|
||||
dp = 0.022; % particle diameter
|
||||
phip = 1; % sphericity
|
||||
epsilon = 0.41; % voidfraction
|
||||
epsilon = 0.4436; % voidfraction
|
||||
U = 1; % superficial velocity
|
||||
L = 1; % length of bed
|
||||
rhoG = 1.188; % density in kg/m
|
||||
|
||||
@ -13,9 +13,6 @@ processors 1 1 2
|
||||
#read the restart file
|
||||
read_restart ../DEM/liggghts.restart
|
||||
|
||||
#region reg block 0 0.1 0 0.1 0 0.1 units box
|
||||
#create_box 1 reg
|
||||
|
||||
neighbor 0.003 bin
|
||||
neigh_modify delay 0 binsize 0.01
|
||||
|
||||
@ -28,7 +25,7 @@ fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#pair style
|
||||
pair_style gran/hertz/history 1 0 #Hertzian without cohesion
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
@ -36,15 +33,19 @@ timestep 0.00001
|
||||
fix gravi all gravity 9.81 vector 0. 0. -1.
|
||||
|
||||
#walls
|
||||
fix xwalls all wall/gran/hertz/history 1 0 xplane 0. 0.1 1
|
||||
fix ywalls all wall/gran/hertz/history 1 0 yplane 0. 0.1 1
|
||||
fix zwalls all wall/gran/hertz/history 1 0 zplane 0. 1.1 1 #temperature 283
|
||||
#walls
|
||||
fix xwalls1 all wall/gran/hertz/history primitive type 1 xplane 0.
|
||||
fix xwalls2 all wall/gran/hertz/history primitive type 1 xplane 0.1
|
||||
fix ywalls1 all wall/gran/hertz/history primitive type 1 yplane 0.
|
||||
fix ywalls2 all wall/gran/hertz/history primitive type 1 yplane 0.1
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 1.1
|
||||
|
||||
|
||||
#heat transfer
|
||||
fix ftco all property/global thermalConductivity peratomtype 5. # lambda in [W/(K*m)]
|
||||
fix ftca all property/global thermalCapacity peratomtype 0.1 # cp in [J/(kg*K)]
|
||||
fix heattransfer all heat/gran 600.
|
||||
fix heattransfer all heat/gran initial_temperature 600.
|
||||
|
||||
#set particle temperature for the bed
|
||||
run 0
|
||||
|
||||
73
tutorials/cfdemSolverPisoScalar/packedBedTemp/DEM/in.packing
Normal file
73
tutorials/cfdemSolverPisoScalar/packedBedTemp/DEM/in.packing
Normal file
@ -0,0 +1,73 @@
|
||||
#Particle packing by insertion and successive growing of particles
|
||||
|
||||
atom_style granular
|
||||
atom_modify map array
|
||||
boundary m m m
|
||||
newton off
|
||||
echo both
|
||||
|
||||
communicate single vel yes
|
||||
|
||||
units si
|
||||
processors 1 1 2
|
||||
|
||||
region reg block 0. 0.1 0. 0.1 0. 1.1 units box
|
||||
create_box 1 reg
|
||||
|
||||
neighbor 0.002 bin
|
||||
neigh_modify delay 0
|
||||
|
||||
|
||||
#Material properties required for new pair styles
|
||||
|
||||
fix m1 all property/global youngsModulus peratomtype 5.e6
|
||||
fix m2 all property/global poissonsRatio peratomtype 0.45
|
||||
fix m3 all property/global coefficientRestitution peratomtypepair 1 0.3
|
||||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.5
|
||||
|
||||
#New pair style
|
||||
pair_style gran/hertz/history #Hertzian without cohesion
|
||||
pair_coeff * *
|
||||
|
||||
timestep 0.00001
|
||||
|
||||
#walls
|
||||
fix xwalls1 all wall/gran/hertz/history primitive type 1 xplane 0.
|
||||
fix xwalls2 all wall/gran/hertz/history primitive type 1 xplane 0.1
|
||||
fix ywalls1 all wall/gran/hertz/history primitive type 1 yplane 0.
|
||||
fix ywalls2 all wall/gran/hertz/history primitive type 1 yplane 0.1
|
||||
fix zwalls1 all wall/gran/hertz/history primitive type 1 zplane 0.
|
||||
fix zwalls2 all wall/gran/hertz/history primitive type 1 zplane 1.1
|
||||
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
#heat transfer
|
||||
fix ftco all property/global thermalConductivity peratomtype 5.
|
||||
fix ftca all property/global thermalCapacity peratomtype 10.
|
||||
fix heattransfer all heat/gran initial_temperature 263.
|
||||
|
||||
#particle distributions and insertion
|
||||
region bc block 0. 0.1 0. 0.1 0. 1.1 units box
|
||||
fix pts1 all particletemplate/sphere 1 atom_type 1 density constant 2500 radius constant 0.011
|
||||
fix pdd1 all particledistribution/discrete 1. 1 pts1 1.0
|
||||
|
||||
fix ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -3. insert_every 10000 overlapcheck yes all_in yes particles_in_region 1005 region bc
|
||||
|
||||
#apply nve integration to all particles that are inserted as single particles
|
||||
fix integr all nve/sphere
|
||||
|
||||
#output settings, include total thermal energy
|
||||
compute 1 all erotate/sphere
|
||||
thermo_style custom step atoms ke c_1 f_heattransfer vol
|
||||
thermo 1000
|
||||
thermo_modify lost ignore norm no
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
#insert the first particles
|
||||
run 1
|
||||
dump dmp all custom 1000 post/dump.packing id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius f_heattransfer[0] f_heatFlux[0]
|
||||
|
||||
run 150000
|
||||
|
||||
write_restart liggghts.restart
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user