Formatting
This commit is contained in:
@@ -1,43 +1,47 @@
|
||||
#include "sixsitejump.h"
|
||||
#include "coordinates.h"
|
||||
#include "../utils/registry.h"
|
||||
#include "coordinates.h"
|
||||
|
||||
static AutoRegister<motions::BaseMotion, motions::SixSiteOctahedronC3> reg("SixSiteOctahedralC3");
|
||||
static AutoRegister<motions::BaseMotion, motions::SixSiteOctahedronC3>
|
||||
reg("SixSiteOctahedralC3");
|
||||
|
||||
namespace motions {
|
||||
SixSiteOctahedronC3::SixSiteOctahedronC3(const double delta, const double eta, const double chi) :
|
||||
BaseMotion(std::string{"SixSiteOctahedral"}, delta, eta),
|
||||
m_chi{chi*M_PI/180.} {}
|
||||
SixSiteOctahedronC3::SixSiteOctahedronC3(const double delta, const double eta,
|
||||
const double chi)
|
||||
: BaseMotion(std::string{"SixSiteOctahedral"}, delta, eta),
|
||||
m_chi{chi * M_PI / 180.} {}
|
||||
|
||||
SixSiteOctahedronC3::SixSiteOctahedronC3() : BaseMotion(std::string{"SixSiteOctahedralC3"}) {}
|
||||
SixSiteOctahedronC3::SixSiteOctahedronC3()
|
||||
: BaseMotion(std::string{"SixSiteOctahedralC3"}) {}
|
||||
|
||||
void SixSiteOctahedronC3::initialize(std::mt19937_64& rng) {
|
||||
const coordinates::SphericalPos c3_axis = draw_position(rng);
|
||||
const double alpha = 2. * M_PI * m_uni_dist(rng);
|
||||
void SixSiteOctahedronC3::initialize(std::mt19937_64 &rng) {
|
||||
const coordinates::SphericalPos c3_axis = draw_position(rng);
|
||||
const double alpha = 2. * M_PI * m_uni_dist(rng);
|
||||
|
||||
const double m_chi_opposite = M_PI - m_chi;
|
||||
const double m_chi_opposite = M_PI - m_chi;
|
||||
|
||||
for (int i = 0; i<3; i++) {
|
||||
m_corners[2*i] = omega_q(rotate(c3_axis, m_chi, alpha + i * 2./3.*M_PI));
|
||||
m_corners[2*i+1] = omega_q(rotate(c3_axis, m_chi_opposite, alpha + i * 2./3.*M_PI + M_PI/3.));
|
||||
}
|
||||
for (int i = 0; i < 3; i++) {
|
||||
m_corners[2 * i] =
|
||||
omega_q(rotate(c3_axis, m_chi, alpha + i * 2. / 3. * M_PI));
|
||||
m_corners[2 * i + 1] = omega_q(rotate(
|
||||
c3_axis, m_chi_opposite, alpha + i * 2. / 3. * M_PI + M_PI / 3.));
|
||||
}
|
||||
|
||||
m_initial_omega = SixSiteOctahedronC3::jump(rng);
|
||||
}
|
||||
|
||||
|
||||
double SixSiteOctahedronC3::jump(std::mt19937_64& rng) {
|
||||
m_corner_idx += m_chooser(rng);
|
||||
m_corner_idx %= 6;
|
||||
|
||||
return m_corners[m_corner_idx];
|
||||
}
|
||||
|
||||
std::unique_ptr<BaseMotion> SixSiteOctahedronC3::clone() const {
|
||||
return std::make_unique<SixSiteOctahedronC3>(*this);
|
||||
}
|
||||
|
||||
std::string SixSiteOctahedronC3::toString() const {
|
||||
return {"SixSiteOctahedral/angle=" + std::to_string(m_chi / M_PI * 180.)};
|
||||
}
|
||||
m_initial_omega = SixSiteOctahedronC3::jump(rng);
|
||||
}
|
||||
|
||||
double SixSiteOctahedronC3::jump(std::mt19937_64 &rng) {
|
||||
m_corner_idx += m_chooser(rng);
|
||||
m_corner_idx %= 6;
|
||||
|
||||
return m_corners[m_corner_idx];
|
||||
}
|
||||
|
||||
std::unique_ptr<BaseMotion> SixSiteOctahedronC3::clone() const {
|
||||
return std::make_unique<SixSiteOctahedronC3>(*this);
|
||||
}
|
||||
|
||||
std::string SixSiteOctahedronC3::toString() const {
|
||||
return {"SixSiteOctahedral/angle=" + std::to_string(m_chi / M_PI * 180.)};
|
||||
}
|
||||
} // namespace motions
|
||||
|
||||
Reference in New Issue
Block a user