MCPcopy Create free account
hub / github.com/OpenFOAM/OpenFOAM-dev / update

Method update

src/meshTools/cellClassification/cellInfoI.H:33–90  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

31// Update this with w2 information
32template<class TrackingData>
33inline bool Foam::cellInfo::update
34(
35 const cellInfo& w2,
36 const label thisFacei,
37 const label thisCelli,
38 const label neighbourFacei,
39 const label neighbourCelli,
40 TrackingData& td
41)
42{
43 if
44 (
45 (w2.type() == cellClassification::NOTSET)
46 || (w2.type() == cellClassification::CUT)
47 )
48 {
49 FatalErrorInFunction
50 << "Problem: trying to propagate NOTSET or CUT type:" << w2.type()
51 << " into cell/face with type:" << type() << endl
52 << "thisFacei:" << thisFacei
53 << " thisCelli:" << thisCelli
54 << " neighbourFacei:" << neighbourFacei
55 << " neighbourCelli:" << neighbourCelli
56 << abort(FatalError);
57 return false;
58 }
59
60 if (type() == cellClassification::NOTSET)
61 {
62 type_ = w2.type();
63
64 return true;
65 }
66
67 if (type() == cellClassification::CUT)
68 {
69 // Reached boundary. Stop.
70 return false;
71 }
72
73 if (type() == w2.type())
74 {
75 // Should never happen; already checked in meshWave
76 return false;
77 }
78
79 // Two conflicting types
80 FatalErrorInFunction
81 << "Problem: trying to propagate conflicting types:" << w2.type()
82 << " into cell/face with type:" << type() << endl
83 << "thisFacei:" << thisFacei
84 << " thisCelli:" << thisCelli
85 << " neighbourFacei:" << neighbourFacei
86 << " neighbourCelli:" << neighbourCelli
87 << abort(FatalError);
88
89 return false;
90}

Callers 15

mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45

Calls 3

typeEnum · 0.50
abortFunction · 0.50
typeMethod · 0.45

Tested by 1

mainFunction · 0.36