Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::EB2::ParserIF Class Reference

Implicit surface defined by an amrex::Parser expression. More...

#include <AMReX_EB2_IF_Parser.H>

Inheritance diagram for amrex::EB2::ParserIF:
amrex::GPUable

Public Member Functions

 ParserIF (const ParserExecutor< 3 > &a_parser)
__host__ __device__ amrex::Real operator() (amrex::Real x, amrex::Real y, amrex::Real z) const noexcept
 Evaluate the expression at explicit coordinates.
amrex::Real operator() (const amrex::RealArray &p) const noexcept
 Array-based overload forwarding to the coordinate form.

Detailed Description

Implicit surface defined by an amrex::Parser expression.

Constructor & Destructor Documentation

◆ ParserIF()

amrex::EB2::ParserIF::ParserIF ( const ParserExecutor< 3 > & a_parser)
inline

Store a compiled parser executor for later evaluation. Note ParserExecutor<3> keeps pointers into the originating Parser instance, so the Parser must outlive this object (e.g., use EB2::GeometryShop<EB2::ParserIF, amrex::Parser> to keep both alive together).

Member Function Documentation

◆ operator()() [1/2]

__host__ __device__ amrex::Real amrex::EB2::ParserIF::operator() ( amrex::Real x,
amrex::Real y,
amrex::Real z ) const
inlinenodiscardnoexcept

Evaluate the expression at explicit coordinates.

◆ operator()() [2/2]

amrex::Real amrex::EB2::ParserIF::operator() ( const amrex::RealArray & p) const
inlinenodiscardnoexcept

Array-based overload forwarding to the coordinate form.


The documentation for this class was generated from the following file: