Peano
Loading...
Searching...
No Matches
ParticleFactory.h
Go to the documentation of this file.
1// This file is part of the Peano project. For conditions of distribution and
2// use, please see the copyright notice at www.peano-framework.org
3#pragma once
4
8
9#include <vector>
10
11
12namespace toolbox {
13 namespace particles {
14
30 template <class T>
31 void init(
32 T& particle,
34 double searchRadius
35 );
36
61 template <class T>
63 double spacingH,
66 bool addNoise,
67 double noiseScale = 1.
68 );
69
84 template <class T>
86 double spacingH,
89 const tarch::la::Vector<Dimensions, double>& domainOffset,
91 bool addNoise,
92 double noiseScale = 1.
93 );
94 } // namespace particles
95} // namespace toolbox
96
97
98#include "ParticleFactory.cpph"
std::vector< T * > createEquallySpacedParticles(double spacingH, const tarch::la::Vector< Dimensions, double > &voxelX, const tarch::la::Vector< Dimensions, double > &voxelH, bool addNoise, double noiseScale=1.)
Create equally spaced particles for one cell.
void init(T &particle, const tarch::la::Vector< Dimensions, double > &x, double searchRadius)
Init particle.
std::vector< T * > createParticlesAlignedWithGlobalCartesianMesh(double spacingH, const tarch::la::Vector< Dimensions, double > &voxelX, const tarch::la::Vector< Dimensions, double > &voxelH, const tarch::la::Vector< Dimensions, double > &domainOffset, const tarch::la::Vector< Dimensions, double > &domainSize, bool addNoise, double noiseScale=1.)
Insert particles that are aligned along a Cartesian grid globally.
Simple vector class.
Definition Vector.h:159