Skip to content

Commit

Permalink
Fix test
Browse files Browse the repository at this point in the history
  • Loading branch information
jbreue16 committed Aug 28, 2024
1 parent 132db52 commit 697064a
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 57 deletions.
84 changes: 42 additions & 42 deletions test/CSTR-Residual.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ cadet::model::CSTRModel* createAndConfigureCSTR(cadet::IModelBuilder& mb, cadet:
inline cadet::JsonParameterProvider createTwoComponentLinearTestCase()
{
cadet::JsonParameterProvider jpp = createCSTR(2);
cadet::test::addBoundStates(jpp, {1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1}, 1.0);
cadet::test::addLinearBindingModel(jpp, true, {0.1, 0.2}, {1.0, 0.9});
cadet::test::setInitialConditions(jpp, {1.0, 2.0}, {3.0, 4.0}, 6.0);
cadet::test::setFlowRates(jpp, 0, 1.0);
Expand Down Expand Up @@ -278,7 +278,7 @@ inline void checkSensitivityConsistentInitialization(const std::function<cadet::
destroyModelBuilder(mb);
}

TEST_CASE("StirredTankModel Jacobian vs FD w/o binding model", "[CSTR],[UnitOp],[Residual],[Jacobian],[CSTRCI]")
TEST_CASE("StirredTankModel Jacobian vs FD w/o binding model", "[CSTR],[UnitOp],[Residual],[Jacobian],[CI]")
{
const double rateList[] = {0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
Expand Down Expand Up @@ -306,7 +306,7 @@ TEST_CASE("StirredTankModel Jacobian vs FD w/o binding model", "[CSTR],[UnitOp],
}
}

TEST_CASE("StirredTankModel Jacobian vs AD w/o binding model", "[CSTR],[UnitOp],[Residual],[Jacobian],[AD],[CSTRCI]")
TEST_CASE("StirredTankModel Jacobian vs AD w/o binding model", "[CSTR],[UnitOp],[Residual],[Jacobian],[AD],[CI]")
{
const double rateList[] = {0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
Expand Down Expand Up @@ -334,7 +334,7 @@ TEST_CASE("StirredTankModel Jacobian vs AD w/o binding model", "[CSTR],[UnitOp],
}
}

TEST_CASE("StirredTankModel time derivative Jacobian vs FD w/o binding model", "[CSTR],[UnitOp],[Residual],[Jacobian],[CSTRCI]")
TEST_CASE("StirredTankModel time derivative Jacobian vs FD w/o binding model", "[CSTR],[UnitOp],[Residual],[Jacobian],[CI]")
{
const double rateList[] = {0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
Expand Down Expand Up @@ -362,7 +362,7 @@ TEST_CASE("StirredTankModel time derivative Jacobian vs FD w/o binding model", "
}
}

TEST_CASE("StirredTankModel Jacobian vs FD with linear binding", "[CSTR],[UnitOp],[Residual],[Jacobian],[fails]") // todo fix
TEST_CASE("StirredTankModel Jacobian vs FD with linear binding", "[CSTR],[UnitOp],[Residual],[Jacobian],[CI]")
{
const double rateList[] = {0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
Expand Down Expand Up @@ -390,15 +390,15 @@ TEST_CASE("StirredTankModel Jacobian vs FD with linear binding", "[CSTR],[UnitOp
SECTION("Fin = " + std::to_string(row[0]) + " Fout = " + std::to_string(row[1]) + " Ffilter = " + std::to_string(row[2]) + bndMode)
{
checkJacobianFD(row[0], row[1], row[2], [=](cadet::JsonParameterProvider& jpp, unsigned int nComp) {
cadet::test::addBoundStates(jpp, {1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1}, 1.0);
cadet::test::addLinearBindingModel(jpp, dynamic, {5.0, 4.0}, {2.0, 3.0});
});
}
}
}
}

TEST_CASE("StirredTankModel Jacobian vs AD with linear binding", "[CSTR],[UnitOp],[Residual],[Jacobian],[AD],[CSTRCI]")
TEST_CASE("StirredTankModel Jacobian vs AD with linear binding", "[CSTR],[UnitOp],[Residual],[Jacobian],[AD],[CI]")
{
const double rateList[] = {0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
Expand Down Expand Up @@ -426,15 +426,15 @@ TEST_CASE("StirredTankModel Jacobian vs AD with linear binding", "[CSTR],[UnitOp
SECTION("Fin = " + std::to_string(row[0]) + " Fout = " + std::to_string(row[1]) + " Ffilter = " + std::to_string(row[2]) + bndMode)
{
checkJacobianAD(row[0], row[1], row[2], [=](cadet::JsonParameterProvider& jpp, unsigned int nComp) {
cadet::test::addBoundStates(jpp, {1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1}, 1.0);
cadet::test::addLinearBindingModel(jpp, dynamic, {5.0, 4.0}, {2.0, 3.0});
});
}
}
}
}

TEST_CASE("StirredTankModel time derivative Jacobian vs FD with linear binding", "[CSTR],[UnitOp],[Residual],[Jacobian],[CSTRCI]")
TEST_CASE("StirredTankModel time derivative Jacobian vs FD with linear binding", "[CSTR],[UnitOp],[Residual],[Jacobian],[CI]")
{
const double rateList[] = {0.0, 0.0, 0.0,
1.0, 0.0, 0.0,
Expand Down Expand Up @@ -462,23 +462,23 @@ TEST_CASE("StirredTankModel time derivative Jacobian vs FD with linear binding",
SECTION("Fin = " + std::to_string(row[0]) + " Fout = " + std::to_string(row[1]) + " Ffilter = " + std::to_string(row[2]) + bndMode)
{
checkTimeDerivativeJacobianFD(row[0], row[1], row[2], [=](cadet::JsonParameterProvider& jpp, unsigned int nComp) {
cadet::test::addBoundStates(jpp, {1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1}, 1.0);
cadet::test::addLinearBindingModel(jpp, dynamic, {5.0, 4.0}, {2.0, 3.0});
});
}
}
}
}

TEST_CASE("StirredTankModel consistent initialization with linear binding", "[CSTR],[ConsistentInit],[CSTRCI]")
TEST_CASE("StirredTankModel consistent initialization with linear binding", "[CSTR],[ConsistentInit],[CI]")
{
// Fill state vector with initial values
std::vector<double> y(2 + 2 * 2 + 1, 0.0);
cadet::test::util::populate(y.data(), [](unsigned int idx) { return std::abs(std::sin(idx * 0.13)) + 1e-4; }, y.size());

checkConsistentInitialization([](cadet::IModelBuilder& mb, bool dynamic) -> cadet::model::CSTRModel* {
cadet::JsonParameterProvider jpp = createCSTR(2);
cadet::test::addBoundStates(jpp, {1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1}, 1.0);
cadet::test::addLinearBindingModel(jpp, dynamic, {5.0, 4.0}, {2.0, 3.0});

cadet::model::CSTRModel* const cstr = createAndConfigureCSTR(mb, jpp);
Expand All @@ -487,10 +487,10 @@ TEST_CASE("StirredTankModel consistent initialization with linear binding", "[CS
}, y.data(), 1e-14, 1e-14);
}

TEST_CASE("StirredTankModel consistent initialization with SMA binding", "[CSTR],[ConsistentInit],[testHere]") // todo fix
TEST_CASE("StirredTankModel consistent initialization with SMA binding", "[CSTR],[ConsistentInit],[CI]")
{
// Optimal values:
// const double bindingCell[] = {1.2, 2.0, 1.0, 1.5, 858.034, 66.7896, 3.53273, 2.53153};
//const double bindingCell[] = {1.2, 2.0, 1.0, 1.5, 858.034, 66.7896, 3.53273, 2.53153};
const double bindingCell[] = {1.2, 2.0, 1.0, 1.5, 860.0, 66.0, 3.5, 2.5};

// Fill state vector with initial values
Expand All @@ -501,15 +501,15 @@ TEST_CASE("StirredTankModel consistent initialization with SMA binding", "[CSTR]

checkConsistentInitialization([](cadet::IModelBuilder& mb, bool dynamic) -> cadet::model::CSTRModel* {
cadet::JsonParameterProvider jpp = createCSTR(4);
cadet::test::addBoundStates(jpp, {1, 1, 1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1, 1, 1}, 1.0);
cadet::test::addSMABindingModel(jpp, dynamic, 1.2e3, {0.0, 35.5, 1.59, 7.7}, {0.0, 1000.0, 1000.0, 1000.0}, {0.0, 4.7, 5.29, 3.7}, {0.0, 11.83, 10.6, 10.0});
cadet::model::CSTRModel* const cstr = createAndConfigureCSTR(mb, jpp);
cstr->setFlowRates(1.0, 1.0);
return cstr;
}, y.data(), 1e-14, 1e-5);
}

TEST_CASE("StirredTankModel consistent sensitivity initialization with linear binding", "[CSTR],[ConsistentInit],[Sensitivity],[CSTRCI]")
TEST_CASE("StirredTankModel consistent sensitivity initialization with linear binding", "[CSTR],[ConsistentInit],[Sensitivity],[CI]")
{
// Fill state vector with initial values
std::vector<double> y(2 + 2 * 2 + 1, 0.0);
Expand All @@ -523,7 +523,7 @@ TEST_CASE("StirredTankModel consistent sensitivity initialization with linear bi

checkSensitivityConsistentInitialization([](cadet::IModelBuilder& mb, bool dynamic) -> cadet::model::CSTRModel* {
cadet::JsonParameterProvider jpp = createCSTR(2);
cadet::test::addBoundStates(jpp, {1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1}, 1.0);
cadet::test::addLinearBindingModel(jpp, dynamic, {5.0, 4.0}, {2.0, 3.0});

cadet::model::CSTRModel* const cstr = createAndConfigureCSTR(mb, jpp);
Expand All @@ -536,7 +536,7 @@ TEST_CASE("StirredTankModel consistent sensitivity initialization with linear bi
}, y.data(), yDot.data(), 1e-14);
}

TEST_CASE("StirredTankModel consistent sensitivity initialization with SMA binding", "[CSTR],[ConsistentInit],[Sensitivity],[CSTRCI]")
TEST_CASE("StirredTankModel consistent sensitivity initialization with SMA binding", "[CSTR],[ConsistentInit],[Sensitivity],[CI]")
{
// Fill state vector with initial values
std::vector<double> y(4 + 2 * 4 + 1, 0.0);
Expand All @@ -555,7 +555,7 @@ TEST_CASE("StirredTankModel consistent sensitivity initialization with SMA bindi

checkSensitivityConsistentInitialization([](cadet::IModelBuilder& mb, bool dynamic) -> cadet::model::CSTRModel* {
cadet::JsonParameterProvider jpp = createCSTR(4);
cadet::test::addBoundStates(jpp, {1, 1, 1, 1}, 0.5);
cadet::test::addBoundStates(jpp, {1, 1, 1, 1}, 1.0);
cadet::test::addSMABindingModel(jpp, dynamic, 1.2e3, {0.0, 35.5, 1.59, 7.7}, {0.0, 1000.0, 1000.0, 1000.0}, {0.0, 4.7, 5.29, 3.7}, {0.0, 11.83, 10.6, 10.0});

cadet::model::CSTRModel* const cstr = createAndConfigureCSTR(mb, jpp);
Expand All @@ -568,7 +568,7 @@ TEST_CASE("StirredTankModel consistent sensitivity initialization with SMA bindi
}, y.data(), yDot.data(), 1e-8);
}

TEST_CASE("StirredTankModel inlet DOF Jacobian", "[CSTR],[UnitOp],[Jacobian],[Inlet],[CSTRCI]")
TEST_CASE("StirredTankModel inlet DOF Jacobian", "[CSTR],[UnitOp],[Jacobian],[Inlet],[CI]")
{
cadet::IModelBuilder* const mb = cadet::createModelBuilder();
REQUIRE(nullptr != mb);
Expand All @@ -587,133 +587,133 @@ TEST_CASE("StirredTankModel inlet DOF Jacobian", "[CSTR],[UnitOp],[Jacobian],[In
destroyModelBuilder(mb);
}

TEST_CASE("CSTR multiple particle types Jacobian analytic vs AD", "[CSTR],[Jacobian],[AD],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multiple particle types Jacobian analytic vs AD", "[CSTR],[Jacobian],[AD],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::particle::testJacobianMixedParticleTypes(jpp);
}

TEST_CASE("CSTR multiple particle types time derivative Jacobian vs FD", "[CSTR],[UnitOp],[Residual],[Jacobian],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multiple particle types time derivative Jacobian vs FD", "[CSTR],[UnitOp],[Residual],[Jacobian],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::particle::testTimeDerivativeJacobianMixedParticleTypesFD(jpp, 1e-6, 0.0, 9e-4);
}

TEST_CASE("CSTR dynamic reactions Jacobian vs AD bulk", "[CSTR],[Jacobian],[AD],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions Jacobian vs AD bulk", "[CSTR],[Jacobian],[AD],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, true, false, false);
}

TEST_CASE("CSTR dynamic reactions Jacobian vs AD particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions Jacobian vs AD particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, false, true, false);
}

TEST_CASE("CSTR dynamic reactions Jacobian vs AD modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions Jacobian vs AD modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, false, true, true);
}

TEST_CASE("CSTR dynamic reactions Jacobian vs AD bulk and particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions Jacobian vs AD bulk and particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, true, true, false);
}

TEST_CASE("CSTR dynamic reactions Jacobian vs AD bulk and modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions Jacobian vs AD bulk and modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, true, true, true);
}

TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD bulk", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD bulk", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, true, false, false, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, false, true, false, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, false, true, true, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD bulk and particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD bulk and particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, true, true, false, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD bulk and modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CSTRCI]")
TEST_CASE("CSTR dynamic reactions time derivative Jacobian vs FD bulk and modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, true, true, true, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD bulk", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD bulk", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, true, false, false);
}

TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, false, true, false);
}

TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, false, true, true);
}

TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD bulk and particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD bulk and particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, true, true, false);
}

TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD bulk and modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions Jacobian vs AD bulk and modified particle", "[CSTR],[Jacobian],[AD],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testUnitJacobianDynamicReactionsAD(jpp, true, true, true);
}

TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD bulk", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD bulk", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, true, false, false, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, false, true, false, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, false, true, true, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD bulk and particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD bulk and particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, true, true, false, 1e-6, 1e-14, 8e-4);
}

TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD bulk and modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CSTRCI]")
TEST_CASE("CSTR multi particle types dynamic reactions time derivative Jacobian vs FD bulk and modified particle", "[CSTR],[Jacobian],[Residual],[ReactionModel],[ParticleType],[CI]")
{
cadet::JsonParameterProvider jpp = createTwoComponentLinearThreeParticleTypesTestCase();
cadet::test::reaction::testTimeDerivativeJacobianDynamicReactionsFD(jpp, true, true, true, 1e-6, 1e-14, 8e-4);
Expand Down
Loading

0 comments on commit 697064a

Please sign in to comment.