Foam::cutPoly Namespace Reference

Low level functions for cutting poly faces and cells. More...

Classes

struct  OpIndex
 
struct  OpBegin
 
struct  OpDereference
 
struct  OpNext
 
struct  OpScaled
 
struct  OpPreInner
 
struct  OpIndirectAverage
 
struct  OpIterableAverage
 
struct  OpFaceCutValues
 
struct  OpCellCutValues
 
struct  InPlaceOpAdvance
 
struct  BinaryOpAdd
 
struct  OffsetSequence
 
struct  OffsetSequence< Int, Offset, std::integer_sequence< Int, Is ... > >
 
struct  RangeSequence
 
class  FaceValues
 
class  FaceCutValues
 
class  CellCutValues
 

Typedefs

template<class Type >
using AreaIntegralType = typename Foam::outerProduct< Foam::vector, Type >::type
 Definition for the type of a face-area-integral. More...
 

Functions

List< labelPairfaceCuts (const face &f, const scalarField &pAlphas, const scalar isoAlpha)
 Return the cuts for a given face. This returns a list of pairs of. More...
 
labelListList cellCuts (const cell &c, const cellEdgeAddressing &cAddr, const faceUList &fs, const List< List< labelPair >> &fCuts, const scalarField &pAlphas, const scalar isoAlpha)
 Return the cuts for a given cell. This returns a list of lists of cell-edge. More...
 
void writeFaceCuts (const face &f, const List< labelPair > &fCuts, const pointField &ps, const scalarField &pAlphas, const scalar isoAlpha, OBJstream &obj)
 Write the cuts for a given face to an OBJ file. More...
 
void writeCellCuts (const cell &c, const cellEdgeAddressing &cAddr, const List< List< label >> &cCuts, const faceList &fs, const pointField &ps, const scalarField &pAlphas, const scalar isoAlpha, OBJstream &obj)
 Write the cuts for a given cell to an OBJ file. More...
 
template<template< class > class FaceValues, class ... Types>
Tuple2< vector, std::tuple< AreaIntegralType< Types > ... > > faceAreaIntegral (const FaceValues< point > &fPs, const point &fPAvg, const std::tuple< FaceValues< Types > ... > &fPsis, const std::tuple< Types ... > &fPsiAvgs)
 Compute the face-area and face-area-integrals of the given properties. More...
 
vector faceArea (const face &f, const point &fPAvg, const pointField &ps)
 Compute the face-area. More...
 
vector faceArea (const face &f, const pointField &ps)
 Compute the face-area. More...
 
template<class Type >
Tuple2< vector, AreaIntegralType< Type > > faceAreaIntegral (const face &f, const point &fPAvg, const Type &fPsiAvg, const pointField &ps, const Field< Type > &pPsis)
 Compute the face-area and face-area-integral of a given property. More...
 
template<class Type >
Tuple2< vector, AreaIntegralType< Type > > faceAreaIntegral (const face &f, const pointField &ps, const Field< Type > &pPsis)
 Compute the face-area and face-area-integral of a given property. More...
 
template<template< class > class FaceValues, class ... Types>
Tuple2< vector, std::tuple< Types ... > > faceAreaAverage (const FaceValues< point > &fPs, const point &fPAvg, const std::tuple< FaceValues< Types > ... > &fPsis, const std::tuple< Types ... > &fPsiAvgs)
 Compute the face-area and face-area-averages of the given properties. More...
 
template<class Type >
Tuple2< vector, Type > faceAreaAverage (const face &f, const point &fPAvg, const Type &fPsiAvg, const pointField &ps, const Field< Type > &pPsis)
 Compute the face-area and face-area-average of a given property. More...
 
template<class Type >
Tuple2< vector, Type > faceAreaAverage (const face &f, const pointField &ps, const Field< Type > &pPsis)
 Compute the face-area and face-area-average of a given property. More...
 
template<class ... Types>
Tuple2< vector, std::tuple< AreaIntegralType< Types > ... > > faceCutAreaIntegral (const face &f, const vector &fArea, const std::tuple< Types ... > &fPsis, const List< labelPair > &fCuts, const pointField &ps, const std::tuple< const Field< Types > &... > &pPsis, const scalarField &pAlphas, const scalar isoAlpha, const bool below)
 Compute the face-cut-area and face-cut-area-integral of the given properties. More...
 
vector faceCutArea (const face &f, const vector &fArea, const List< labelPair > &fCuts, const pointField &ps, const scalarField &pAlphas, const scalar isoAlpha, const bool below)
 Compute the face-cut-area. More...
 
