35 #ifndef faceAreaWeightAMI_H 36 #define faceAreaWeightAMI_H 49 template<
class SourcePatch,
class TargetPatch>
52 public AMIMethod<SourcePatch, TargetPatch>
59 const bool restartUncoveredSourceFace_;
89 const label tgtStartFacei,
116 bool errorOnNotFound =
true 125 const label srcFacei,
141 const SourcePatch& srcPatch,
142 const TargetPatch& tgtPatch,
146 const bool reverseTarget =
false,
147 const bool requireMatch =
true,
148 const bool restartUncoveredSourceFace =
true virtual void calcAddressing(List< DynamicList< label >> &srcAddress, List< DynamicList< scalar >> &srcWeights, List< DynamicList< label >> &tgtAddress, List< DynamicList< scalar >> &tgtWeights, label srcFacei, label tgtFacei)
Calculate addressing and weights using temporary storage.
virtual scalar interArea(const label srcFacei, const label tgtFacei) const
Area of intersection between source and target faces.
virtual bool processSourceFace(const label srcFacei, const label tgtStartFacei, DynamicList< label > &nbrFaces, DynamicList< label > &visitedFaces, List< DynamicList< label >> &srcAddr, List< DynamicList< scalar >> &srcWght, List< DynamicList< label >> &tgtAddr, List< DynamicList< scalar >> &tgtWght)
Determine overlap contributions for source face srcFacei.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
virtual ~faceAreaWeightAMI()
Destructor.
virtual void calculate(labelListList &srcAddress, scalarListList &srcWeights, labelListList &tgtAddress, scalarListList &tgtWeights, label srcFacei=-1, label tgtFacei=-1)
Update addressing and weights.
TypeName("faceAreaWeightAMI")
Runtime type information.
Face area weighted Arbitrary Mesh Interface (AMI) method.
virtual void setNextFaces(label &startSeedI, label &srcFacei, label &tgtFacei, const boolList &mapFlag, labelList &seedFaces, const DynamicList< label > &visitedFaces, bool errorOnNotFound=true) const
Set the source and target seed faces.
Base class for Arbitrary Mesh Interface (AMI) methods.
void operator=(const faceAreaWeightAMI &)
Disallow default bitwise assignment.
virtual void restartUncoveredSourceFace(List< DynamicList< label >> &srcAddr, List< DynamicList< scalar >> &srcWght, List< DynamicList< label >> &tgtAddr, List< DynamicList< scalar >> &tgtWght)
Attempt to re-evaluate source faces that have not been included.
faceAreaWeightAMI(const faceAreaWeightAMI &)
Disallow default bitwise copy construct.