except turbulence and lagrangian which will also be updated shortly.
For example in the nonNewtonianIcoFoam offsetCylinder tutorial the viscosity
model coefficients may be specified in the corresponding "<type>Coeffs"
sub-dictionary:
transportModel CrossPowerLaw;
CrossPowerLawCoeffs
{
nu0 [0 2 -1 0 0 0 0] 0.01;
nuInf [0 2 -1 0 0 0 0] 10;
m [0 0 1 0 0 0 0] 0.4;
n [0 0 0 0 0 0 0] 3;
}
BirdCarreauCoeffs
{
nu0 [0 2 -1 0 0 0 0] 1e-06;
nuInf [0 2 -1 0 0 0 0] 1e-06;
k [0 0 1 0 0 0 0] 0;
n [0 0 0 0 0 0 0] 1;
}
which allows a quick change between models, or using the simpler
transportModel CrossPowerLaw;
nu0 [0 2 -1 0 0 0 0] 0.01;
nuInf [0 2 -1 0 0 0 0] 10;
m [0 0 1 0 0 0 0] 0.4;
n [0 0 0 0 0 0 0] 3;
if quick switching between models is not required.
To support this more convenient parameter specification the inconsistent
specification of seedSampleSet in the streamLine and wallBoundedStreamLine
functionObjects had to be corrected from
// Seeding method.
seedSampleSet uniform; //cloud; //triSurfaceMeshPointSet;
uniformCoeffs
{
type uniform;
axis x; //distance;
// Note: tracks slightly offset so as not to be on a face
start (-1.001 -0.05 0.0011);
end (-1.001 -0.05 1.0011);
nPoints 20;
}
to the simpler
// Seeding method.
seedSampleSet
{
type uniform;
axis x; //distance;
// Note: tracks slightly offset so as not to be on a face
start (-1.001 -0.05 0.0011);
end (-1.001 -0.05 1.0011);
nPoints 20;
}
which also support the "<type>Coeffs" form
// Seeding method.
seedSampleSet
{
type uniform;
uniformCoeffs
{
axis x; //distance;
// Note: tracks slightly offset so as not to be on a face
start (-1.001 -0.05 0.0011);
end (-1.001 -0.05 1.0011);
nPoints 20;
}
}
54 lines
1.7 KiB
C++
54 lines
1.7 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
| ========= | |
|
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
| \\ / O peration | Version: dev |
|
|
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
| \\/ M anipulation | |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
version 2.0;
|
|
format ascii;
|
|
class dictionary;
|
|
object dynamicMeshDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
dynamicFvMesh dynamicRefineFvMesh;
|
|
|
|
// Refine every refineInterval timesteps
|
|
refineInterval 1;
|
|
|
|
// Maximum refinement level (starts from 0)
|
|
maxRefinement 2;
|
|
|
|
// Maximum cell limit (approximate)
|
|
maxCells 10000;
|
|
|
|
// volScalarField to base refinement on
|
|
field normalisedGradP;
|
|
|
|
nBufferLayers 1;
|
|
|
|
dumpLevel true;
|
|
|
|
lowerRefineLevel 0.5;
|
|
upperRefineLevel 1.5;
|
|
|
|
unrefineLevel 0.5;
|
|
|
|
nBufferLayers 1;
|
|
// Newly introduced patch points optionally get projected onto a surface
|
|
//projectSurfaces ("fixedWalls4.stl");
|
|
//projectPatches (fixedWalls);
|
|
// Maximum project distance
|
|
//projectDistance 1;
|
|
|
|
// Fluxes to adapt. For newly created faces or split faces the flux
|
|
// gets estimated from an interpolated volVectorField ('velocity')
|
|
// First is name of the flux to adapt, second is velocity that will
|
|
// be interpolated and inner-producted with the face area vector.
|
|
correctFluxes ((phi rhoU) (phi_0 none));
|
|
|
|
// ************************************************************************* //
|