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
5#include <vector>
6
10
11
12namespace toolbox {
13 namespace particles {
14
30 template <class T>
31 void init(T& particle, const tarch::la::Vector<Dimensions, double>& x, double searchRadius);
32
55 template <class T>
56 std::vector<T*> createEquallySpacedParticles(
57 double spacingH,
60 bool addNoise
61 );
62
74 template <class T>
76 double spacingH,
79 const tarch::la::Vector<Dimensions, double>& domainOffset,
81 bool addNoise
82 );
83 } // namespace particles
84} // namespace toolbox
85
86
87#include "ParticleFactory.cpph"
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)
Insert particles that are aligned along a Cartesian grid globally.
std::vector< T * > createEquallySpacedParticles(double spacingH, const tarch::la::Vector< Dimensions, double > &voxelX, const tarch::la::Vector< Dimensions, double > &voxelH, bool addNoise)
Create equally spaced particles for one cell.
void init(T &particle, const tarch::la::Vector< Dimensions, double > &x, double searchRadius)
Init particle.
Simple vector class.
Definition Vector.h:150