ASPECT
particle_distribution_statistics.h
Go to the documentation of this file.
1 // ------------------------------------------------------
2 //
3 // SPDX-License-Identifier: GPL-2.0-or-later
4 //
5 // SPDX-FileCopyrightText: Copyright (C) 2025-2026 by the ASPECT authors.
6 //
7 // This file is part of ASPECT.
8 //
9 // Detailed license information governing the source code and
10 // contributions can be found in the folder LICENSES and in
11 // LICENSE and CONTRIBUTING.md at the top level directory.
12 //
13 // ------------------------------------------------------
14 
15 #ifndef _aspect_postprocess_particle_distribution_statistics_h
16 #define _aspect_postprocess_particle_distribution_statistics_h
17 
21 
22 namespace aspect
23 {
24  namespace Postprocess
25  {
26 
35  template <int dim>
37  {
38  public:
42  void initialize() override;
43 
47  std::pair<std::string,std::string>
48  execute (TableHandler &statistics) override;
49 
54  std::list<std::string>
55  required_other_postprocessors() const override;
56 
60  static
61  void
63 
67  void
68  parse_parameters (ParameterHandler &prm) override;
69 
70  private:
79 
88  unsigned int granularity;
89 
100  double bandwidth;
101 
107 
115  std::vector<typename Particles::ParticleHandler<dim>::particle_iterator_range>
117  const typename Particles::ParticleHandler<dim> &particle_handler);
118 
123  std::unique_ptr<GridTools::Cache<dim>> grid_cache;
124  };
125  }
126 }
127 
128 
129 #endif
std::vector< typename Particles::ParticleHandler< dim >::particle_iterator_range > get_neighboring_particle_ranges(const typename Triangulation< dim >::active_cell_iterator &cell, const typename Particles::ParticleHandler< dim > &particle_handler)
Particle::ParticlePDF< dim >::KernelFunction kernel_function
std::pair< std::string, std::string > execute(TableHandler &statistics) override
static void declare_parameters(ParameterHandler &prm)
void parse_parameters(ParameterHandler &prm) override
std::list< std::string > required_other_postprocessors() const override