SDRAngel  4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
db.cpp
Go to the documentation of this file.
1 // Copyright (C) 2015 Edouard Griffiths, F4EXB //
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 as published by //
6 // the Free Software Foundation as version 3 of the License, or //
7 // (at your option) any later version. //
8 // //
9 // This program is distributed in the hope that it will be useful, //
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of //
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
12 // GNU General Public License V3 for more details. //
13 // //
14 // You should have received a copy of the GNU General Public License //
15 // along with this program. If not, see <http://www.gnu.org/licenses/>. //
17 
18 #include "util/db.h"
19 #include <cmath>
20 #include <cassert>
21 
22 double CalcDb::dbPower(double magsq, double floor)
23 {
24  assert(floor > 0.0);
25 
26  if (magsq > floor)
27  {
28  return 10.0 * log10(magsq);
29  }
30  else
31  {
32  return 10.0 * log10(floor);
33  }
34 }
35 
36 double CalcDb::powerFromdB(double powerdB)
37 {
38  return pow(10.0, powerdB / 10.0);
39 }
static double dbPower(double magsq, double floor=1e-12)
Definition: db.cpp:22
Fixed< IntType, IntBits > floor(Fixed< IntType, IntBits > const &x)
Definition: fixed.h:2301
static double powerFromdB(double powerdB)
Definition: db.cpp:36