A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
uan-noise-model-default.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2009 University of Washington
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation;
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 *
17 * Author: Leonard Tracy <lentracy@gmail.com>
18 */
19
20#ifndef UAN_NOISE_MODEL_DEFAULT_H
21#define UAN_NOISE_MODEL_DEFAULT_H
22
23#include "uan-noise-model.h"
24
25#include "ns3/attribute.h"
26#include "ns3/object.h"
27
28namespace ns3
29{
30
31/**
32 * \ingroup uan
33 *
34 * Standard ambient acoustic noise model.
35 *
36 * See attributes for parameters
37 *
38 * This class returns ambient noise by following the algorithm given in
39 * Harris, A. F. and Zorzi, M. 2007. Modeling the underwater acoustic
40 * channel in ns2. In Proceedings of the 2nd international Conference
41 * on Performance Evaluation Methodologies and Tools (Nantes, France,
42 * October 22 - 27, 2007). ValueTools, vol. 321. ICST (Institute for
43 * Computer Sciences Social-Informatics and Telecommunications Engineering),
44 * ICST, Brussels, Belgium, 1-8.
45 *
46 * Which uses the noise model also given in the book
47 * "Principles of Underwater Sound" by Urick
48 */
50{
51 public:
52 UanNoiseModelDefault(); //!< Default constructor.
53 ~UanNoiseModelDefault() override; //!< Dummy destructor, DoDispose.
54
55 /**
56 * Register this type.
57 * \return The TypeId.
58 */
59 static TypeId GetTypeId();
60
61 // Inherited methods
62 double GetNoiseDbHz(double fKhz) const override;
63
64 private:
65 double m_wind; //!< Wind speed in m/s.
66 double m_shipping; //!< Shipping contribution to noise between 0 and 1.
67
68}; // class UanNoiseModelDefault
69
70} // namespace ns3
71
72#endif /* UAN_NOISE_MODEL_DEFAULT_H */
a unique identifier for an interface.
Definition: type-id.h:59
Standard ambient acoustic noise model.
double m_wind
Wind speed in m/s.
double GetNoiseDbHz(double fKhz) const override
Compute the noise power at a given frequency.
static TypeId GetTypeId()
Register this type.
~UanNoiseModelDefault() override
Dummy destructor, DoDispose.
UanNoiseModelDefault()
Default constructor.
double m_shipping
Shipping contribution to noise between 0 and 1.
UAN Noise Model base class.
Every class exported by the ns3 library is enclosed in the ns3 namespace.