ls1-MarDyn
ls1-MarDyn molecular dynamics code
FullShell.h
1/*
2 * FullShell.h
3 *
4 * Created on: Oct 10, 2016
5 * Author: seckler
6 */
7
8#pragma once
9
10#include "ZonalMethod.h"
11
12
13class FullShell: public ZonalMethod {
14public:
15 FullShell() = default;
16 ~~FullShell() override= default;
17
26 std::vector<HaloRegion> getHaloImportForceExportRegions(HaloRegion& initialRegion, double cutoffRadius,
27 bool coversWholeDomain[3], double cellLength[3]) override {
28 auto condition = [](const int[3])->bool {
29 // no condition for leaving particles.
30 return true;
31 };
32 return getHaloRegionsConditional(initialRegion, cutoffRadius, coversWholeDomain, condition);
33 }
34
35 std::vector<HaloRegion> getHaloExportForceImportRegions(HaloRegion& initialRegion, double cutoffRadius,
36 bool coversWholeDomain[3], double cellLength[3]) override {
37 auto condition = [](const int[3])->bool {
38 // no condition for leaving particles.
39 return true;
40 };
41 return getHaloRegionsConditionalInside(initialRegion, cutoffRadius, coversWholeDomain, condition);
42 }
43};
44
Definition: FullShell.h:13
std::vector< HaloRegion > getHaloExportForceImportRegions(HaloRegion &initialRegion, double cutoffRadius, bool coversWholeDomain[3], double cellLength[3]) override
Definition: FullShell.h:35
std::vector< HaloRegion > getHaloImportForceExportRegions(HaloRegion &initialRegion, double cutoffRadius, bool coversWholeDomain[3], double cellLength[3]) override
Definition: FullShell.h:26
Definition: ZonalMethod.h:14
std::vector< HaloRegion > getHaloRegionsConditionalInside(HaloRegion &initialRegion, double cutoffRadius, bool coversWholeDomain[3], const std::function< bool(const int[3])> &condition)
Definition: ZonalMethod.cpp:132
std::vector< HaloRegion > getHaloRegionsConditional(HaloRegion &initialRegion, double cutoffRadius, bool coversWholeDomain[3], const std::function< bool(const int[3])> &condition)
Definition: ZonalMethod.cpp:76
Definition: HaloRegion.h:10