56
56
class PolynomialOpticsModelTest : public testing::Test {
58
58
PolynomialOpticsModelTest()
59
: default_virtual_planes_(MAUS::MAUSGeant4Manager::GetInstance()
60
->GetVirtualPlanes()) {
59
: default_virtual_planes_(
60
new MAUS::VirtualPlaneManager(*MAUS::MAUSGeant4Manager::GetInstance()
61
->GetVirtualPlanes())) {
61
62
MAUS::MAUSGeant4Manager * simulation
62
63
= MAUS::MAUSGeant4Manager::GetInstance();
112
113
std::cout << "Globals:" << std::endl
113
114
<< (*MAUS::Globals::GetConfigurationCards()) << std::endl;
115
simulation->SetVirtualPlanes(&virtual_planes_);
115
virtual_planes_ = new MAUS::VirtualPlaneManager();
116
simulation->SetVirtualPlanes(virtual_planes_);
116
117
MAUS::VirtualPlane start_plane = MAUS::VirtualPlane::BuildVirtualPlane(
117
118
CLHEP::HepRotation(), CLHEP::Hep3Vector(0., 0., 1000.), -1, true,
118
119
1000., BTTracker::z, MAUS::VirtualPlane::ignore, false);
119
virtual_planes_.AddPlane(new MAUS::VirtualPlane(start_plane), NULL);
120
virtual_planes_->AddPlane(new MAUS::VirtualPlane(start_plane), NULL);
121
122
MAUS::VirtualPlane mid_plane = MAUS::VirtualPlane::BuildVirtualPlane(
122
123
CLHEP::HepRotation(), CLHEP::Hep3Vector(0., 0., 2000.), -1, true,
123
124
2000., BTTracker::z, MAUS::VirtualPlane::ignore, false);
124
virtual_planes_.AddPlane(new MAUS::VirtualPlane(mid_plane), NULL);
125
virtual_planes_->AddPlane(new MAUS::VirtualPlane(mid_plane), NULL);
126
127
MAUS::VirtualPlane end_plane = MAUS::VirtualPlane::BuildVirtualPlane(
127
128
CLHEP::HepRotation(), CLHEP::Hep3Vector(0., 0., 3000.), -1, true,
128
129
3000., BTTracker::z, MAUS::VirtualPlane::ignore, false);
129
virtual_planes_.AddPlane(new MAUS::VirtualPlane(end_plane), NULL);
130
virtual_planes_->AddPlane(new MAUS::VirtualPlane(end_plane), NULL);
132
133
~PolynomialOpticsModelTest() {
153
154
static const double kCovariances[36];
154
155
static const MAUS::CovarianceMatrix kCovarianceMatrix;
156
MAUS::VirtualPlaneManager* virtual_planes_;
157
MAUS::VirtualPlaneManager* default_virtual_planes_;
156
MAUS::VirtualPlaneManager virtual_planes_;
157
MAUS::VirtualPlaneManager * default_virtual_planes_;
160
162
// *************************************************
195
197
TEST_F(PolynomialOpticsModelTest, Transport) {
196
198
PolynomialOpticsModel optics_model(
197
199
*MAUS::Globals::GetConfigurationCards());
199
200
// The configuration specifies a 2m drift between 1m and 3m.
200
201
optics_model.Build();
202
202
// Check transport to start plane
203
203
MAUS::PhaseSpaceVector input_vector(0., 226., 1., 0., 3., 0.);
204
204
MAUS::PhaseSpaceVector output_vector = optics_model.Transport(input_vector,