Skip to content

Commit 5f3a0c1

Browse files
committed
[Test] Replace deprecated syntax in reactor tests
1 parent 647634f commit 5f3a0c1

File tree

1 file changed

+24
-32
lines changed

1 file changed

+24
-32
lines changed

test/zeroD/test_zeroD.cpp

Lines changed: 24 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -306,46 +306,42 @@ TEST(JacobianTests, test_wall_jacobian_build)
306306
// create first reactor
307307
auto sol1 = newSolution("h2o2.yaml");
308308
sol1->thermo()->setState_TPY(1000.0, OneAtm, " O2:1.0");
309-
IdealGasMoleReactor reactor1;
310-
reactor1.setSolution(sol1);
311-
reactor1.setInitialVolume(1.0);
309+
auto reactor1 = make_shared<IdealGasMoleReactor>(sol1);
310+
reactor1->setInitialVolume(1.0);
312311
// create second reactor
313312
auto sol2 = newSolution("h2o2.yaml");
314313
sol2->thermo()->setState_TPY(900.0, OneAtm, " O2:1.0");
315-
IdealGasConstPressureMoleReactor reactor2;
316-
reactor2.setSolution(sol2);
317-
reactor2.setInitialVolume(1.0);
314+
auto reactor2 = make_shared<IdealGasConstPressureMoleReactor>(sol2);
315+
reactor2->setInitialVolume(1.0);
318316
// create the wall
319-
Wall w;
320-
w.install(reactor1, reactor2);
317+
Wall w(reactor1, reactor2);
321318
w.setArea(2.0);
322319
w.setHeatTransferCoeff(3.0);
323320
// setup reactor network and integrate
324-
ReactorNet network;
325-
network.addReactor(reactor1);
326-
network.addReactor(reactor2);
321+
vector<shared_ptr<ReactorBase>> reactors = {reactor1, reactor2};
322+
ReactorNet network(reactors);
327323
network.initialize();
328324
// create jacobian the size of network
329325
Eigen::SparseMatrix<double> wallJacMat;
330326
wallJacMat.resize(network.neq(), network.neq());
331327
// manually get wall jacobian elements
332328
vector<Eigen::Triplet<double>> wallJac;
333329
// build jac for reactor 1 wall only
334-
w.buildReactorJacobian(&reactor1, wallJac);
330+
w.buildReactorJacobian(reactor1.get(), wallJac);
335331
wallJacMat.setFromTriplets(wallJac.begin(), wallJac.end());
336332
// check that wall jacobian forms correct value
337333
double v1 = sol1->thermo()->temperature() * w.area() * w.getHeatTransferCoeff();
338334
for (int k = 0; k < wallJacMat.outerSize(); k++) {
339335
for (Eigen::SparseMatrix<double>::InnerIterator it(wallJacMat, k); it; ++it) {
340336
EXPECT_DOUBLE_EQ(it.value(), v1);
341337
EXPECT_EQ(it.row(), 0); // check that it is the first row
342-
EXPECT_GE(it.col(), reactor1.speciesOffset());
343-
EXPECT_LT(it.col(), reactor1.neq());
338+
EXPECT_GE(it.col(), reactor1->speciesOffset());
339+
EXPECT_LT(it.col(), reactor1->neq());
344340
}
345341
}
346342
// build jac for reactor 2 wall only
347343
wallJac.clear();
348-
w.buildReactorJacobian(&reactor2, wallJac);
344+
w.buildReactorJacobian(reactor2.get(), wallJac);
349345
wallJacMat.setZero();
350346
wallJacMat.setFromTriplets(wallJac.begin(), wallJac.end());
351347
// check that wall jacobian forms correct value
@@ -354,8 +350,8 @@ TEST(JacobianTests, test_wall_jacobian_build)
354350
for (Eigen::SparseMatrix<double>::InnerIterator it(wallJacMat, k); it; ++it) {
355351
EXPECT_DOUBLE_EQ(it.value(), -v2);
356352
EXPECT_EQ(it.row(), 0); // check that it is the first row
357-
EXPECT_GE(it.col(), reactor2.speciesOffset());
358-
EXPECT_LT(it.col(), reactor2.neq());
353+
EXPECT_GE(it.col(), reactor2->speciesOffset());
354+
EXPECT_LT(it.col(), reactor2->neq());
359355
}
360356
}
361357
// build jac for network terms
@@ -370,13 +366,13 @@ TEST(JacobianTests, test_wall_jacobian_build)
370366
if (it.value() < 0) {
371367
EXPECT_DOUBLE_EQ(it.value(), -5400.0);
372368
EXPECT_EQ(it.row(), 0); // check that it is the first row
373-
EXPECT_GE(it.col(), reactor1.neq() + reactor2.speciesOffset());
374-
EXPECT_LT(it.col(), reactor1.neq() + reactor2.neq());
369+
EXPECT_GE(it.col(), reactor1->neq() + reactor2->speciesOffset());
370+
EXPECT_LT(it.col(), reactor1->neq() + reactor2->neq());
375371
} else {
376372
EXPECT_DOUBLE_EQ(it.value(), 6000.0);
377-
EXPECT_EQ(it.row(), reactor1.neq()); // check that it is the first row
378-
EXPECT_GE(it.col(), reactor2.speciesOffset());
379-
EXPECT_LT(it.col(), reactor1.neq());
373+
EXPECT_EQ(it.row(), reactor1->neq()); // check that it is the first row
374+
EXPECT_GE(it.col(), reactor2->speciesOffset());
375+
EXPECT_LT(it.col(), reactor1->neq());
380376
}
381377
}
382378
}
@@ -387,24 +383,20 @@ TEST(JacobianTests, test_flow_jacobian_not_implemented)
387383
// create reservoir reactor
388384
auto sol = newSolution("h2o2.yaml");
389385
sol->thermo()->setState_TPY(1000.0, OneAtm, "O2:1.0");
390-
Reservoir res;
391-
res.setSolution(sol);
386+
auto res = make_shared<Reservoir>(sol);
392387
// create reactor
393-
IdealGasConstPressureMoleReactor reactor;
394-
reactor.setSolution(sol);
395-
reactor.setInitialVolume(1.0);
388+
auto reactor = make_shared<IdealGasConstPressureMoleReactor>(sol);
389+
reactor->setInitialVolume(1.0);
396390
// create the flow device
397-
MassFlowController mfc;
398-
mfc.install(res, reactor);
391+
MassFlowController mfc(res, reactor);
399392
mfc.setMassFlowCoeff(1.0);
400393
// setup reactor network and integrate
401-
ReactorNet network;
402-
network.addReactor(reactor);
394+
ReactorNet network(reactor);
403395
network.initialize();
404396
// manually get wall jacobian elements
405397
vector<Eigen::Triplet<double>> flowJac;
406398
// expect errors from building jacobians
407-
EXPECT_THROW(mfc.buildReactorJacobian(&reactor, flowJac), NotImplementedError);
399+
EXPECT_THROW(mfc.buildReactorJacobian(reactor.get(), flowJac), NotImplementedError);
408400
// check the jacobian calculated flag and throw/catch errors accordingly
409401
EXPECT_THROW(mfc.buildNetworkJacobian(flowJac), NotImplementedError);
410402
}

0 commit comments

Comments
 (0)