Last change
on this file since 97dff0 was 56f73b, checked in by Frederik Heber <heber@…>, 14 years ago |
Added config.h also to all header files, code check test ascertain this in the future.
- as we want to use config.h to pass stuff such as MEMDEBUG, NDEBUG,
LOG_OBSERVER, we have to make sure that it is present in each and every
file.
- split up CodeChecks/testsuite.at: each test has its own .at file.
|
-
Property mode
set to
100644
|
File size:
1.3 KB
|
Rev | Line | |
---|
[194649] | 1 | /*
|
---|
| 2 | * NoseHoover.hpp
|
---|
| 3 | *
|
---|
| 4 | * Created on: Aug 20, 2010
|
---|
| 5 | * Author: crueger
|
---|
| 6 | */
|
---|
| 7 |
|
---|
| 8 | #ifndef NOSEHOOVER_HPP_
|
---|
| 9 | #define NOSEHOOVER_HPP_
|
---|
| 10 |
|
---|
[56f73b] | 11 | // include config.h
|
---|
| 12 | #ifdef HAVE_CONFIG_H
|
---|
| 13 | #include <config.h>
|
---|
| 14 | #endif
|
---|
| 15 |
|
---|
| 16 |
|
---|
[194649] | 17 | #include "Thermostats/Thermostat.hpp"
|
---|
| 18 |
|
---|
| 19 | class NoseHoover : public Thermostat
|
---|
| 20 | {
|
---|
| 21 | public:
|
---|
[579a81] | 22 | NoseHoover(double _HooverMass);
|
---|
[3e4162] | 23 | NoseHoover();
|
---|
[194649] | 24 | virtual ~NoseHoover();
|
---|
| 25 |
|
---|
[579a81] | 26 | virtual double scaleAtoms(unsigned int step,double ActualTemp,ATOMSET(std::list) atoms);
|
---|
| 27 | virtual double scaleAtoms(unsigned int step,double ActualTemp,ATOMSET(std::vector) atoms);
|
---|
| 28 | virtual double scaleAtoms(unsigned int step,double ActualTemp,ATOMSET(std::set) atoms);
|
---|
[194649] | 29 |
|
---|
[579a81] | 30 | virtual std::string name();
|
---|
| 31 | virtual std::string writeParams();
|
---|
[194649] | 32 |
|
---|
| 33 | private:
|
---|
| 34 | template <class ForwardIterator>
|
---|
| 35 | void init(unsigned int step,ForwardIterator begin, ForwardIterator end);
|
---|
| 36 | template <class ForwardIterator>
|
---|
[579a81] | 37 | double doScaleAtoms(unsigned int step,double ActualTemp,ForwardIterator begin, ForwardIterator end);
|
---|
[194649] | 38 |
|
---|
[579a81] | 39 | double HooverMass;
|
---|
[194649] | 40 | double delta_alpha;
|
---|
[c0c650] | 41 | double alpha;
|
---|
[194649] | 42 | int count;
|
---|
| 43 | };
|
---|
| 44 |
|
---|
[579a81] | 45 | template <>
|
---|
[0b882a] | 46 | struct ThermostatTraits<class NoseHoover> : public ThermostatTraits<Thermostat>
|
---|
| 47 | {
|
---|
[c0c650] | 48 | virtual Thermostat *make(class ConfigFileBuffer * const fb);
|
---|
[14c57a] | 49 | virtual std::string getName();
|
---|
| 50 | static const char* name;
|
---|
[579a81] | 51 | };
|
---|
| 52 |
|
---|
| 53 |
|
---|
[194649] | 54 | #endif /* NOSEHOOVER_HPP_ */
|
---|
Note:
See
TracBrowser
for help on using the repository browser.