15#define BOOST_TEST_MODULE Test MCHSimulation GeometryMisAligner
16#define BOOST_TEST_DYN_LINK
18#include <boost/test/unit_test.hpp>
24#include "TGeoManager.h"
27#include "Math/GenVector/Cartesian3D.h"
28#include "boost/format.hpp"
29#include <boost/test/data/test_case.hpp>
32#include <fmt/format.h>
34namespace but = boost::unit_test;
35namespace bdata = boost::unit_test::data;
50BOOST_FIXTURE_TEST_SUITE(geometrymisaligner,
GEOMETRY)
54 BOOST_REQUIRE(gGeoManager !=
nullptr);
56 std::vector<o2::detectors::AlignParam>
params;
76 BOOST_REQUIRE(gGeoManager !=
nullptr);
78 std::vector<o2::detectors::AlignParam>
params;
113 if (
params[
i].getSymName().find(
"DE") != std::string::npos) {
126 BOOST_REQUIRE(gGeoManager !=
nullptr);
128 std::vector<o2::detectors::AlignParam>
params;
141 std::cout <<
params[
i].getSymName() << std::endl;
142 if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 100)) {
149 }
else if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 101)) {
156 }
else if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 102)) {
163 }
else if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 103)) {
176 BOOST_REQUIRE(gGeoManager !=
nullptr);
178 std::vector<o2::detectors::AlignParam>
params;
218 std::cout <<
params[
i].getSymName() << std::endl;
219 if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 100)) {
226 }
else if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 101)) {
233 }
else if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 102)) {
240 }
else if (
params[
i].getSymName() == fmt::format(
"MCH/HC{}/DE{}", 0, 103)) {
251BOOST_AUTO_TEST_SUITE_END()
Interface for MCH geometry creation.
void setCartMisAlig(double xmean, double xwidth, double ymean, double ywidth, double zmean=0., double zwidth=0.)
Set cartesian displacement parameters different along x, y.
void setModuleAngMisAlig(double xmean, double xwidth, double ymean, double ywidth, double zmean, double zwidth)
Set module (half chambers) cartesian displacement parameters.
void setModuleCartMisAlig(double xmean, double xwidth, double ymean, double ywidth, double zmean, double zwidth)
Set module (half chambers) cartesian displacement parameters.
void misAlign(std::vector< o2::detectors::AlignParam > &arr, bool verbose=false) const
void setAngMisAlig(double zmean, double zwidth, double xmean=0., double xwidth=0., double ymean=0., double ywidth=0.)
Set angular displacement.
GLenum const GLfloat * params
void addAlignableVolumes(TGeoManager &geom)
TransformationCreator transformationFromTGeoManager(const TGeoManager &geo)
void createStandaloneGeometry()
double * getX(double *xyDxy, int N)
double * getY(double *xyDxy, int N)
o2::math_utils::Point3D< double > poB
o2::mch::geo::MisAligner aGMA
std::vector< o2::detectors::AlignParam > params
o2::math_utils::Point3D< double > po
BOOST_TEST(po.X() - poB.X()==0.1)