MPS-Basic
Loading...
Searching...
No Matches
distribution.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "interface.hpp"
4
5namespace SurfaceDetector {
12class Distribution : public Interface {
13public:
14 bool isFreeSurface(const Particles& particles, const Particle& particle) override;
15 ~Distribution() override;
16
19 );
20
21private:
22 double n0;
26
27 bool mainDetection(const Particles& particles, const Particle& particle);
28 bool subDetection(const Particles& particles, const Particle& particle);
29};
30} // namespace SurfaceDetector
Class for particle in MPS method.
Definition particle.hpp:47
A collection of particles.
Definition particles.hpp:10
Detects free surface based on number density and assists evaluation by particle distribution.
double distributionThresholdRatio
Threshold ratio for particle distribution.
bool mainDetection(const Particles &particles, const Particle &particle)
Main detection based on number density.
double particleDistance
Particle distance.
double numberDensityThresholdRatio
Threshold ratio for number density.
bool subDetection(const Particles &particles, const Particle &particle)
Sub detection based on particle distribution.
double n0
Reference value for number density.
bool isFreeSurface(const Particles &particles, const Particle &particle) override
Whether the particle is on the free surface.
Distribution(double n0, double particleDistance, double distributionThresholdRatio, double numberDensityThresholdRatio)