Set of values corresponding to a given SpectrumModel. More...
#include <spectrum-value.h>
Public Member Functions | |
SpectrumValue (Ptr< const SpectrumModel > sm) | |
SpectrumValue constructor. More... | |
Bands::const_iterator | ConstBandsBegin () const |
Bands::const_iterator | ConstBandsEnd () const |
Values::const_iterator | ConstValuesBegin () const |
Values::const_iterator | ConstValuesEnd () const |
Ptr< SpectrumValue > | Copy () const |
Ptr< const SpectrumModel > | GetSpectrumModel () const |
SpectrumModelUid_t | GetSpectrumModelUid () const |
SpectrumValue & | operator*= (const SpectrumValue &rhs) |
SpectrumValue & | operator*= (double rhs) |
SpectrumValue & | operator+= (const SpectrumValue &rhs) |
SpectrumValue & | operator+= (double rhs) |
SpectrumValue & | operator-= (const SpectrumValue &rhs) |
SpectrumValue & | operator-= (double rhs) |
SpectrumValue & | operator/= (const SpectrumValue &rhs) |
SpectrumValue & | operator/= (double rhs) |
SpectrumValue | operator<< (int n) const |
SpectrumValue & | operator= (double rhs) |
SpectrumValue | operator>> (int n) const |
double & | operator[] (size_t index) |
Values::iterator | ValuesBegin () |
Values::iterator | ValuesEnd () |
Public Member Functions inherited from ns3::SimpleRefCount< SpectrumValue > | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
Private Member Functions | |
void | Add (const SpectrumValue &x) |
void | Add (double s) |
void | ChangeSign () |
void | Divide (const SpectrumValue &x) |
void | Divide (double s) |
void | Exp (double base) |
void | Log () |
void | Log10 () |
void | Log2 () |
void | Multiply (const SpectrumValue &x) |
void | Multiply (double s) |
void | Pow (double exp) |
void | ShiftLeft (int n) |
void | ShiftRight (int n) |
void | Subtract (const SpectrumValue &x) |
void | Subtract (double s) |
Private Attributes | |
Ptr< const SpectrumModel > | m_spectrumModel |
Values | m_values |
Additional Inherited Members | |
Static Public Member Functions inherited from ns3::SimpleRefCount< SpectrumValue > | |
static void | Cleanup (void) |
Set of values corresponding to a given SpectrumModel.
This class implements a Function Space which can represent any function
Every instance of this class represent a particular function . The domain of the function space, i.e., , is implemented by SetOfFreq. The codomain of the function space is implemented by SetOfValues
To every possible value of corresponds a different Function Space. Mathematical operations are defined in this Function Space; these operations are implemented by means of operator overloading.
The intended use of this class is to represent frequency-dependent things, such as power spectral densities, frequency-dependent propagation losses, spectral masks, etc.
Definition at line 57 of file spectrum-value.h.
ns3::SpectrumValue::SpectrumValue | ( | Ptr< const SpectrumModel > | sm | ) |
SpectrumValue constructor.
sm | pointer to the SpectrumModel which implements the set of frequencies to which the values will be referring. |
Definition at line 36 of file spectrum-value.cc.
Bands::const_iterator ns3::SpectrumValue::ConstBandsBegin | ( | ) | const |
Definition at line 90 of file spectrum-value.cc.
Referenced by ns3::Integral().
Bands::const_iterator ns3::SpectrumValue::ConstBandsEnd | ( | ) | const |
Definition at line 96 of file spectrum-value.cc.
Referenced by ns3::Integral().
Values::const_iterator ns3::SpectrumValue::ConstValuesBegin | ( | ) | const |
Definition at line 65 of file spectrum-value.cc.
References m_values.
Referenced by ns3::LteAmc::CreateCqiFeedbacks(), ns3::LteUePhy::CreateDlCqiFeedbackMessage(), ns3::LteEnbPhy::CreatePuschCqiReport(), ns3::LteEnbPhy::CreateSrsCqiReport(), ns3::Integral(), ns3::Norm(), ns3::Prod(), and ns3::Sum().
Values::const_iterator ns3::SpectrumValue::ConstValuesEnd | ( | ) | const |
Definition at line 71 of file spectrum-value.cc.
References m_values.
Referenced by ns3::LteAmc::CreateCqiFeedbacks(), ns3::LteUePhy::CreateDlCqiFeedbackMessage(), ns3::LteEnbPhy::CreatePuschCqiReport(), ns3::LteEnbPhy::CreateSrsCqiReport(), ns3::Integral(), ns3::Norm(), ns3::Prod(), and ns3::Sum().
Ptr< SpectrumValue > ns3::SpectrumValue::Copy | ( | void | ) | const |
Definition at line 405 of file spectrum-value.cc.
Ptr< const SpectrumModel > ns3::SpectrumValue::GetSpectrumModel | ( | ) | const |
Definition at line 58 of file spectrum-value.cc.
Referenced by ns3::SpectrumValueTestCase::DoRun().
SpectrumModelUid_t ns3::SpectrumValue::GetSpectrumModelUid | ( | ) | const |
Definition at line 51 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator*= | ( | const SpectrumValue & | rhs | ) |
Multiply *this by the Right Hand Side of the operator, component by component
rhs | the Right Hand Side |
Definition at line 611 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator*= | ( | double | rhs | ) |
Multiply every component of *this by the value of the Right Hand Side of the operator
rhs | the Right Hand Side |
Definition at line 640 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator+= | ( | const SpectrumValue & | rhs | ) |
Add the Right Hand Side of the operator to *this, component by component
rhs | the Right Hand Side |
Definition at line 597 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator+= | ( | double | rhs | ) |
Add the value of the Right Hand Side of the operator to all components of *this
rhs | the Right Hand Side |
Definition at line 626 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator-= | ( | const SpectrumValue & | rhs | ) |
Subtract the Right Hand Side of the operator from *this, component by component
rhs | the Right Hand Side |
Definition at line 604 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator-= | ( | double | rhs | ) |
Subtract the value of the Right Hand Side of the operator from all components of *this
rhs | the Right Hand Side |
Definition at line 633 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator/= | ( | const SpectrumValue & | rhs | ) |
Divide *this by the Right Hand Side of the operator, component by component
rhs | the Right Hand Side |
Definition at line 618 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator/= | ( | double | rhs | ) |
Divide every component of *this by the value of the Right Hand Side of the operator
rhs | the Right Hand Side |
Definition at line 647 of file spectrum-value.cc.
SpectrumValue ns3::SpectrumValue::operator<< | ( | int | n | ) | const |
left shift operator
n | position to shift |
Definition at line 670 of file spectrum-value.cc.
SpectrumValue & ns3::SpectrumValue::operator= | ( | double | rhs | ) |
Assign each component of *this to the value of the Right Hand Side of the operator
rhs |
Definition at line 655 of file spectrum-value.cc.
References m_values.
SpectrumValue ns3::SpectrumValue::operator>> | ( | int | n | ) | const |
right shift operator
n | position to shift |
Definition at line 678 of file spectrum-value.cc.
double & ns3::SpectrumValue::operator[] | ( | size_t | index | ) |
Access value at given frequency index
index | the given frequency index |
Definition at line 44 of file spectrum-value.cc.
References m_values.
Values::iterator ns3::SpectrumValue::ValuesBegin | ( | ) |
Definition at line 78 of file spectrum-value.cc.
References m_values.
Referenced by ns3::LteMiErrorModel::GetPcfichPdcchError().
Values::iterator ns3::SpectrumValue::ValuesEnd | ( | ) |
Definition at line 84 of file spectrum-value.cc.
References m_values.
Referenced by ns3::LteMiErrorModel::GetPcfichPdcchError().
|
friend |
arg | the argument |
Definition at line 386 of file spectrum-value.cc.
|
friend |
arg | the argument |
Definition at line 589 of file spectrum-value.cc.
Referenced by ns3::Log().
|
friend |
arg | the argument |
Definition at line 573 of file spectrum-value.cc.
Referenced by ns3::Log10().
|
friend |
arg | the argument |
Definition at line 581 of file spectrum-value.cc.
Referenced by ns3::Log2().
|
friend |
x | the operand |
Definition at line 344 of file spectrum-value.cc.
|
friend |
multiplication component-by-component (Schur product)
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 486 of file spectrum-value.cc.
|
friend |
multiplication by a scalar
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 495 of file spectrum-value.cc.
|
friend |
multiplication of a scalar
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 504 of file spectrum-value.cc.
|
friend |
addition operator
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 431 of file spectrum-value.cc.
|
friend |
addition operator
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 440 of file spectrum-value.cc.
|
friend |
addition operator
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 449 of file spectrum-value.cc.
|
friend |
|
friend |
subtraction operator
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 458 of file spectrum-value.cc.
|
friend |
subtraction operator
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 469 of file spectrum-value.cc.
|
friend |
subtraction operator
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 478 of file spectrum-value.cc.
|
friend |
|
friend |
division component-by-component
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 513 of file spectrum-value.cc.
|
friend |
division by a scalar
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 522 of file spectrum-value.cc.
|
friend |
division of a scalar
lhs | Left Hand Side of the operator |
rhs | Right Hand Side of the operator |
Definition at line 531 of file spectrum-value.cc.
|
friend |
lhs | the base |
rhs | the exponent |
Definition at line 564 of file spectrum-value.cc.
Referenced by ns3::Pow().
|
friend |
lhs | the base |
rhs | the exponent |
Definition at line 555 of file spectrum-value.cc.
|
friend |
x | the operand |
Definition at line 373 of file spectrum-value.cc.
|
friend |
x | the operand |
Definition at line 358 of file spectrum-value.cc.
|
private |
Set of values which implement the codomain of the functions in the Function Space defined by SpectrumValue. There is no restriction on what these values represent (a transmission power density, a propagation loss, etc.).
Definition at line 528 of file spectrum-value.h.
Referenced by ConstValuesBegin(), ConstValuesEnd(), operator=(), operator[](), ValuesBegin(), and ValuesEnd().