.. index:: pair: class; xf::hpc::rtm::Domain3D .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d: .. _cid-xf::hpc::rtm::domain3d: template class xf::hpc::rtm::Domain3D ===================================== .. toctree:: :hidden: .. code-block:: cpp :class: overview-code-block #include "domain3d.hpp" Overview ~~~~~~~~ :ref:`Domain3D ` class used to partition the pressure field to maximize the kernel performance. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - t_HalfOrder - the half spatial discretization order * - t_MaxDimZ - the maximum dim along z-axis the kernel can process * - t_MaxDimY - the maximum dim along y-axis the kernel can process * - t_PEZ - the number of processing elements along z-axis * - t_PEX - the number of processing elements along x-axis * - t_NumSM - the number of streaming modules in the kernel .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a8323dbf83f09e47c02c027cda4c34822: .. _cid-xf::hpc::rtm::domain3d::s_dimext: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a9fd1efff69fec4a2419614bd3c216cea: .. _cid-xf::hpc::rtm::domain3d::m_x: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1ae8883bc395e4ba269c5115ff9bf0622f: .. _cid-xf::hpc::rtm::domain3d::m_y: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a1e61fdc9fa55067e98d9680b6b18810b: .. _cid-xf::hpc::rtm::domain3d::m_z: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1ab3b76ce69915de5aa696cd09c1dd7f19: .. _cid-xf::hpc::rtm::domain3d::m_datacoo: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a57baf2d52756598348f84f698efac3c1: .. _cid-xf::hpc::rtm::domain3d::m_datadim: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a32c216fc9addb0d00f71ae0c9a476417: .. _cid-xf::hpc::rtm::domain3d::m_extcoo: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a5750ad2a99abb8fa9b2b4892e81f80bc: .. _cid-xf::hpc::rtm::domain3d::m_extdim: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1ace085014de3a2d0e72a80e6ff590fbfd: .. _cid-xf::hpc::rtm::domain3d::domain3d: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1aee3d64ebf2994ed3e05cd3aae362e769: .. _cid-xf::hpc::rtm::domain3d::extendcoo: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a952546284aca40be3cf48c2cb0c8972b: .. _cid-xf::hpc::rtm::domain3d::extendcoo-2: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a38c0abb0286619d4e1cc7fa3a709c380: .. _cid-xf::hpc::rtm::domain3d::reset: .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a9ab98e19e2b7835ee1aea53ca111bb7b: .. _cid-xf::hpc::rtm::domain3d::next: .. ref-code-block:: cpp :class: overview-code-block template < int t_MaxDimZ, int t_MaxDimY, int t_HalfOrder, int t_PEZ, int t_PEX, int t_NumSM > class Domain3D // fields static const int s_DimExt unsigned int m_x unsigned int m_y unsigned int m_z unsigned int m_dataCoo unsigned int m_dataDim unsigned int m_extCoo unsigned int m_extDim Methods ~~~~~~~ .. FunctionSection .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1ac9883cacad93b66082791653f75af04e: .. _cid-xf::hpc::rtm::domain3d::mem2stream: mem2stream ---------- .. ref-code-block:: cpp :class: title-code-block template void mem2stream ( const t_InterfaceType* p_mem, hls::stream & p_str ) const mem2stream reads data memory to a stream .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - t_InterfaceType - the datatype in memory * - p_mem - the first memory port * - p_str - the output stream .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1adb9e6c915ecc88fafb98ec34655c0c2d: .. _cid-xf::hpc::rtm::domain3d::stream2mem: stream2mem ---------- .. ref-code-block:: cpp :class: title-code-block template void stream2mem ( hls::stream & p_str, t_InterfaceType* p_mem ) const stream2mem reads write alternatively to two memory addresses from a stream .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - t_InterfaceType - the datatype in memory * - p_mem - the first memory port * - p_str - the input stream .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1a4ce2c475c73a4b56de8eddaa8471ee4b: .. _cid-xf::hpc::rtm::domain3d::memselstream: memSelStream ------------ .. ref-code-block:: cpp :class: title-code-block template void memSelStream ( const bool p_sel, const t_InterfaceType* p_mem0, const t_InterfaceType* p_mem1, hls::stream & p_str ) const mem2stream reads data memory to a stream .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - t_InterfaceType - the datatype in memory * - p_sel - the signal to select read port * - p_mem0 - the first memory port * - p_mem1 - the second memory port * - p_str - the output stream .. _doxid-classxf_1_1hpc_1_1rtm_1_1_domain3_d_1aa6c360ab7eabd54658596aa775669b38: .. _cid-xf::hpc::rtm::domain3d::streamselmem: streamSelMem ------------ .. ref-code-block:: cpp :class: title-code-block template void streamSelMem ( const bool p_sel, hls::stream & p_str, t_InterfaceType* p_mem0, t_InterfaceType* p_mem1 ) const stream2mem reads write alternatively to two memory addresses from a stream .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - t_InterfaceType - the datatype in memory * * - p_sel - the signal to select read port * - p_mem0 - the first memory port * - p_mem1 - the second memory port * - p_str - the input stream