How to get the decimal values using solve in MATLAB

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 Comment

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 &

Sign in to comment.

Answers (1)

Read about vpasolve, double.

3 Comments

The links is for the wrong DOUBLE, the correct symbolic toolbox DOUBLE is here:
Thank you, I use vpa(solution.conditions) and the problem is solved!
@Khoa Nguyen thanks is accepting/ voting the answer. :)

Sign in to comment.

Categories

Asked:

on 27 Feb 2023

Commented:

on 27 Feb 2023

Community Treasure Hunt

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

Start Hunting!