Rounding off and approximation functions.

1 view (last 30 days)
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 Comments
Reinhardt RADING
Reinhardt RADING on 20 Apr 2021
In number.
How do you propose using log2?
the cyclist
the cyclist on 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?

Sign in to comment.

Accepted Answer

Steven Lord
Steven Lord on 20 Apr 2021
N = 14;
x = 2.^nextpow2(N)
x = 16
  3 Comments
Reinhardt RADING
Reinhardt RADING on 20 Apr 2021
This is brilliant.
Thanks for helping.
Steven Lord
Steven Lord on 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.

Sign in to comment.

More Answers (0)

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!