コード例 #1
0
ファイル: INITL.hpp プロジェクト: ccecka/fmmtl
 inline static void eval(Context& c,
                         const typename Context::target_box_type& box) {
   apply(c.expansion(),
         c.local(box),
         box.extents(),
         box.level());
 }
コード例 #2
0
ファイル: L2L.hpp プロジェクト: ccecka/fmmtl
 inline static void eval(Context& c,
                         const typename Context::target_box_type& sbox,
                         const typename Context::target_box_type& tbox) {
   apply(c.expansion(),
         c.local(sbox),
         c.local(tbox),
         tbox.center() - sbox.center());
 }
コード例 #3
0
ファイル: L2T.hpp プロジェクト: ccecka/fmmtl
 inline static void eval(Context& c,
                         const typename Context::target_box_type& tbox) {
   apply(c.expansion(),
         c.local(tbox),
         tbox.center(),
         c.target_begin(tbox), c.target_end(tbox),
         c.result_begin(tbox));
 }
コード例 #4
0
ファイル: M2L.hpp プロジェクト: kgourgou/fmmtl
  inline static void eval(Context& c,
                          const typename Context::source_box_type& sbox,
                          const typename Context::target_box_type& tbox)
  {
#if defined(FMMTL_DEBUG)
    std::cout << "M2L:"
              << "\n  " << sbox
              << "\n  " << tbox << std::endl;
#endif
    FMMTL_LOG("M2L");

    M2L::eval(c.expansion(),
              c.multipole(sbox),
              c.local(tbox),
              tbox.center() - sbox.center());
  }