votca 2024.2-dev
Loading...
Searching...
No Matches
tabulatedpotential.h
Go to the documentation of this file.
1/*
2 * Copyright 2009-2020 The VOTCA Development Team (http://www.votca.org)
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17
18#ifndef VOTCA_CSG_TABULATEDPOTENTIAL_H
19#define VOTCA_CSG_TABULATEDPOTENTIAL_H
20
21#include "analysistool.h"
22#include "bondedstatistics.h"
23#include <vector>
25
26namespace votca {
27namespace csg {
103 public:
105 ~TabulatedPotential() override = default;
106
107 void Register(std::map<std::string, AnalysisTool *> &lib) override;
108
109 void Command(BondedStatistics &bs, const std::string &cmd,
110 std::vector<std::string> &args) override;
111
112 void Help(const std::string &cmd, std::vector<std::string> &args) override;
113
114 void WriteHistogram(BondedStatistics &bs, std::vector<std::string> &args);
115 void WritePotential(BondedStatistics &bs, std::vector<std::string> &args);
116
122 double getTemperature() const;
123
135 std::pair<Index, Index> getSmoothIterations() const;
136
137 private:
139 const std::vector<std::string> &args);
140
141 bool SetOption_(const std::vector<std::string> &args);
142
154 void Smooth_(std::vector<double> &data, bool bPeriodic);
155 void BoltzmannInvert_(std::vector<double> &data);
156 void CalcForce_(std::vector<double> &U, std::vector<double> &F, double dx,
157 bool bPeriodic);
158
161
170};
171} // namespace csg
172} // namespace votca
173#endif // VOTCA_CSG_TABULATEDPOTENTIAL_H
Class calculates data associated with bond interactions.
Tabulated Potential calculates histograms of bead interactions.
std::pair< Index, Index > getSmoothIterations() const
Method returns the number of smoothing iterations used on the data.
bool SetOption_(const std::vector< std::string > &args)
double getTemperature() const
Returns the temperature used during the bolzmann inversion.
void Command(BondedStatistics &bs, const std::string &cmd, std::vector< std::string > &args) override
double Temperature_
Temperature in units of Kelvin.
void Help(const std::string &cmd, std::vector< std::string > &args) override
void WritePotential(BondedStatistics &bs, std::vector< std::string > &args)
votca::tools::Histogram::options_t hist_options_
void BoltzmannInvert_(std::vector< double > &data)
void CalcForce_(std::vector< double > &U, std::vector< double > &F, double dx, bool bPeriodic)
votca::tools::Histogram::options_t tab_options_
bool SetOption_(votca::tools::Histogram::options_t &op, const std::vector< std::string > &args)
void WriteHistogram(BondedStatistics &bs, std::vector< std::string > &args)
void Register(std::map< std::string, AnalysisTool * > &lib) override
~TabulatedPotential() override=default
void Smooth_(std::vector< double > &data, bool bPeriodic)
Smooths a vector of doubles.
base class for all analysis tools
Definition basebead.h:33
Eigen::Index Index
Definition types.h:26