Solve simple equation with the floor function.

3 vues (au cours des 30 derniers jours)
NA
NA le 28 Avr 2021
Commenté : NA le 29 Avr 2021
S and P are known element in the equation. I want to find x
S = 10;
P = 13;
S = floor(P*(1-x))
I do not know how to deal with the floor functions.

Réponse acceptée

Matt J
Matt J le 28 Avr 2021
Modifié(e) : Matt J le 28 Avr 2021
It is the same as solving
S+delta=P*(1-x)
where 0<=delta<1 is arbitrary. The solution is then,
x=1-(S+delta)/P
It's important to keep in mind if you are solving this numerically that delta=0 will be a numerically unstable choice because the resulting x will take you close to the discontinuity of the floor function.
Let's test with delta=0.5:
S = 10;
P = 13;
delta=0.5;
x=1-(S+delta)/P
x = 0.1923
S == floor(P*(1-x)) %check
ans = logical
1
  1 commentaire
NA
NA le 29 Avr 2021
Thank you for your time

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by