Add Space class
The Space class handles the simulation space
This commit is contained in:
@@ -11,8 +11,21 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <cmath>
|
||||
|
||||
class Potential {
|
||||
public:
|
||||
virtual double potential(double r) = 0;
|
||||
virtual double force(double r) = 0;
|
||||
};
|
||||
|
||||
class LennardJones : public Potential {
|
||||
public:
|
||||
double potential(double r) override {
|
||||
return 4 * (std::pow(r, -12) - std::pow(r, -6));
|
||||
}
|
||||
|
||||
double force(double r) override {
|
||||
return 24 * (2 * std::pow(r, -13) - std::pow(r, -7));
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user