Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
InterpolatedSolenoidBFieldTest.cpp File Reference
#include <boost/test/data/test_case.hpp>
#include <boost/test/unit_test.hpp>
#include "Acts/Definitions/Units.hpp"
#include "Acts/MagneticField/BFieldMapUtils.hpp"
#include "Acts/MagneticField/InterpolatedBFieldMap.hpp"
#include "Acts/MagneticField/SolenoidBField.hpp"
#include "Acts/Tests/CommonHelpers/FloatComparisons.hpp"
#include "Acts/Utilities/VectorHelpers.hpp"
#include "Acts/Utilities/detail/Axis.hpp"
#include "Acts/Utilities/detail/Grid.hpp"
#include <cmath>
#include <fstream>
#include <iostream>
#include <random>
+ Include dependency graph for InterpolatedSolenoidBFieldTest.cpp:

Go to the source code of this file.

Classes

struct  Acts::IntegrationTest::StreamWrapper
 

Namespaces

namespace  Acts
 Acts includes to create all necessary definitions.
 
namespace  Acts::IntegrationTest
 

Functions

auto Acts::IntegrationTest::makeFieldMap (const SolenoidBField &field)
 
StreamWrapper Acts::IntegrationTest::valid (std::ofstream("magfield_lookup.csv"))
 
 Acts::IntegrationTest::BOOST_DATA_TEST_CASE (solenoid_interpolated_bfield_comparison, bdata::random((bdata::seed=1, bdata::engine=std::mt19937(), bdata::distribution=std::uniform_real_distribution<>(1.5 *(-L/2.), 1.5 *L/2.)))^bdata::random((bdata::seed=2, bdata::engine=std::mt19937(), bdata::distribution=std::uniform_real_distribution<>(0, R *1.5)))^bdata::random((bdata::seed=3, bdata::engine=std::mt19937(), bdata::distribution=std::uniform_real_distribution<>(-M_PI, M_PI)))^bdata::xrange(ntests), z, r, phi, index)
 

Variables

const double Acts::IntegrationTest::L = 5.8_m
 
const double Acts::IntegrationTest::R = (2.56 + 2.46) * 0.5 * 0.5_m
 
const size_t Acts::IntegrationTest::nCoils = 1154
 
const double Acts::IntegrationTest::bMagCenter = 2_T
 
const size_t Acts::IntegrationTest::nBinsR = 150
 
const size_t Acts::IntegrationTest::nBinsZ = 200
 
Acts::SolenoidBField Acts::IntegrationTest::bSolenoidField ({R, L, nCoils, bMagCenter})
 
auto Acts::IntegrationTest::bFieldMap = makeFieldMap(bSolenoidField)
 
auto Acts::IntegrationTest::bCache = bFieldMap.makeCache(Acts::MagneticFieldContext{})
 
const int Acts::IntegrationTest::ntests = 10000