It's possible to define some user defined regions in space for particular refinement.
They have to be declared in geometry dictionary (after the STL and its patches) and there is a dedicated dictionary in castellated dictionary to set the required refinement level.
It defines a box in the space by bounding points.
refinementBox //USER DEFINED REGION NAME
{
type searchableBox;
min (-1.5 -0.5 -0.5);
max ( 1.5 0.5 0.5);
}
It defines a sphere in the space by center and radius.
refinementSphere //USER DEFINED REGION NAME
{
type searchableSphere;
centre (0 0 0);
radius 2.5;
}
It defines a cylinder in the space by height vector and radius.
refinementCylinder //USER DEFINED REGION NAME
{
type searchableCylinder;
point1 (0 0 0); // Height
point2 (2 0 0); // Vector
radius 2.5;
}
It defines a plate in the space by origin and span. It has no thickness and can be used only with distance mode
refinementPlate //USER DEFINED REGION NAME
{
type searchablePlate;
origin (0 0 0);
span (1 2 0); // One dimension must be 0 (has no thickness)
}
It defines a plane in the space by point and normal vector. <Can be used only in distance mode.>
refinementPlane_PaN //USER DEFINED REGION NAME
{
type searchablePlane;
planeType pointAndNormal;
pointAndNormalDict
{
basePoint (0 0 0);
normalVector (1 0 0);
}
}
It defines a plane in the space by three points. <Can be used only in distance mode.>
refinementPlane_3p //USER DEFINED REGION NAME
{
type searchablePlane;
planeType embeddedPoints;
embeddedPoints
{
point1 (0 0 0);
point2 (1 0 1);
point3 (1 0 2);
}
}