summaryrefslogtreecommitdiff
path: root/dimers.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dimers.cpp')
-rw-r--r--dimers.cpp23
1 files changed, 5 insertions, 18 deletions
diff --git a/dimers.cpp b/dimers.cpp
index d5cfdf4..722c33c 100644
--- a/dimers.cpp
+++ b/dimers.cpp
@@ -57,18 +57,7 @@ int main(int argc, char* argv[]) {
}
auto zSingle = zSpheres<D>(a, k);
-
- std::function<double(const Spin<double, D, Dimer<double, D>>&,
- const Spin<double, D, Dimer<double, D>>&)>
- Z = [zSingle, a, k](const Spin<double, D, Dimer<double, D>>& s1,
- const Spin<double, D, Dimer<double, D>>& s2) -> double {
- Spin<double, D, Radius> s11 = {.x = s1.x + s1.s.relativePosition, .s = s1.s.radius};
- Spin<double, D, Radius> s12 = {.x = s1.x - s1.s.relativePosition, .s = s1.s.radius};
- Spin<double, D, Radius> s21 = {.x = s2.x + s2.s.relativePosition, .s = s2.s.radius};
- Spin<double, D, Radius> s22 = {.x = s2.x - s2.s.relativePosition, .s = s2.s.radius};
-
- return zSingle(s11, s21) + zSingle(s12, s21) + zSingle(s11, s22) + zSingle(s12, s22);
- };
+ auto Z = zDimers(zSingle);
auto g1 = nudgeGen<D, Dimer<double, D>>(1);
auto g2 = swapGen<D, Dimer<double, D>>(0.1);
@@ -104,18 +93,16 @@ int main(int argc, char* argv[]) {
file.close();
- /*
std::ofstream snapfile;
- snapfile.open("sphere_snap.dat");
+ snapfile.open("dimers_field_snap.dat");
- for (Spin<double, D, double>* s : sphere.s) {
- Spin<double, D, double> rs = sphere.s0.inverse().act(*s);
- snapfile << rs.s << " " << rs.x.transpose() << "\n";
+ for (Spin<double, D, Dimer<double, D>>* s : sphere.s) {
+ Spin<double, D, Dimer<double, D>> rs = sphere.s0.inverse().act(*s);
+ snapfile << rs.s.radius << " " << rs.x.transpose() << " " << rs.s.relativePosition.transpose() << "\n";
delete s;
}
snapfile.close();
- */
return 0;
}