Closed ghost closed 1 year ago
Hi, I'm not familiar with this quantity. From skimming the wiki, it seems related to telecommunication and I have a sense that it might be too narrow/little used to include in the main library. We try to avoid too domain specific quantities to prevent bloat and binary size.
From the checklist in the wiki:
PowerRatioToCarrier
?Level
, PowerRatio
and AmplitudeRatio
. https://github.com/angularsen/UnitsNet/search?l=JSON&q=decibel* What would the quantity name be, `PowerRatioToCarrier` ?
Yes.
* Are there multiple units to represent this measurement and to convert between? Which?
No.
* Can you convert from this quantity to other quantities? Other quantities with decibel units are `Level`, `PowerRatio` and `AmplitudeRatio`. https://github.com/angularsen/UnitsNet/search?l=JSON&q=decibel
No.
* Are there domains besides telecommunications where this is useful?
It certainly doesn't appear to have many applications, in practice, outside of telecom; however, I did find a few uses that may fall outside that area, including:
From https://www.ednasia.com/decibels-make-them-absolute-levels/:
The term “carrier” obviously has a communications flavor to it but dBc can be applied to any situation where a smaller signal is compared to a bigger one.
From http://www.ittc.ku.edu/~jstiles/622/handouts/Harmonics%20spurs%20and%20dBc.pdf:
For example, if P C = 10 dBm and the power of the first harmonic is –40 dBm, then the power of the first harmonic can be expressed as –50 dBc.
From https://www.rp-photonics.com/decibel.html, it seems there are possible uses in optical signal processing (although one could argue that that falls under the telecommunications banner).
Now assume a power supply tone is applied, and that its contribution can be seen on a phase noise plot of the buffer’s output as a spur with -85 dBc magnitude
Similarly, from https://pubmed.ncbi.nlm.nih.gov/33920523/:
For example, a carrier aggregated a long-term evolution signal with up to 200 MHz instantaneous bandwidth and a peak-to-average power ratio greater than 10 dB, and was amplified with a mean output power around 33 dBm and 22.2% of mean power efficiency while meeting the in-band (error vector magnitude lower than 1%) and out-of-band (adjacent channel leakage ratio lower than -45 dBc) linearity requirements.
From https://vescent.com/ca/calculating-phase-noise-from-the-d2-135:
The phase-noise floor of the D2-135 is given by the formula: Phase-Noise Floor (dBc/Hz) = -213 + 20Log(N) + 10 Log(FREF(Hz))
From https://www.powersystemsdesign.com/pages/glossary/139?id=SFDR:
In ADCs, Spurious-Free Dynamic Range (SFDR) is the ratio of the RMS amplitude of the carrier frequency (maximum signal component) to the RMS value of the next largest noise or harmonic distortion component. SFDR is usually measured in dBc (with respect to the carrier frequency amplitude) or in dBFS (with respect to the ADC's full-scale range).
Thank you for detailed background. Since this is a single-unit quantity, with no interaction with other quantities and with a narrow domain, I think this falls outside the scope for the main library. Sorry!
You are probably better off creating your own quantity for this scenario.
You could implement IQuantity
and plug it in as a custom unit, but I don't think you gain very much from that since it only has a single unit. Custom units is also a bit experimental and not very well supported yet.
https://github.com/angularsen/UnitsNet/wiki/Extending-with-Custom-Units#key-benefits
We'd like to represent the power ratio of a signal to a carrier signal, expressed in decibels. If the power ratio is positive, then the relative signal strength is greater than the carrier signal strength. If the power ratio is negative, then the relative signal strength is less than carrier signal strength.
At the time of writing, this unit is not included in the UnitsNet library. If it is added in the future, we can remove a class from our code base. See https://en.wikipedia.org/wiki/DBc.