Rounding off and approximation functions.

2 visualizzazioni (ultimi 30 giorni)
I have a matlab formula i.e,
Nsymb = (abs(Dcum)*deltaf(sp)*(lam^2)* Symbolrate* 1e-3)/clight
The value of Nysmb varies i.e 14, 10, 28, 36..
I would love to round off to the nearest power factor of 2. For example if Nsymb from the formula is 14, i want to write the code to make Nsymb = 16.
If Nysmb from the formula is 28, i want to make Nsymb =32... if 36, Nsymb=64.. so on.
How can i do this?
Thanks in advance.
  3 Commenti
Reinhardt RADING
Reinhardt RADING il 20 Apr 2021
In number.
How do you propose using log2?
the cyclist
the cyclist il 20 Apr 2021
Maybe I have not had enough coffee yet, but why would 36 round to 64? It is much closer to 32.
Or do you mean ceiling, and not round? Or maybe just a typo in your question?

Accedi per commentare.

Risposta accettata

Steven Lord
Steven Lord il 20 Apr 2021
N = 14;
x = 2.^nextpow2(N)
x = 16
  3 Commenti
Reinhardt RADING
Reinhardt RADING il 20 Apr 2021
This is brilliant.
Thanks for helping.
Steven Lord
Steven Lord il 20 Apr 2021
Always a new MATLAB function to know.
Cool, you're one of today's ten thousand to learn about this 20+ year old function.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Mathematics and Optimization in Help Center e File Exchange

Prodotti


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by