preCICE v3.2.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
AbsoluteConvergenceMeasureTest.cpp
Go to the documentation of this file.
1#include <Eigen/Core>
5#include "testing/Testing.hpp"
6
7using namespace precice;
8using namespace cplscheme;
9
10BOOST_AUTO_TEST_SUITE(CplSchemeTests)
11
13BOOST_AUTO_TEST_CASE(AbsoluteConvergenceMeasureTest)
14{
16 using Eigen::Vector3d;
17 // Create convergence measure for Vector data
18 double convergenceLimit = 9.0;
19 cplscheme::impl::AbsoluteConvergenceMeasure measure(convergenceLimit);
20
21 // Create data sets for old state of data and new state of data
22 Vector3d oldValues0(-2, -1, 0);
23 Vector3d oldValues1(2, 3, 4);
24 Vector3d oldValues2(3, 4, 5);
25 Vector3d newValues(5, 6, 7);
26
27 measure.measure(oldValues0, newValues);
28 BOOST_TEST(not measure.isConvergence());
29
30 measure.measure(oldValues1, newValues);
31 BOOST_TEST(measure.isConvergence());
32
33 measure.measure(oldValues2, newValues);
34 BOOST_TEST(measure.isConvergence());
35}
36
BOOST_AUTO_TEST_CASE(AbsoluteConvergenceMeasureTest)
BOOST_AUTO_TEST_SUITE(PreProcess)
BOOST_AUTO_TEST_SUITE_END()
#define PRECICE_TEST()
Definition Testing.hpp:39
#define PRECICE_TEST_SETUP(...)
Creates and attaches a TestSetup to a Boost test case.
Definition Testing.hpp:29
Measures the convergence from an old data set to a new one.
bool isConvergence() const override
Returns true, if the last measurement indicates convergence.
void measure(const Eigen::VectorXd &oldValues, const Eigen::VectorXd &newValues) override
Performs convergence measurement.
Main namespace of the precice library.