Unable to find explicit solution
조회 수: 1 (최근 30일)
이전 댓글 표시
How can I solve this issue? I have to keep the anwers in terms of R L and d, so I can't turn those into numerical values.
syms R L d
R = R;
L = L;
d = L/2;
syms x y fi teta beta gama
eq(1) = -L*cosd(teta) + x == 0;
eq(2) = -L*sind(teta) - L/2 + y == 0;
eq(3) = -0.5*L*cosd(teta)+d*cosd(fi) == 0;
eq(4) = -0.5*L*sind(teta) - d*sind(fi) + y == 0;
eq(5) = sind(gama) == (0.5*d)/R;
eq(6) = fi + gama + beta == 90;
sol = solve(eq,[x y fi teta beta gama])
댓글 수: 0
답변 (1개)
Torsten
2022년 10월 29일
편집: Torsten
2022년 10월 29일
syms d L R x y phi theta
assume (L,'positive')
eq(1) = -L*cos(theta) + x == 0;
eq(2) = -L*sin(theta) - L/2 + y == 0;
eq(3) = -0.5*L*cos(theta) + d*cos(phi) == 0;
eq(4) = -0.5*L*sin(theta) - d*sin(phi) + y == 0;
S = solve([eq(1),eq(2),eq(3),eq(4)],[x y phi theta])
x = simplify(subs(S.x,d,L/2))
y = simplify(subs(S.y,d,L/2))
phi = simplify(subs(S.phi,d,L/2))
theta = simplify(subs(S.theta,d,L/2))
gamma = asin(L/(4*R))
beta = pi/2 - phi - gamma
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Calculus에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!