template<class Type >
Tuple2< vector, AreaIntegralType< Type > > faceCutAreaIntegral (const face &f, const vector &fArea, const Type &fPsi, const List< labelPair > &fCuts, const pointField &ps, const Field< Type > &pPsis, const scalarField &pAlphas, const scalar isoAlpha, const bool below)
 Compute the face-cut-area and face-cut-area-integral of the given property. More...
 
template<class ... Types>
Tuple2< scalar, std::tuple< Types ... > > cellVolumeIntegral (const cell &c, const cellEdgeAddressing &cAddr, const point &cPAvg, const std::tuple< Types ... > &cPsiAvgs, const vectorField &fAreas, const pointField &fCentres, const std::tuple< const Field< Types > &... > &fPsis)
 Compute the cell-volume and cell-volume-integrals of the given properties. More...
 
scalar cellVolume (const cell &c, const cellEdgeAddressing &cAddr, const point &cPAvg, const vectorField &fAreas, const pointField &fCentres)
 Compute the cell-volume. More...
 
scalar cellVolume (const cell &c, const cellEdgeAddressing &cAddr, const vectorField &fAreas, const pointField &fCentres)
 Compute the cell-volume. More...
 
template<class Type >
Tuple2< scalar, Type > cellVolumeIntegral (const cell &c, const cellEdgeAddressing &cAddr, const point &cPAvg, const Type &cPsiAvg, const vectorField &fAreas, const pointField &fCentres, const Field< Type > &fPsis)
 Compute the cell-volume and cell-volume-integrals of the given property. More...
 
template<class Type >
Tuple2< scalar, Type > cellVolumeIntegral (const cell &c, const cellEdgeAddressing &cAddr, const vectorField &fAreas, const pointField &fCentres, const Field< Type > &fPsis)
 Compute the cell-volume and cell-volume-integrals of the given property. More...
 
template<class ... Types>
Tuple2< scalar, std::tuple< Types ... > > cellCutVolumeIntegral (const cell &c, const cellEdgeAddressing &cAddr, const scalar cVolume, const std::tuple< Types ... > &cPsis, const labelListList &cCuts, const faceUList &fs, const vectorField &fAreas, const pointField &fCentres, const std::tuple< const Field< Types > &... > &fPsis, const vectorField &fCutAreas, const std::tuple< const Field< Types > &... > &fCutPsis, const pointField &ps, const std::tuple< const Field< Types > &... > &pPsis, const scalarField &pAlphas, const scalar isoAlpha, const bool below)
 Compute the cell-cut-volume and cell-cut-volume-integral. More...
 
scalar cellCutVolume (const cell &c, const cellEdgeAddressing &cAddr, const scalar cVolume, const labelListList &cCuts, const faceUList &fs, const vectorField &fAreas, const pointField &fCentres, const vectorField &fCutAreas, const pointField &ps, const scalarField &pAlphas, const scalar isoAlpha, const bool below)
 Compute the cell-cut-volume. More...
 
template<class Type >
Tuple2< scalar, Type > cellCutVolumeIntegral (const cell &c, const cellEdgeAddressing &cAddr, const scalar cVolume, const Type &cPsi, const labelListList &cCuts, const faceUList &fs, const vectorField &fAreas, const pointField &fCentres, const Field< Type > &fPsis, const vectorField &fCutAreas, const Field< Type > &fCutPsis, const pointField &ps, const Field< Type > &pPsis, const scalarField &pAlphas, const scalar isoAlpha, const bool below)
 Compute the cell-cut-volume and cell-cut-volume-integral. More...
 
template<class Tuple , class Int , Int ... Is>
auto tupleSubset (const Tuple &tuple, const std::integer_sequence< Int, Is ... > &)
 
template<class Op , class Tuple , class Int , Int ... Is>
auto tupleSubset (const Tuple &tuple, const std::integer_sequence< Int, Is ... > &, const Op &op)
 
template<class ... Types>
auto tupleTail (const std::tuple< Types ... > &tuple)
 
template<class Op , class ... Types>
auto tupleOp (const std::tuple< Types ... > &tuple, const Op &op)
 
template<class Op , class Tuple , class Int , Int ... Is>
void tupleInPlaceOp (Tuple &tuple, const std::integer_sequence< Int, Is ... > &, const Op &op)
 
template<class Op , class ... Types>
void tupleInPlaceOp (std::tuple< Types ... > &tuple, const Op &op)
 
