10#include "ns3/object.h"
11#include "ns3/spectrum-converter.h"
12#include "ns3/spectrum-test.h"
13#include "ns3/spectrum-value.h"
41 void DoRun()
override;
78 *
m_b.GetSpectrumModel(),
100 std::vector<double> freqs;
102 for (
int i = 1; i <= 5; i++)
122 doubleValue = 1.12345600000000;
124 v1[0] = 0.700539792840;
125 v1[1] = -0.554277600423;
126 v1[2] = 0.750309319469;
127 v1[3] = -0.892299213192;
128 v1[4] = 0.987045234885;
130 v2[0] = 0.870441628737;
131 v2[1] = 0.271419263880;
132 v2[2] = 0.451557288312;
133 v2[3] = 0.968992859395;
134 v2[4] = -0.929186654705;
136 v3[0] = 1.570981421577;
137 v3[1] = -0.282858336543;
138 v3[2] = 1.201866607781;
139 v3[3] = 0.076693646203;
140 v3[4] = 0.057858580180;
142 v4[0] = -0.169901835897;
143 v4[1] = -0.825696864302;
144 v4[2] = 0.298752031158;
145 v4[3] = -1.861292072588;
146 v4[4] = 1.916231889590;
148 v5[0] = 0.609778998275;
149 v5[1] = -0.150441618292;
150 v5[2] = 0.338807641695;
151 v5[3] = -0.864631566028;
152 v5[4] = -0.917149259846;
154 v6[0] = 0.804809615846;
155 v6[1] = -2.042145397125;
156 v6[2] = 1.661603829438;
157 v6[3] = -0.920852207053;
158 v6[4] = -1.062267984465;
160 v7[0] = 1.823995792840;
161 v7[1] = 0.569178399577;
162 v7[2] = 1.873765319469;
163 v7[3] = 0.231156786808;
164 v7[4] = 2.110501234885;
166 v8[0] = -0.422916207160;
167 v8[1] = -1.677733600423;
168 v8[2] = -0.373146680531;
169 v8[3] = -2.015755213192;
170 v8[4] = -0.136410765115;
172 v9[0] = 0.787025633505;
173 v9[1] = -0.622706495860;
174 v9[2] = 0.842939506814;
175 v9[3] = -1.002458904856;
176 v9[4] = 1.108901891403;
178 v10[0] = 0.623557836569;
179 v10[1] = -0.493368320987;
180 v10[2] = 0.667858215604;
181 v10[3] = -0.794244913190;
182 v10[4] = 0.878579343459;
221 tv7a = v1 + doubleValue;
222 tv8a = v1 - doubleValue;
223 tv9a = v1 * doubleValue;
224 tv10a = v1 / doubleValue;
238 tv7b = doubleValue + v1;
239 tv8b = doubleValue - v1;
240 tv9b = doubleValue * v1;
241 tv10b = doubleValue / v1;
285 std::vector<double> f1;
286 for (f = 3; f <= 7; f += 2)
292 std::vector<double> f2;
293 for (f = 2; f <= 8; f += 1)
338 t21b[0] = 3 * 0.25 + 5 * 0.5 + 1 * 0.25;
339 t21b[1] = 1 * 0.25 + 2 * 0.5 + 4 * 0.25;
340 t21b[2] = 4 * 0.25 + 6 * 0.5 + 3 * 0.25;
Spectrum Converter TestSuite.
SpectrumConverterTestSuite()
bool MoreOrLessEqual(SpectrumValue x, SpectrumValue y)
Check that two SpectrumValue are equal within a tolerance.
SpectrumValue m_b
second SpectrumValue
~SpectrumValueTestCase() override
SpectrumValue m_a
first SpectrumValue
SpectrumValueTestCase(SpectrumValue a, SpectrumValue b, std::string name)
Constructor.
void DoRun() override
Implementation to actually run this TestCase.
Spectrum Value TestSuite.
Smart pointer class similar to boost::intrusive_ptr.
Class which implements a converter between SpectrumValue which are defined over different SpectrumMod...
Ptr< SpectrumValue > Convert(Ptr< const SpectrumValue > vvf) const
Convert a particular ValueVsFreq instance to.
Set of values corresponding to a given SpectrumModel.
void AddTestCase(TestCase *testCase, Duration duration=Duration::QUICK)
Add an individual child TestCase to this test suite.
TestCase(const TestCase &)=delete
@ UNIT
This test suite implements a Unit Test.
TestSuite(std::string name, Type type=Type::UNIT)
Construct a new test suite.
Ptr< T > Create(Ts &&... args)
Create class instances by constructors with varying numbers of arguments and return them by Ptr.
#define NS_TEST_ASSERT_MSG_SPECTRUM_MODEL_EQ_TOL(actual, expected, tol, msg)
Test if two SpectrumModel instances are equal within a given tolerance.
#define NS_TEST_ASSERT_MSG_SPECTRUM_VALUE_EQ_TOL(actual, expected, tol, msg)
Test if two SpectrumValue instances are equal within a given tolerance.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
double Norm(const SpectrumValue &x)
static SpectrumConverterTestSuite g_SpectrumConverterTestSuite
Static variable for test initialization.
static SpectrumValueTestSuite g_SpectrumValueTestSuite
Static variable for test initialization.