ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
PidPairwiseDistancesObservable.hpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2025 The ESPResSo project
3 *
4 * This file is part of ESPResSo.
5 *
6 * ESPResSo is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * ESPResSo is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19#ifndef OBSERVABLES_PIDPAIRWISEDISTANCESOBSERVABLE_HPP
20#define OBSERVABLES_PIDPAIRWISEDISTANCESOBSERVABLE_HPP
21
22#include "PidObservable.hpp"
23
24#include <stdexcept>
25#include <vector>
26
27namespace Observables {
28
29/** @brief Calculate pairwise distances between two sets of particles. */
31 std::vector<int> const m_target_ids;
32
33public:
34 PidPairwiseDistancesObservable(std::vector<int> const &ids,
35 std::vector<int> const &target_ids)
36 : PidObservable(ids), m_target_ids(target_ids) {}
37 std::vector<int> const &target_ids() const { return m_target_ids; }
38};
39
40} // Namespace Observables
41#endif
std::vector< int > const & ids() const
Calculate pairwise distances between two sets of particles.
PidPairwiseDistancesObservable(std::vector< int > const &ids, std::vector< int > const &target_ids)