0% found this document useful (0 votes)
107 views

Dynamic Mesh Dict

This document contains configuration settings for dynamic mesh motion and remeshing using the OpenFOAM toolbox. It specifies the solver, mesh libraries, optimization options for mesh quality improvement including the metric, algorithm and termination criteria. It also defines patches for fixed displacements, coupled motion, and refinement/modification controls.

Uploaded by

Mohammed Mohie
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
107 views

Dynamic Mesh Dict

This document contains configuration settings for dynamic mesh motion and remeshing using the OpenFOAM toolbox. It specifies the solver, mesh libraries, optimization options for mesh quality improvement including the metric, algorithm and termination criteria. It also defines patches for fixed displacements, coupled motion, and refinement/modification controls.

Uploaded by

Mohammed Mohie
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

/*--------------------------------*- C++ -*----------------------------------*\

| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.5-dev |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object dynamicMeshDict;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solver mesquiteMotionSolver;

dynamicFvMesh dynamicTopoFvMesh;

dynamicFvMeshLibs ("libdynamicTopoFvMesh.so");

mesquiteOptions
{
// Optimization metric
optMetric AspectRatioGamma;

// Objective function
objFunction LPtoP;

// Optimization algorithm
optAlgorithm FeasibleNewton;

// Termination criteria sub-dictionary (takes default values if not


specified)
// Specifying an empty sub-dictionary terminates with available options
tcInner
{
absGradL2 1e-4;
cpuTime 1.25;
}
// tcOuter
// {}

// For composite functions, two objectives need to be specified


firstFunction LPtoP;
secondFunction LInf;

// For scaled functions, scale and objective needs to be specified


// scaleFunction PMeanP;
// scale 1.5;

// Power value for the LPtoP objective function


pValue 2;
power 2;

// Specify a tolerance for the CG solver


tolerance 1e-2;

// Specify number of CG sweeps


nSweeps 1;

// Specify slip patches for the motionSolver


slipPatches
{
// ball;
// outTop;
// outBottom;
// outLeft;
// outRight;
// outFront;
// outBack;
}

// Set run-time debug level


debug 0;

// Specify interval for surface smoothing


surfInterval 1;

//- Specify fixedValue patches for the motionSolver


fixedValuePatches
{
ball
{
type oscillatingDisplacement;
amplitude (0.1 0 0);
axis (1 0 0);
origin (2.5 0 0);
angle0 0.0;
omega 0.005;
value uniform (0 0 0);
}
}

}
// If two patches are coupled for motion/topology,
// specify them here.
//coupledPatches
//{
// ball ballShadow;
//}

// Options for dynamicTopoFvMesh


dynamicTopoFvMesh
{
allOptionsMandatory no;

// Specify the number of threads


threads 1;

// Specify re-meshing interval


interval 1;
// Options for edge-bisection/collapse
edgeRefinement yes;

refinementOptions
{
collapseRatio 0.7;
bisectionRatio 1.5;
growthFactor 1.02;

// In 3D, sliverThreshold specifies the


// quality criteria for sliver removal.
sliverThreshold 0.4;

// By default, existing boundary edge-lengths are used for length-scales


// Length-scale can be fixed for certain patches.
fixedLengthScalePatches
{
ball 0.1;
}

freeLengthScalePatches
{
outTop; outBottom; outLeft; outRight; outFront; outBack;

noModificationPatches
{
outTop; outBottom; outLeft; outRight; outFront; outBack;
}

// If the number of bisections/collapses are to be limited, set this option


// maxModifications 5000;
}

// Tetrahedral mesh quality metric


tetMetric Knupp;

// Avoid 2-2 swapping on certain patches


noSwapPatches
{ball;}
}

// ************************************************************************* //

You might also like