45 const dictionary& initialPointsDict,
48 const conformationSurfaces& geometryToConformTo,
49 const cellShapeControl& cellShapeControls,
50 const autoPtr<backgroundMeshDecomposition>& decomposition
63 pointFileName_(detailsDict().
get<fileName>(
"pointFile").
expand()),
64 insideOutsideCheck_(detailsDict().
get<Switch>(
"insideOutsideCheck")),
65 randomiseInitialGrid_(detailsDict().
get<Switch>(
"randomiseInitialGrid")),
66 randomPerturbationCoeff_
68 detailsDict().
get<scalar>(
"randomPerturbationCoeff")
71 Info<<
" Inside/Outside check is " << insideOutsideCheck_.c_str()
85 pointFileName_.
name(),
92 Info<<
" Inserting points from file " << pointFileName_ <<
endl;
103 <<
"Point file contain no points"
123 pointFileName_.
name(),
124 time().caseConstant(),
134 <<
"Point file contain no points"
149 bool foundAlready =
false;
157 allProcPt[proci][ptI] =
false;
159 else if (allProcPt[proci][ptI])
173 <<
"Cannot find points file " << pointsIO.objectPath()
180 if (insideOutsideCheck_)
198 if (randomiseInitialGrid_)
201 randomPerturbationCoeff_
204 randomPerturbationCoeff_
207 randomPerturbationCoeff_
221 reduce(nPointsRejected, sumOp<label>());
226 Info<<
" " << nPointsRejected <<
" points rejected from "
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
label nProcs() const noexcept
Number of ranks associated with PstreamBuffers.
static void allGatherList(const List< commsStruct > &comms, List< T > &values, const int tag, const label comm)
Type sample01()
Return a sample whose components lie in the range [0,1].
bool empty() const noexcept
True if the UList is empty (ie, size() is zero)
void size(const label n)
Older name for setAddressableSize.
static bool & parRun() noexcept
Test if this a parallel run.
autoPtr< mapDistribute > distributePoints(List< PointType > &points) const
Distribute supplied the points to the appropriate processor.
static std::string name(const std::string &str)
Return basename (part beyond last /), including its extension.
const Time & time() const
scalar minimumSurfaceDistanceCoeffSqr_
Only allow the placement of initial points that are within the.
const conformationSurfaces & geometryToConformTo() const
const cellShapeControl & cellShapeControls() const
const backgroundMeshDecomposition & decomposition() const
Inserts points at locations specified in a pointFile into the surfaces to be conformed to of the conf...
virtual List< Vb::Point > initialPoints() const
Return the initial points for the conformalVoronoiMesh.
int myProcNo() const noexcept
Return processor number.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
List< ReturnType > get(const UPtrList< T > &list, const AccessOp &aop)
string expand(const std::string &s, const HashTable< string > &mapping, const char sigil='$')
void inplaceSubset(const BoolListType &select, ListType &input, const bool invert=false)
Inplace extract elements of the input list when select is true.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
messageStream Info
Information stream (stdout output on master, null elsewhere)
vectorField pointField
pointField is a vectorField.
vector point
Point is a vector.
Ostream & endl(Ostream &os)
Add newline and flush stream.
void reduce(const List< UPstream::commsStruct > &comms, T &value, const BinaryOp &bop, const int tag, const label comm)
vectorIOField pointIOField
pointIOField is a vectorIOField.
List< bool > boolList
A List of bools.
errorManipArg< error, int > exit(error &err, const int errNo=1)
#define forAll(list, i)
Loop across all elements in list.