preCICE v3.2.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
AbsoluteOrRelativeConvergenceMeasureTest.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(AbsoluteOrRelativeConvergenceMeasureTest)
14{
16 using Eigen::Vector3d;
17 // Create convergence measure for Vector data
18 double absLimit1 = 1.0;
19 double relLimit1 = 0.05;
20 double absLimit2 = 0.2;
21 double relLimit2 = 0.2;
22 cplscheme::impl::AbsoluteOrRelativeConvergenceMeasure measure1(absLimit1, relLimit1);
23 cplscheme::impl::AbsoluteOrRelativeConvergenceMeasure measure2(absLimit2, relLimit2);
24
25 // Create data sets for old state of data and new state of data
26 Vector3d oldValues0(1, 1, 1);
27 Vector3d oldValues1(2.6, 2.6, 2.6);
28 Vector3d oldValues2(2.9, 2.9, 2.9);
29 Vector3d newValues(3, 3, 3);
30
31 measure1.measure(oldValues0, newValues);
32 BOOST_TEST(not measure1.isConvergence());
33
34 measure1.measure(oldValues1, newValues);
35 BOOST_TEST(measure1.isConvergence());
36
37 measure1.measure(oldValues2, newValues);
38 BOOST_TEST(measure1.isConvergence());
39
40 measure2.measure(oldValues0, newValues);
41 BOOST_TEST(not measure2.isConvergence());
42
43 measure2.measure(oldValues1, newValues);
44 BOOST_TEST(measure2.isConvergence());
45
46 measure2.measure(oldValues2, newValues);
47 BOOST_TEST(measure2.isConvergence());
48}
49
BOOST_AUTO_TEST_CASE(AbsoluteOrRelativeConvergenceMeasureTest)
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.
void measure(const Eigen::VectorXd &oldValues, const Eigen::VectorXd &newValues) override
Performs convergence measurement.
bool isConvergence() const override
Returns true, if the last measurement indicates convergence.
Main namespace of the precice library.