calculate differentiation with large coefficient

Please help me
I'm trying to solve differential equation with this script using diff, but the coefficient result appear as a big series of number. How can I simplified it the coefficient?
omeganol=2.5;
E=50;
I=30;
L=600;
syms x
y=omeganol/(120*E*I*L)*(-x^5+2*600^2*x^3-600^4*x)
y = 
ydif=diff(y)
ydif = 

 채택된 답변

Here is a bit improved solution:
omeganol=2.5;
E=50;
I=30;
L=600;
syms y(x)
y(x)=vpa(omeganol/(120*E*I*L)*(-x^5+2*600^2*x^3-600^4*x))
y(x) = 
ydif=diff(y(x))
ydif = 

추가 답변 (2개)

Dyuman Joshi
Dyuman Joshi 2023년 3월 9일
편집: Dyuman Joshi 2023년 3월 9일
Use sym() to get accurate values.
The ideal approach would be to use sym() on every unique number.
omeganol=2.5;
E=50;
I=30;
L=600;
syms x
y=omeganol/sym(120*E*I*L)*(-x^5+2*600^2*x^3-600^4*x)
y = 
ydif=diff(y)
ydif = 
Arka
Arka 2023년 3월 9일
Hi,
MATLAB offers a function named simplify, which can help simplify different algebraic expressions.
omeganol=2.5;
E=50;
I=30;
L=600;
syms x
y1=simplify(omeganol/(120*E*I*L)*(-x^5+2*600^2*x^3-600^4*x))
y1 = 
y=omeganol/(120*E*I*L)*(-x^5+2*600^2*x^3-600^4*x)
y = 
Since the fraction is irrational, MATLAB prefers keeping it in the fraction form instead of converting it to scientific notation.
If you wish to learn more about simpliy, please refer to the MathWorks documentation below:

카테고리

도움말 센터File Exchange에서 Programming에 대해 자세히 알아보기

질문:

2023년 3월 9일

편집:

2023년 3월 9일

Community Treasure Hunt

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

Start Hunting!

Translated by