Integrator_p2_1ang< dim, NT, KERNEL, ExecutionSpace > Class Template Reference#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
Integrator_p2_1ang integrates a kernel \(K(p,\cos,\ldots)\) depending on the radial momentum \(p\) and the cosine of the single polar angle between the loop and external momentum as $$ \frac{S_{d-1}}{(2\pi)^{d}}\,\int_{-1}^1 dc\,(1-c^2)^{\frac{d-3}{2}}\,\int_0^\infty dp\, p^{d-1} K(p,c,\ldots) $$ in \(d\) dimensions, where \(S_{d-1}\) is the solid angle of the \((d-2)\)-sphere remaining after the polar angle is singled out. The zonal measure \((1-c^2)^{(d-3)/2}\) is supplied exactly by a Gauss-Jacobi angular quadrature, so it does not appear in the kernel. More...
#include <integrator_p2_1ang.hh>
Public Types | |
| using | ctype = typename get_type::ctype< NT > |
| Numerical type to be used for integration tasks e.g. the argument or possible jacobians. | |
| using | execution_space = ExecutionSpace |
| Execution space to be used for the integration, e.g. GPU_exec, TBB_exec. | |
Public Types inherited from DiFfRG::QuadratureIntegrator< 2, NT, internal::Transform_p2_1ang< dim, NT, KERNEL >, ExecutionSpace > | |
| using | ctype = typename get_type::ctype< NT > |
| Numerical type to be used for integration tasks e.g. the argument or possible jacobians. | |
| using | execution_space = ExecutionSpace |
| Execution space to be used for the integration, e.g. GPU_exec, TBB_exec. | |
Public Member Functions | |
| Integrator_p2_1ang (QuadratureProvider &quadrature_provider, const JSONValue &json) | |
| Integrator_p2_1ang (QuadratureProvider &quadrature_provider, const std::array< size_t, 2 > grid_size, ctype x_extent=2.) | |
| void | set_x_extent (ctype x_extent) |
| void | set_k (ctype k) |
Public Member Functions inherited from DiFfRG::QuadratureIntegrator< 2, NT, internal::Transform_p2_1ang< dim, NT, KERNEL >, ExecutionSpace > | |
| QuadratureIntegrator (QuadratureProvider &quadrature_provider, const std::array< size_t, dim > &_grid_size, const std::array< ctype, dim > &grid_min, const std::array< ctype, dim > &grid_max, const std::array< QuadratureType, dim > &quadrature_type) | |
| void | set_grid_extents (const std::array< ctype, dim > &grid_min, const std::array< ctype, dim > &grid_max) |
| void | get (NT &dest, const T &...t) const |
| void | get (OT &dest, const T &...t) const |
| void | get (ExecutionSpace &space, OT &dest, const T &...t) const |
| void | map (ExecutionSpace &space, const view_type integral_view, const Coordinates &coordinates, const Args &...args) |
| auto | map (NT *dest, const Coordinates &coordinates, const Args &...args) |
| auto | map_dist (NT *dest, const Coordinates &coordinates, const Args &...args) |
Public Member Functions inherited from DiFfRG::AbstractIntegrator | |
| void | set_node_distribution (const NodeDistribution &distribution) |
| const NodeDistribution & | get_node_distribution () const |
| void | set_load_balancer (IntegrationLoadBalancer &load_balancer) |
Private Types | |
| using | Base = QuadratureIntegrator< 2, NT, internal::Transform_p2_1ang< dim, NT, KERNEL >, ExecutionSpace > |
Static Private Member Functions | |
| static QuadratureType | polar_quadrature () |
Private Attributes | |
| ctype | x_extent |
| ctype | k |
Additional Inherited Members | |
Protected Attributes inherited from DiFfRG::QuadratureIntegrator< 2, NT, internal::Transform_p2_1ang< dim, NT, KERNEL >, ExecutionSpace > | |
| device::array< size_t, dim > | grid_size |
| ExecutionSpace | space |
| QuadratureProvider & | quadrature_provider |
| device::array< device::array< ctype, dim >, 2 > | grid_extents |
| device::array< ctype, dim > | grid_start |
| device::array< ctype, dim > | grid_scale |
| device::array< Kokkos::View< const ctype *, typename ExecutionSpace::memory_space >, dim > | nodes |
| device::array< Kokkos::View< const ctype *, typename ExecutionSpace::memory_space >, dim > | weights |
| KokkosNDView< 1+dim, NT, ExecutionSpace > | m_cache |
| device::array< size_t, 1+dim > | m_cache_extents |
| Kokkos::View< NT *, ExecutionSpace > | m_dest_device |
| size_t | m_dest_device_size |
| Kokkos::View< NT, typename ExecutionSpace::memory_space > | m_result_view |
| Kokkos::View< NT, typenameExecutionSpace::memory_space >::host_mirror_type | m_result_host |
| bool | m_result_views_initialized |
Protected Attributes inherited from DiFfRG::AbstractIntegrator | |
| NodeDistribution | node_distribution |
Detailed Description
class DiFfRG::Integrator_p2_1ang< dim, NT, KERNEL, ExecutionSpace >
Integrator_p2_1ang integrates a kernel \(K(p,\cos,\ldots)\) depending on the radial momentum \(p\) and the cosine of the single polar angle between the loop and external momentum as $$ \frac{S_{d-1}}{(2\pi)^{d}}\,\int_{-1}^1 dc\,(1-c^2)^{\frac{d-3}{2}}\,\int_0^\infty dp\, p^{d-1} K(p,c,\ldots) $$ in \(d\) dimensions, where \(S_{d-1}\) is the solid angle of the \((d-2)\)-sphere remaining after the polar angle is singled out. The zonal measure \((1-c^2)^{(d-3)/2}\) is supplied exactly by a Gauss-Jacobi angular quadrature, so it does not appear in the kernel.
- Template Parameters
-
dim dimension of the momentum space, i.e. $d$ in the above equation NT numerical type of the result KERNEL kernel to be integrated, which must provide the static methods kernelandconstantExecutionSpace can be any execution space, e.g. GPU_exec, TBB_exec, or Threads_exec.
Member Typedef Documentation
◆ Base
|
private |
◆ ctype
| using DiFfRG::Integrator_p2_1ang< dim, NT, KERNEL, ExecutionSpace >::ctype = typename get_type::ctype<NT> |
Numerical type to be used for integration tasks e.g. the argument or possible jacobians.
◆ execution_space
| using DiFfRG::Integrator_p2_1ang< dim, NT, KERNEL, ExecutionSpace >::execution_space = ExecutionSpace |
Execution space to be used for the integration, e.g. GPU_exec, TBB_exec.
Constructor & Destructor Documentation
◆ Integrator_p2_1ang() [1/2]
|
inline |
◆ Integrator_p2_1ang() [2/2]
|
inline |
Member Function Documentation
◆ polar_quadrature()
|
inlinestaticprivate |
◆ set_k()
|
inline |
◆ set_x_extent()
|
inline |
Member Data Documentation
◆ k
|
private |
◆ x_extent
|
private |
The documentation for this class was generated from the following file:
- /__w/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/physics/integration/vacuum/integrator_p2_1ang.hh
Generated by
Public Types inherited from