Add Space class

The Space class handles the simulation space
This commit is contained in:
2023-10-29 20:50:54 -03:00
parent de4231f207
commit bec25fec40
7 changed files with 314 additions and 25 deletions

View File

@@ -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));
}
};