Represents a square horn antenna.
More...
#include "antenna_factory.h"
Represents a square horn antenna.
This antenna models a square horn with a specific dimension.
Definition at line 270 of file antenna_factory.h.
◆ SquareHorn() [1/3]
| antenna::SquareHorn::SquareHorn |
( |
const std::string_view |
name, |
|
|
const RealType |
dimension |
|
) |
| |
Constructs a SquareHorn antenna with the given dimension.
- Parameters
-
| name | The name of the antenna. |
| dimension | The dimension of the square horn. |
Definition at line 279 of file antenna_factory.h.
279 :
Antenna(name.data()), _dimension(dimension)
280 {
281 }
Antenna(std::string name) noexcept
Constructs an Antenna object with the given name.
◆ ~SquareHorn()
| antenna::SquareHorn::~SquareHorn |
( |
| ) |
|
|
overridedefault |
◆ SquareHorn() [2/3]
| antenna::SquareHorn::SquareHorn |
( |
const SquareHorn & |
| ) |
|
|
delete |
◆ SquareHorn() [3/3]
◆ getAngle()
|
|
staticprotectednoexceptinherited |
Computes the angle between the input and reference angles.
- Parameters
-
| angle | The input angle. |
| refangle | The reference angle. |
- Returns
- The computed angle.
Definition at line 93 of file antenna_factory.cpp.
94 {
95 SVec3 normangle(angle);
96 normangle.length = 1;
98 }
A class representing a vector in spherical coordinates.
A class representing a vector in rectangular coordinates.
RealType dotProduct(const Vec3 &a, const Vec3 &b) noexcept
Computes the dot product of two Vec3 vectors.
References math::SVec3::length.
◆ getDimension()
| RealType antenna::SquareHorn::getDimension |
( |
| ) |
const |
|
noexcept |
Gets the dimension of the square horn.
Definition at line 305 of file antenna_factory.h.
305{ return _dimension; }
◆ getEfficiencyFactor()
| RealType antenna::Antenna::getEfficiencyFactor |
( |
| ) |
const |
|
noexceptinherited |
◆ getGain()
Computes the gain of the square horn antenna.
- Parameters
-
| angle | The angle at which the gain is to be computed. |
| refangle | The reference angle. |
| wavelength | The wavelength of the signal. |
- Returns
- The computed gain of the antenna.
Implements antenna::Antenna.
Definition at line 114 of file antenna_factory.cpp.
115 {
116 const RealType ge = 4 *
PI * std::pow(_dimension, 2) / std::pow(wavelength, 2);
117 const RealType x =
PI * _dimension * std::sin(
getAngle(angle, refangle)) / wavelength;
119 }
static RealType getAngle(const math::SVec3 &angle, const math::SVec3 &refangle) noexcept
Computes the angle between the input and reference angles.
RealType getEfficiencyFactor() const noexcept
Retrieves the efficiency factor of the antenna.
double RealType
Type for real numbers.
constexpr RealType PI
Mathematical constant π (pi).
References PI.
◆ getName()
| std::string antenna::Antenna::getName |
( |
| ) |
const |
|
noexceptinherited |
◆ getNoiseTemperature()
Computes the noise temperature of the antenna based on the angle.
- Parameters
-
| angle | The angle at which the noise temperature is to be computed. |
- Returns
- The noise temperature of the antenna.
Definition at line 89 of file antenna_factory.h.
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ setEfficiencyFactor()
| void antenna::Antenna::setEfficiencyFactor |
( |
RealType |
loss | ) |
|
|
noexceptinherited |
Sets the efficiency factor of the antenna.
- Parameters
-
| loss | The new efficiency factor. |
Definition at line 84 of file antenna_factory.cpp.
85 {
86 if (loss > 1)
87 {
88 LOG(Level::INFO,
"Using greater than unity antenna efficiency.");
89 }
90 _loss_factor = loss;
91 }
References LOG.
The documentation for this class was generated from the following files: