src/Boundary/AxisBoundaryRZ.cc
//------------------------------------------------------------------------------
// Find the set of nodes in the given NodeList that violate this boundary
// condition.  In this case violation is being "behind" the entrance plane,
// where behind is defined in terms of the plane normal.
//------------------------------------------------------------------------------
Find the set of nodes in the given NodeList that violate this boundary
condition.  In this case violation is being "behind" the entrance plane,
where behind is defined in terms of the plane normal.
Find the set of nodes in the given NodeList that violate this boundary condition . In this case violation is being " behind " the entrance plane where behind is defined in terms of the plane normal .
void
AxisBoundaryRZ::setViolationNodes(NodeList<Dimension>& nodeList) {
  typedef Boundary<Dimension>::BoundaryNodes BoundaryNodes;
  this->addNodeList(nodeList);
  BoundaryNodes& boundaryNodes = this->accessBoundaryNodes(nodeList);
  vector<int>& vNodes = boundaryNodes.violationNodes;
  vNodes.resize(0);
  const Vector runit(0.0, 1.0);
  const Field<Dimension, Vector>& positions = nodeList.positions();
  const Field<Dimension, SymTensor>& H = nodeList.Hfield();
  for (auto nodeID = 0u; nodeID < nodeList.numInternalNodes(); ++nodeID) {
    const double Hri = (H(nodeID)*runit).y();
    const double etari = Hri*positions(nodeID).y();
    if (etari <= mEtaMin) vNodes.push_back(nodeID);
  }
  updateViolationNodes(nodeList);
}
void AxisBoundaryRZ :: setViolationNodes ( NodeList < Dimension > & nodeList ) { typedef Boundary < Dimension > :: BoundaryNodes BoundaryNodes ; this -> addNodeList ( nodeList ) ; BoundaryNodes & boundaryNodes = this -> accessBoundaryNodes ( nodeList ) ; vector < int > & vNodes = boundaryNodes . violationNodes ; vNodes . resize ( 0 ) ; const Vector runit ( 0.0 , 1.0 ) ; const Field < Dimension , Vector > & positions = nodeList . positions ( ) ; const Field < Dimension , SymTensor > & H = nodeList . Hfield ( ) ; for ( auto nodeID = 0u ; nodeID < nodeList . numInternalNodes ( ) ; ++ nodeID ) { const double Hri = ( H ( nodeID ) * runit ) . y ( ) ; const double etari = Hri * positions ( nodeID ) . y ( ) ; if ( etari <= mEtaMin ) vNodes . push_back ( nodeID ) ; } updateViolationNodes ( nodeList ) ; }
Find the set of nodes in the given NodeList that violate this boundary
condition.
Find the set of nodes in the given NodeList that violate this boundary condition .
// Get the BoundaryNodes.violationNodes for this NodeList. // Loop over all the internal nodes in the NodeList, and put any that are // less than etamin in eta space from the axis in violation. // Update the positions and H for the nodes in violation.