Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 1db32b75 authored by Quentin Khan's avatar Quentin Khan
Browse files

Update the adaptive Lagrange kernel to use the new data organisation

 - Change FMM operators signature to take advantage of the new
   layout. The operators only take as parameters the data they may need
   instead of the whole cell. For instance (simplified):

   void M2M(CellClass* parent, CellClass** children);

   becomes

   void M2M(multipole_t*  parent_m,    symbolic_data_t* parent_s,
            multipole_t** children_ms, symbolic_data_t* children_ss);
parent 32972f69
No related branches found
No related tags found
No related merge requests found
......@@ -111,7 +111,8 @@ public:
template<class SymbolicData>
void P2L(typename CellClass::local_expansion_t* const local,
const SymbolicData * const symb,
const ContainerClass* const particles)
const ContainerClass* const particles,
const SymbolicData * const /*source_symb*/)
{
using ComputeClass = typename ComputeClassDescriptor<FReal>::type;
constexpr std::size_t FRealCount = ComputeClassDescriptor<FReal>::count;
......@@ -187,7 +188,8 @@ public:
template<class SymbolicData>
void M2P(const typename CellClass::multipole_t* const pole,
const SymbolicData* const symb,
ContainerClass* const particles)
ContainerClass* const particles,
const SymbolicData * const /*target_symb*/)
{
using ComputeClass = typename ComputeClassDescriptor<FReal>::type;
constexpr std::size_t FRealCount = ComputeClassDescriptor<FReal>::count;
......@@ -249,27 +251,6 @@ public:
}// NVALS
}
// Previous interface starts here ////////////////////////////////
/**
* \brief Node symbolic data fill-in structure for compatibility with older interface
*/
struct CellData {
std::size_t depth;
std::size_t m_idx;
std::size_t getLevel() const noexcept {
return depth;
}
std::size_t getMortonIndex() const noexcept {
return m_idx;
}
FTreeCoordinate getCoordinate() const noexcept {
return FTreeCoordinate(this->m_idx);
}
};
};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment