Solving a matrix equation with a parameter in the coefficient matrix
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Tuur Vanderhaegen
le 26 Nov 2020
Commenté : Tuur Vanderhaegen
le 27 Nov 2020
Hello,
I'm asked to give an expression of S and F in function of theta. This is possible due to 3 given equations. If I make a matrix of these equations and use the linsolve there is an error because of the parameter thetea. Can someone help?
Kind regards,
Tuur
syms theta S F
r = 0.025;
h = 0.3;
rho = 7850;
g = 9.81;
m = r^2 * pi * h * rho;
phi = atan((0.15 - 0.15*sin(theta))/(0.15*cos(theta)))
F_g = [0 , -m * g];
F_s = [-S*cos(phi), S*sin(phi)];
F_p = [F*cos(theta), F*sin(theta)];
eq1 = F_g(1) + F_s(1) + F_p(1) == 0;
eq2 = F_g(2) + F_s(2) + F_p(2) == 0;
eq3 = 0.15*cos(theta)*F*sin(phi) - 0.15*sin(theta)*F*cos(phi) + m * g * 0.15 * cos(theta) == 0;
A = [-cos(phi), cos(theta); sin(phi), sin(theta); 0, 0.15*cos(theta)*sin(phi) - 0.15*sin(theta)*cos(phi)]
B = [0; m * g ; -m * g * 0.15 * cos(theta)]
0 commentaires
Réponse acceptée
Stephan
le 27 Nov 2020
syms theta S F
r = 0.025;
h = 0.3;
rho = 7850;
g = 9.81;
m = r^2 * pi * h * rho;
phi = atan((0.15 - 0.15*sin(theta))/(0.15*cos(theta)));
F_g = [0 , -m * g];
F_s = [-S*cos(phi), S*sin(phi)];
F_p = [F*cos(theta), F*sin(theta)];
eq(1) = F_g(1) + F_s(1) + F_p(1) == 0;
eq(2) = F_g(2) + F_s(2) + F_p(2) == 0;
eq(3) = 0.15*cos(theta)*F*sin(phi) - 0.15*sin(theta)*F*cos(phi) + m * g * 0.15 * cos(theta) == 0;
% New equations
eqn(1) = lhs(eq(1)) == lhs(eq(3));
eqn(2) = lhs(eq(2)) == lhs(eq(3));
sol = solve(eqn,F,S)
pretty(sol.F)
pretty(sol.S)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Equation Solving dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!