template<class BinaryOp , class Tuple , class Int , Int ... Is>
auto tupleBinaryOp (const Tuple &tupleA, const Tuple &tupleB, const std::integer_sequence< Int, Is ... > &, const BinaryOp &bop)
 
template<class BinaryOp , class ... TypesA, class ... TypesB>
auto tupleBinaryOp (const std::tuple< TypesA ... > &tupleA, const std::tuple< TypesB ... > &tupleB, const BinaryOp &bop)
 
scalar edgeCutLambda (const edge &e, const scalarField &pAlphas, const scalar isoAlpha)
 Get the local coordinate within an edge, given end point values and an. More...
 
template<class Type >
Type edgeCutValue (const edge &e, const scalar lambda, const Field< Type > &pPsis)
 Linearly interpolate a value from the end points to the cut point of an. More...
 
template<class Type >
Type edgeCutValue (const edge &e, const scalarField &pAlphas, const scalar isoAlpha, const Field< Type > &pPsis)
 Linearly interpolate a value from the end points to the cut point of an. More...
 

Variables

static const bool separatedBelow = true
 This flag determines which side of the iso-surface is separated into. More...
 

Detailed Description

Low level functions for cutting poly faces and cells.

Functions and classes for extracting values from cut edges, faces and cells.

Functions for computing integrals over cut faces and cells.

Cutting a face using an iso-surface defined at the points is done by walking around the face. A start point is chosen and then the walk proceeds until a "cut" edge is found with points on either side of the iso-surface. This edge is noted and the walk continues until another cut edge is found. These two edge cuts, along with all points in-between, form a sub-face on one side of the iso-surface. This algorithm continues around the entire face, potentially cutting off multiple sub-faces. The remainder is a single contiguous face on the other side of the iso-surface.

Cutting a cell is then done by walking from cut-edge to cut-edge around the cell's faces.

Source files

Source files

Source files

Typedef Documentation

◆ AreaIntegralType

Definition for the type of a face-area-integral.

Definition at line 50 of file cutPolyIntegral.H.

Function Documentation

◆ faceCuts()

Foam::List< Foam::labelPair > faceCuts ( const face f,
const scalarField pAlphas,
const scalar  isoAlpha 
)

Return the cuts for a given face. This returns a list of pairs of.

face-edge indices. Both edges in the pair are cut, and connecting these cuts creates an edge of the iso-surface.

Definition at line 60 of file cutPoly.C.

References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, forAll, UList< T >::last(), Foam::max(), Foam::min(), separatedBelow, and DynamicList< T, SizeInc, SizeMult, SizeDiv >::shrink().

Referenced by faceCutData::cache(), and cutPolyIsoSurface::cutPolyIsoSurface().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellCuts()

Foam::labelListList cellCuts ( const cell c,
const cellEdgeAddressing cAddr,
const faceUList fs,
const List< List< labelPair >> &  fCuts,
const scalarField pAlphas,
const scalar  isoAlpha 
)

Return the cuts for a given cell. This returns a list of lists of cell-edge.

indices. Each sub-list represents a single closed loop of cell-edges. The edges listed are all cut, and connecting these cuts up creates a face of the iso-surface.

Definition at line 120 of file cutPoly.C.

