source: src/interface/interface_particles.hpp@ d24c2f

Last change on this file since d24c2f was 894a5f, checked in by Julian Iseringhausen <isering@…>, 14 years ago

Parallel performance update.

git-svn-id: https://svn.version.fz-juelich.de/scafacos/trunk@1314 5161e1c8-67bf-11de-9fd5-51895aff932f

  • Property mode set to 100644
File size: 1.1 KB
Line 
1/**
2 * @file interface_particles.hpp
3 * @author Julian Iseringhausen <isering@ins.uni-bonn.de>
4 * @date Tue Apr 12 17:40:36 2011
5 *
6 * @brief Interface for computing forces and energies in
7 * particle systems.
8 *
9 */
10
11#ifndef INTERFACE_PARTICLES_HPP
12#define INTERFACE_PARTIVLES_HPP
13
14#include <list>
15
16#include "base/linked_cell_list.hpp"
17#include "base/particle.hpp"
18#include "comm/mpi/has_request_vec.hpp"
19#include "interface/interface.hpp"
20#include "samples/bspline.hpp"
21
22namespace VMG
23{
24
25class Grid;
26class Multigrid;
27
28class InterfaceParticles : public Interface, public HasRequestVec
29{
30public:
31 InterfaceParticles(const Boundary& boundary, const int& levelMin, const int& levelMax,
32 const Vector& box_offset, const vmg_float& box_size,
33 const int& near_field_cells) :
34 Interface(boundary, levelMin, levelMax, box_offset, box_size, 0, 1.0),
35 HasRequestVec(),
36 spl((near_field_cells+0.5)*Extent(MaxLevel()).MeshWidth().Max())
37 {}
38
39 void ImportRightHandSide(Multigrid& multigrid);
40 void ExportSolution(Grid& grid);
41
42protected:
43 BSpline spl;
44
45private:
46 std::list<Particle::Particle> particles;
47};
48
49}
50
51#endif /* INTERFACE_PARTICLES_HPP */
Note: See TracBrowser for help on using the repository browser.