Please I need help, i am running a code but i am receiving an error message: Attempted to access Px(1.18059); index must be positive integer or logical

Please I need help, i am running a code but i am receiving an error message: Attempted to access Px(1.18059); index must be positive integer or logical

1 Comment

Post that part of the code.So that the error be identified in a more easier way.

Answers (2)

Its a floating point error down at the 5th significant figure. If you simply round "Px", it'll MAY work

6 Comments

"It'll work" in the sense that it will make the error go away. Whether or not it will make the code produce the correct result is unknown due to the limited information supplied.
The correct solution is to find out why the OP is getting a floating point index in the first place. Note that the error is at the 1st decimal figure, not the 5th.
Where is the code to find out why the OP is getting a floating point index in the first place.. If u have the code u can post it.I will check it :)
Oh, I totally agree that the OP has not provided sufficient information to answer the question. But saying "it'll work" is a bit of a stretch.
Thanks for your quick response and assistance, the code is below Sumedha, Guillaume. Thanks, the code is as follows
Rx = log2((1 + Px(var_ab _ var_ae)+(1 +var_ae*Pw +Pb*var_be.^2+ 2*sqrt(Pb*Px*var_ab*var_ae))));
Thanks
Px(var_ab _ var_ae) is not valid syntax. Possibly you meant
Px(var_ab - var_ae)
If so then you would be attempting to subtract the two variables and use the result to index the array "Px".
Possibly you intended multiplication,
Rx = log2((1 + Px*(var_ab - var_ae)+(1 +var_ae*Pw +Pb*var_be.^2+ 2*sqrt(Pb*Px*var_ab*var_ae))));

This question is closed.

Tags

Asked:

on 3 Jun 2015

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!