References DynamicList< T, SizeInc, SizeMult, SizeDiv >::append(), Foam::constant::universal::c, cellEdgeAddressing::ceiToCfiAndFei(), cellEdgeAddressing::cfiAndFeiToCei(), cellEdgeAddressing::cOwns(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Pair< Type >::first(), forAll, found, UList< T >::last(), Pair< Type >::second(), DynamicList< T, SizeInc, SizeMult, SizeDiv >::shrink(), and UList< T >::size().

Referenced by cutPolyIsoSurface::cutPolyIsoSurface().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeFaceCuts()

void writeFaceCuts ( const face f,
const List< labelPair > &  fCuts,
const pointField ps,
const scalarField pAlphas,
const scalar  isoAlpha,
OBJstream obj 
)

Write the cuts for a given face to an OBJ file.

Definition at line 244 of file cutPoly.C.

References Foam::constant::electromagnetic::e, edgeCutValue(), f(), forAll, and OBJstream::write().

Here is the call graph for this function:

◆ writeCellCuts()

void writeCellCuts ( const cell c,
const cellEdgeAddressing cAddr,
const List< List< label >> &  cCuts,
const faceList fs,
const pointField ps,
const scalarField pAlphas,
const scalar  isoAlpha,
OBJstream obj 
)

Write the cuts for a given cell to an OBJ file.

Definition at line 270 of file cutPoly.C.

References Foam::constant::universal::c, cellEdgeAddressing::ceiToCfiAndFei(), Foam::constant::electromagnetic::e, edgeCutValue(), forAll, Foam::identityMap(), and OBJstream::write().

Here is the call graph for this function:

◆ faceAreaIntegral() [1/3]

Tuple2<vector, std::tuple<AreaIntegralType<Types> ...> > Foam::cutPoly::faceAreaIntegral ( const FaceValues< point > &  fPs,
const point fPAvg,
const std::tuple< FaceValues< Types > ... > &  fPsis,
const std::tuple< Types ... > &  fPsiAvgs 
)

Compute the face-area and face-area-integrals of the given properties.

Referenced by faceArea().

Here is the caller graph for this function:

◆ faceArea() [1/2]

Foam::vector faceArea ( const face f,
const point fPAvg,
const pointField ps 
)
inline

Compute the face-area.

Definition at line 277 of file cutPolyIntegralI.H.

References f(), and faceAreaIntegral().

Referenced by faceArea().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceArea() [2/2]

Foam::vector faceArea ( const face f,
const pointField ps 
)
inline

Compute the face-area.

Definition at line 295 of file cutPolyIntegralI.H.

References f(), and faceArea().

Here is the call graph for this function:

◆ faceAreaIntegral() [2/3]

Tuple2<vector, AreaIntegralType<Type> > Foam::cutPoly::faceAreaIntegral ( const face f,
const point fPAvg,
const Type &  fPsiAvg,
const pointField ps,
const Field< Type > &  pPsis 
)
inline

Compute the face-area and face-area-integral of a given property.

◆ faceAreaIntegral() [3/3]

Tuple2<vector, AreaIntegralType<Type> > Foam::cutPoly::faceAreaIntegral ( const face f,
const pointField ps,
const Field< Type > &  pPsis 
)
inline

Compute the face-area and face-area-integral of a given property.

◆ faceAreaAverage() [1/3]

Tuple2<vector, std::tuple<Types ...> > Foam::cutPoly::faceAreaAverage ( const FaceValues< point > &  fPs,
const point fPAvg,
const std::tuple< FaceValues< Types > ... > &  fPsis,
const std::tuple< Types ... > &  fPsiAvgs 
)

Compute the face-area and face-area-averages of the given properties.

Referenced by faceFsData::cache().

Here is the caller graph for this function:

◆ faceAreaAverage() [2/3]

Tuple2<vector, Type> Foam::cutPoly::faceAreaAverage ( const face f,
const point fPAvg,
const Type &  fPsiAvg,
const pointField ps,
const Field< Type > &  pPsis 
)
inline

Compute the face-area and face-area-average of a given property.

◆ faceAreaAverage() [3/3]

Tuple2<vector, Type> Foam::cutPoly::faceAreaAverage ( const face f,
const pointField ps,
const Field< Type > &  pPsis 
)
inline

Compute the face-area and face-area-average of a given property.

◆ faceCutAreaIntegral() [1/2]

Tuple2<vector, std::tuple<AreaIntegralType<Types> ...> > Foam::cutPoly::faceCutAreaIntegral ( const face f,
const vector fArea,
const std::tuple< Types ... > &  fPsis,
const List< labelPair > &  fCuts,
const pointField ps,
const std::tuple< const Field< Types > &... > &  pPsis,
const scalarField pAlphas,
const scalar  isoAlpha,
const bool  below 
)

Compute the face-cut-area and face-cut-area-integral of the given properties.

Referenced by faceFsData::cache(), and faceCutArea().

Here is the caller graph for this function:

◆ faceCutArea()

Foam::vector faceCutArea ( const face f,
const vector fArea,
const List< labelPair > &  fCuts,
const pointField ps,
const scalarField pAlphas,
const scalar  isoAlpha,
const bool  below 
)
inline

Compute the face-cut-area.

Definition at line 409 of file cutPolyIntegralI.H.

References f(), and faceCutAreaIntegral().

Referenced by faceCutData::cache().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ faceCutAreaIntegral() [2/2]

Tuple2<vector, AreaIntegralType<Type> > Foam::cutPoly::faceCutAreaIntegral ( const face f,
const vector fArea,
const Type &  fPsi,
const List< labelPair > &  fCuts,
const pointField ps,
const Field< Type > &  pPsis,
const scalarField pAlphas,
const scalar  isoAlpha,
const bool  below 
)
inline

Compute the face-cut-area and face-cut-area-integral of the given property.

◆ cellVolumeIntegral() [1/3]

Tuple2<scalar, std::tuple<Types ...> > Foam::cutPoly::cellVolumeIntegral ( const cell c,
const cellEdgeAddressing cAddr,
const point cPAvg,
const std::tuple< Types ... > &  cPsiAvgs,
const vectorField fAreas,
const pointField fCentres,
const std::tuple< const Field< Types > &... > &  fPsis 
)

Compute the cell-volume and cell-volume-integrals of the given properties.

Referenced by cellVolume().

Here is the caller graph for this function:

◆ cellVolume() [1/2]

Foam::scalar cellVolume ( const cell c,
const cellEdgeAddressing cAddr,
const point cPAvg,
const vectorField fAreas,
const pointField fCentres 
)
inline

Compute the cell-volume.

Definition at line 474 of file cutPolyIntegralI.H.

References Foam::constant::universal::c, and cellVolumeIntegral().

Referenced by cellVolume(), and cellPointWeight::findTetrahedron().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cellVolume() [2/2]

Foam::scalar cellVolume ( const cell c,
const cellEdgeAddressing cAddr,
const vectorField fAreas,
const pointField fCentres 
)
inline

Compute the cell-volume.

Definition at line 497 of file cutPolyIntegralI.H.

References Foam::constant::universal::c, and cellVolume().

Here is the call graph for this function:

◆ cellVolumeIntegral() [2/3]

Tuple2<scalar, Type> Foam::cutPoly::cellVolumeIntegral ( const cell c,
const cellEdgeAddressing cAddr,
const point cPAvg,
const Type &  cPsiAvg,
const vectorField fAreas,
const pointField fCentres,
const Field< Type > &  fPsis 
)
inline

Compute the cell-volume and cell-volume-integrals of the given property.

◆ cellVolumeIntegral() [3/3]

Tuple2<scalar, Type> Foam::cutPoly::cellVolumeIntegral ( const cell c,
const cellEdgeAddressing cAddr,
const vectorField fAreas,
const pointField fCentres,
const Field< Type > &  fPsis 
)
inline

Compute the cell-volume and cell-volume-integrals of the given property.

◆ cellCutVolumeIntegral() [1/2]

Tuple2<scalar, std::tuple<Types ...> > Foam::cutPoly::cellCutVolumeIntegral ( const cell c,
const cellEdgeAddressing cAddr,
const scalar  cVolume,
const std::tuple< Types ... > &  cPsis,
const labelListList cCuts,
const faceUList fs,
const vectorField fAreas,
const pointField fCentres,
const std::tuple< const Field< Types > &... > &  fPsis,
const vectorField fCutAreas,
const std::tuple< const Field< Types > &... > &  fCutPsis,
const pointField ps,
const std::tuple< const Field< Types > &... > &  pPsis,
const scalarField pAlphas,
const scalar  isoAlpha,
const bool  below 
)

Compute the cell-cut-volume and cell-cut-volume-integral.

of the given properties

Referenced by cellCutVolume().

Here is the caller graph for this function:

◆ cellCutVolume()

Foam::scalar cellCutVolume ( const cell c,
const cellEdgeAddressing cAddr,
const scalar  cVolume,
const labelListList cCuts,
const faceUList fs,
const vectorField fAreas,
const pointField fCentres,
const vectorField fCutAreas,
const pointField ps,
const scalarField pAlphas,
const scalar  isoAlpha,
const bool  below 
)
inline

Compute the cell-cut-volume.

Definition at line 574 of file cutPolyIntegralI.H.

References Foam::constant::universal::c, and cellCutVolumeIntegral().

Here is the call graph for this function:

◆ cellCutVolumeIntegral() [2/2]

Tuple2<scalar, Type> Foam::cutPoly::cellCutVolumeIntegral ( const cell c,
const cellEdgeAddressing cAddr,
const scalar  cVolume,
const Type &  cPsi,
const labelListList cCuts,
const faceUList fs,
const vectorField fAreas,
const pointField fCentres,
const Field< Type > &  fPsis,
const vectorField fCutAreas,
const Field< Type > &  fCutPsis,
const pointField ps,
const Field< Type > &  pPsis,
const scalarField pAlphas,
const scalar  isoAlpha,
const bool  below 
)
inline

Compute the cell-cut-volume and cell-cut-volume-integral.

of the given property

◆ tupleSubset() [1/2]

auto Foam::cutPoly::tupleSubset ( const Tuple &  tuple,
const std::integer_sequence< Int, Is ... > &   
)

Definition at line 62 of file cutPolyIntegralTemplates.C.

Referenced by tupleOp(), and tupleTail().

Here is the caller graph for this function:

◆ tupleSubset() [2/2]

auto Foam::cutPoly::tupleSubset ( const Tuple &  tuple,
const std::integer_sequence< Int, Is ... > &  ,
const Op op 
)

Definition at line 73 of file cutPolyIntegralTemplates.C.

◆ tupleTail()

auto Foam::cutPoly::tupleTail ( const std::tuple< Types ... > &  tuple)

Definition at line 85 of file cutPolyIntegralTemplates.C.

References tupleSubset(), and Foam::type().

Here is the call graph for this function:

◆ tupleOp()

auto Foam::cutPoly::tupleOp ( const std::tuple< Types ... > &  tuple,
const Op op 
)

Definition at line 97 of file cutPolyIntegralTemplates.C.

References tupleSubset().

Here is the call graph for this function:

◆ tupleInPlaceOp() [1/2]

void Foam::cutPoly::tupleInPlaceOp ( Tuple &  tuple,
const std::integer_sequence< Int, Is ... > &  ,
const Op op 
)

Definition at line 110 of file cutPolyIntegralTemplates.C.

Referenced by tupleInPlaceOp().

Here is the caller graph for this function:

◆ tupleInPlaceOp() [2/2]

void Foam::cutPoly::tupleInPlaceOp ( std::tuple< Types ... > &  tuple,
const Op op 
)

Definition at line 126 of file cutPolyIntegralTemplates.C.

References tupleInPlaceOp().

Here is the call graph for this function:

◆ tupleBinaryOp() [1/2]

auto Foam::cutPoly::tupleBinaryOp ( const Tuple &  tupleA,
const Tuple &  tupleB,
const std::integer_sequence< Int, Is ... > &  ,
const BinaryOp &  bop 
)

Definition at line 133 of file cutPolyIntegralTemplates.C.

Referenced by tupleBinaryOp().

Here is the caller graph for this function:

◆ tupleBinaryOp() [2/2]

auto Foam::cutPoly::tupleBinaryOp ( const std::tuple< TypesA ... > &  tupleA,
const std::tuple< TypesB ... > &  tupleB,
const BinaryOp &  bop 
)

Definition at line 146 of file cutPolyIntegralTemplates.C.

References tupleBinaryOp().

Here is the call graph for this function:

◆ edgeCutLambda()

Foam::scalar edgeCutLambda ( const edge e,
const scalarField pAlphas,
const scalar  isoAlpha 
)
inline

Get the local coordinate within an edge, given end point values and an.

iso-value

Definition at line 30 of file cutPolyValueI.H.

References Foam::constant::electromagnetic::e.

Referenced by cutPolyIsoSurface::cutPolyIsoSurface(), and edgeCutValue().

Here is the caller graph for this function:

◆ edgeCutValue() [1/2]

Type edgeCutValue ( const edge e,
const scalar  lambda,
const Field< Type > &  pPsis 
)

Linearly interpolate a value from the end points to the cut point of an.

edge, given a local coordinate within the edge

Definition at line 31 of file cutPolyValueTemplates.C.

References Foam::constant::electromagnetic::e, and lambda().

Referenced by cutPolyIsoSurface::cutPolyIsoSurface(), edgeCutValue(), cutPolyIsoSurface::interpolate(), writeCellCuts(), and writeFaceCuts().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ edgeCutValue() [2/2]

Type edgeCutValue ( const edge e,
const scalarField pAlphas,
const scalar  isoAlpha,
const Field< Type > &  pPsis 
)

Linearly interpolate a value from the end points to the cut point of an.

edge, given end point values and an iso-value

Definition at line 43 of file cutPolyValueTemplates.C.

References Foam::constant::electromagnetic::e, edgeCutLambda(), and edgeCutValue().

Here is the call graph for this function:

Variable Documentation

◆ separatedBelow

const bool separatedBelow = true
static

This flag determines which side of the iso-surface is separated into.

multiple sub-faces, and which side is kept as the central contiguous face

Definition at line 65 of file cutPoly.H.

Referenced by faceCuts(), and FaceCutValues< Type >::const_iterator::next().