1#ifndef AMREX_EB2_IF_POLYNOMIAL_H_
2#define AMREX_EB2_IF_POLYNOMIAL_H_
3#include <AMReX_Config.H>
32template <
unsigned int N>
41 m_sign( a_inside ? 1.0_rt : -1.0_rt )
49 retval += term.coef *
AMREX_D_TERM( std::pow(
x, term.powers[0]),
50 * std::pow(
y, term.powers[1]),
51 * std::pow(
z, term.powers[2]));
74 m_sign( a_inside ? 1.0_rt : -1.0_rt ),
89 retval += term.coef *
AMREX_D_TERM( std::pow(
x, term.powers[0]),
90 * std::pow(
y, term.powers[1]),
91 * std::pow(
z, term.powers[2]));
#define AMREX_GPU_HOST_DEVICE
Definition AMReX_GpuQualifiers.H:20
#define AMREX_D_TERM(a, b, c)
Definition AMReX_SPACE.H:172
#define AMREX_D_DECL(a, b, c)
Definition AMReX_SPACE.H:171
Definition AMReX_EB2_IF_Polynomial.H:35
Real m_sign
Definition AMReX_EB2_IF_Polynomial.H:62
GpuArray< PolyTerm, N > m_polynomial
Definition AMReX_EB2_IF_Polynomial.H:61
PolyIF(const GpuArray< PolyTerm, N > &a_polynomial, bool a_inside=true)
inside: is the fluid inside the ellipsoid?
Definition AMReX_EB2_IF_Polynomial.H:39
__host__ __device__ Real operator()(Real x, Real y, Real z) const noexcept
Definition AMReX_EB2_IF_Polynomial.H:45
Definition AMReX_EB2_IF_Polynomial.H:22
Real coef
Coefficient of this polynomial term.
Definition AMReX_EB2_IF_Polynomial.H:26
IntVect powers
Powers of this polynomial term.
Definition AMReX_EB2_IF_Polynomial.H:29
Definition AMReX_EB2_IF_Polynomial.H:67
PolynomialIF(PolynomialIF &&rhs)=default
int m_size
Definition AMReX_EB2_IF_Polynomial.H:104
PolynomialIF(const PolynomialIF &rhs)=default
Vector< PolyTerm > m_polynomial
Definition AMReX_EB2_IF_Polynomial.H:101
Real m_sign
Definition AMReX_EB2_IF_Polynomial.H:103
bool m_inside
Definition AMReX_EB2_IF_Polynomial.H:102
PolynomialIF(const Vector< PolyTerm > &a_polynomial, bool a_inside=true)
inside: is the fluid inside the ellipsoid?
Definition AMReX_EB2_IF_Polynomial.H:71
PolynomialIF & operator=(const PolynomialIF &rhs)=delete
Real operator()(Real x, Real y, Real z) const noexcept
Definition AMReX_EB2_IF_Polynomial.H:85
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition AMReX_Vector.H:28
Definition AMReX_FabArrayBase.H:33
Array< Real, 3 > RealArray
Definition AMReX_Array.H:26
Definition AMReX_EB2_IF_Base.H:11
Definition AMReX_Array.H:34