30 template<
class Po
int,
class Po
intRef>
38 template<
class Po
int,
class Po
intRef>
50 template<
class Po
int,
class Po
intRef>
59 template<
class Po
int,
class Po
intRef>
65 template<
class Po
int,
class Po
intRef>
72 template<
class Po
int,
class Po
intRef>
79 template<
class Po
int,
class Po
intRef>
86 template<
class Po
int,
class Po
intRef>
93 template<
class Po
int,
class Po
intRef>
125 template<
class Po
int,
class Po
intRef>
134 Point a(end() - start());
138 Point crossab = a ^
b;
139 scalar magCrossSqr =
magSqr(crossab);
141 if (magCrossSqr > vSmall)
143 scalar
s = ((
c ^
b) & crossab)/magCrossSqr;
144 scalar t = ((
c ^ a) & crossab)/magCrossSqr;
147 if (
s >= 0 && s <= 1 && t >= 0 && t <= 1)
150 thisPt = start() + a*
s;
168 if (thisDist < edgeDist)
203 bool edgeOrder = edge0 < edge1;
205 scalar minEdge = (edgeOrder ? edge0 : edge1);
206 scalar maxEdge = (edgeOrder ? edge1 : edge0);
210 scalar this0 = start() & a;
211 scalar this1 = end() & a;
212 bool thisOrder = this0 < this1;
214 scalar minThis =
min(this0, this1);
215 scalar maxThis =
max(this1, this0);
216 const Point& minThisPt = (thisOrder ? start() : end());
217 const Point& maxThisPt = (thisOrder ? end() : start());
219 if (maxEdge < minThis)
225 else if (maxEdge < maxThis)
229 thisPt = nearestDist(edgePt).rawPoint();
234 if (minEdge < minThis)
239 edgePt =
edge.nearestDist(thisPt).rawPoint();
241 else if (minEdge < maxThis)
245 thisPt = nearestDist(edgePt).rawPoint();
262 template<
class Po
int,
class Po
intRef>
273 is.
check(
"Istream& operator>>(Istream&, line&)");
278 template<
class Po
int,
class Po
intRef>
282 const line<Point, PointRef>& l
Useful combination of include files which define Sin, Sout and Serr and the use of IO streams general...
virtual bool check(const char *operation) const
Check IOstream status for given operation.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Istream & readEnd(const char *funcName)
Istream & readBegin(const char *funcName)
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
This class describes the interaction of a face and a point. It carries the info of a successful hit a...
scalar distance() const
Return distance to hit.
const Point & rawPoint() const
Return point with no checking.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
label end() const
Return end vertex label.
label start() const
Return start vertex label.
PointRef start() const
Return first vertex.
PointHit< Point > nearestDist(const Point &p) const
Return nearest distance to line from a given point.
PointRef end() const
Return second vertex.
Point centre() const
Return centre (centroid)
scalar mag() const
Return scalar magnitude.
line(const Point &start, const Point &end)
Construct from two points.
Point vec() const
Return start-end vector.
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.name(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
const dimensionedScalar c1
First radiation constant: default SI units: [W/m^2].
const dimensionedScalar c2
Second radiation constant: default SI units: [m K].
const dimensionedScalar c
Speed of light in a vacuum.
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
dimensioned< scalar > mag(const dimensioned< Type > &)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
dimensioned< scalar > magSqr(const dimensioned< Type > &)