65 searchableSurface::
New
70 dict.getOrDefault(
"name",
mesh.objectRegistry::db().
name()),
73 mesh.objectRegistry::db(),
104 for (label facei = 0; facei < mesh_.nInternalFaces(); facei++)
106 start[facei] = mesh_.cellCentres()[mesh_.faceOwner()[facei]];
107 end[facei] = mesh_.cellCentres()[mesh_.faceNeighbour()[facei]];
119 const polyBoundaryMesh&
pbm = mesh_.boundaryMesh();
123 const polyPatch&
pp =
pbm[patchi];
129 label facei =
pp.start()+i;
130 start[facei] = mesh_.cellCentres()[mesh_.faceOwner()[facei]];
131 end[facei] = neighbourCellCentres[facei-mesh_.nInternalFaces()];
138 label facei =
pp.start()+i;
139 start[facei] = mesh_.cellCentres()[mesh_.faceOwner()[facei]];
140 end[facei] = mesh_.faceCentres()[facei];
145 List<pointIndexHit> hits;
146 surfacePtr_().findLine(start, end, hits);
148 surfacePtr_().getNormal(hits, normals);
152 for (label facei = 0; facei < mesh_.nInternalFaces(); facei++)
154 if (hits[facei].hit())
156 faceToZoneID[facei] = zoneID;
158 faceToFlip[facei] = ((normals[facei] & d) < 0);
163 const polyPatch&
pp =
pbm[patchi];
169 label facei =
pp.start()+i;
170 if (hits[facei].hit())
172 faceToZoneID[facei] = zoneID;
174 faceToFlip[facei] = ((normals[facei] & d) < 0);
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
uindirectPrimitivePatch pp(UIndirectList< face >(mesh.faces(), faceLabels), mesh.points())
const polyBoundaryMesh & pbm
virtual void select(const label, labelList &, boolList &) const =0
Selects all (internal or coupled) faces intersecting the searchableSurface.
searchableSurfaceSelection(const word &name, const fvMesh &mesh, const dictionary &dict)
Construct from dictionary.
virtual ~searchableSurfaceSelection()
Destructor.
virtual void select(const label zoneID, labelList &, boolList &) const
constant condensation/saturation model.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
List< ReturnType > get(const UPtrList< T > &list, const AccessOp &aop)
List of values generated by applying the access operation to each list item.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
List< label > labelList
A List of labels.
Field< vector > vectorField
Specialisation of Field<T> for vector.
List< bool > boolList
A List of bools.
vectorField pointField
pointField is a vectorField.
#define forAll(list, i)
Loop across all elements in list.