/* SPDX-FileCopyrightText: Copyright (c) 2016 - 2026, the adamantine authors. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception */ #include "MaterialStates.hh" #define BOOST_TEST_MODULE Integration_2D_Device #include "../applications/adamantine.hh" #include #include #include #include "main.cc" namespace utf = boost::unit_test; BOOST_AUTO_TEST_CASE(intregation_2D_device, *utf::tolerance(0.1)) { MPI_Comm communicator = MPI_COMM_WORLD; std::vector timers; initialize_timers(communicator, timers); // Read the input. std::string const filename = "integration_2d.info"; adamantine::ASSERT_THROW(std::filesystem::exists(filename) == true, "The file " + filename + " does not exist."); boost::property_tree::ptree database; boost::property_tree::info_parser::read_info(filename, database); auto [temperature, displacement] = run<2, -1, 4, adamantine::SolidLiquidPowder, dealii::MemorySpace::Default>(communicator, database, timers); std::ifstream gold_file("integration_2d_gold.txt"); for (unsigned int i = 0; i < temperature.locally_owned_size(); ++i) { double gold_value = -1.; gold_file >> gold_value; BOOST_TEST(temperature.local_element(i) == gold_value); } }