Filter löschen
Filter löschen

How to get the decimal values using solve in MATLAB

9 Ansichten (letzte 30 Tage)
Khoa Nguyen
Khoa Nguyen am 27 Feb. 2023
Kommentiert: Walter Roberson am 27 Feb. 2023
So I am using solve in MATLAB to solve an inequation in MATLAB, to find the syms trough_rot_speed, here are the code
syms trough_rot_speed;
assume(trough_rot_speed,'positive')
A_equation = (sind(Alpha_deg-Beta_deg)/cosd(Beta_deg))*((a*trough_rot_speed^2)/9.8);
solution = solve( sqrt(pi^2+1)> A_equation> 1.15,trough_rot_speed,'ReturnConditions', true);
All the values are known except trough_rot_speed, I access the results by the following code
solution.conditions
But I get the value in fraction, like this:
How do I get it in decimal values, for example: x < 203.442....
  1 Kommentar
Walter Roberson
Walter Roberson am 27 Feb. 2023
solution = solve( sqrt(pi^2+1)> A_equation> 1.15,trough_rot_speed,'ReturnConditions', true);
Chaining relative comparisons does not work for numeric values, and does not work reliably for solve(). The only place it works reliably is piecewise(). You should rewrite as two conditions joined with &

Melden Sie sich an, um zu kommentieren.

Antworten (1)

KSSV
KSSV am 27 Feb. 2023
Read about vpasolve, double.
  3 Kommentare
Khoa Nguyen
Khoa Nguyen am 27 Feb. 2023
Thank you, I use vpa(solution.conditions) and the problem is solved!
KSSV
KSSV am 27 Feb. 2023
@Khoa Nguyen thanks is accepting/ voting the answer. :)

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by