https://mooseframework.inl.gov
Loading...
Searching...
No Matches
PointInSubdomainCheckUO.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
15
16#include <map>
17
20{
21public:
24
25 virtual void initialSetup() override;
26
28 virtual bool ifInside(const Point & p) const;
29
31 virtual subdomain_id_type whichSubdomain(const Point & p) const;
32
36 const std::map<subdomain_id_type, std::unique_ptr<const PointContainmentClassifier>> &
38 {
40 }
41
42protected:
45
49 std::map<subdomain_id_type, std::unique_ptr<const PointContainmentClassifier>>
51};
const Real p
const InputParameters & parameters() const
Performs in-out testing and identifies the subdomain containing a point.
const SurfaceMeshBySubdomainBuilder & _builder
Builder providing subdomain-wise SurfaceElementSets.
virtual void initialSetup() override
const std::map< subdomain_id_type, std::unique_ptr< const PointContainmentClassifier > > & subdomainCheckers() const
Read-only view of the per-subdomain checkers (subdomain id -> checker).
std::map< subdomain_id_type, std::unique_ptr< const PointContainmentClassifier > > _subdomain_id_checkers
Each subdomain has its own PointContainmentClassifier (owns the checkers).
virtual subdomain_id_type whichSubdomain(const Point &p) const
Determine which subdomain the point belongs to (returns "OUTSIDE" if none)
static InputParameters validParams()
virtual bool ifInside(const Point &p) const
Check if the point is inside any subdomain.
BoundaryMeshBuilder specialization that groups the surface elements by subdomain, building one Surfac...