calculate differentiation with large coefficient
조회 수: 9 (최근 30일)
이전 댓글 표시
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)
ydif=diff(y)
댓글 수: 0
채택된 답변
Sulaymon Eshkabilov
2023년 3월 9일
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))
ydif=diff(y(x))
댓글 수: 0
추가 답변 (2개)
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)
ydif=diff(y)
댓글 수: 0
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))
y=omeganol/(120*E*I*L)*(-x^5+2*600^2*x^3-600^4*x)
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:
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Symbolic Math Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





