#wxmaxima
Вопрос:
У меня есть следующий код, который отлично работает до предпоследней инструкции.
(%i17) M_A; (%o17) [500.0,-0.22*F_Bz-750.0,0.22*F_By-105.0] (%i18) solve(M_A[2]); rat: replaced -750.0 by -750/1 = -750.0 rat: replaced -0.22 by -11/50 = -0.22 (%o18) [F_Bz=-37500/11] (%i19) solve(M_A[3]); rat: replaced -105.0 by -105/1 = -105.0 rat: replaced 0.22 by 11/50 = 0.22 (%o19) [F_By=5250/11] (%i20) F_Br : sqrt(F_By^2 F_Bz^2); (%o20) sqrt(F_Bz^2 F_By^2) (%i21) float(%); (%o21) sqrt(F_Bz^2 F_By^2)
как я могу получить численный ответ для %i20.
Комментарии:
1. Попробуй
subst(append(%o18, %o19), F_Br);
.2. @RobertDodier он печатает только F_Br, ничего ему не присваивая
3. Тем временем я попробовал:
tmp1 : M_A[2];
что производит-0.22*F_Bz-750.0
, тоtmp2 : solve(tmp1);
производит[F_Bz=-37500/11]
, наконецtmp3 : rhs(%);
, выплевывает0
вместо -37500/11. Как я могу получить -37500/11, назначенный tmp34. Я не уверен, что понимаю, что вы имеете в виду, когда говорите: «он печатает только F_Br, ничего ему не присваивая» — я попробовал предложенную мной идею, и, похоже, она возымела желаемый эффект. Может быть, вы сможете показать входные данные, которые вы пробовали.
5. О
tmp3
, обратите внимание, что%
это список с одним элементом, который представляет собой уравнение. Я думаюtmp3: rhs(%[1]);
, то есть получить первый (и единственный) элемент, а затем взять его значения, будет иметь эффект, которого вы ожидали.
Ответ №1:
Вот что я получаю, когда пытаюсь подставить решения уравнений в выражение для F_Br
. Смотри %i7
и %o7
.
(%i3) M_A:[500.0,(-0.22)*F_Bz-750.0,0.22*F_By-105.0] (%o3) [500.0, (- 0.22 F_Bz) - 750.0, 0.22 F_By - 105.0] (%i4) s1:solve(M_A[2]) rat: replaced -750.0 by -750/1 = -750.0 rat: replaced -0.22 by -11/50 = -0.22 37500 (%o4) [F_Bz = - -----] 11 (%i5) s2:solve(M_A[3]) rat: replaced -105.0 by -105/1 = -105.0 rat: replaced 0.22 by 11/50 = 0.22 5250 (%o5) [F_By = ----] 11 (%i6) F_Br:sqrt(F_By^2 F_Bz^2) 2 2 (%o6) sqrt(F_Bz F_By ) (%i7) subst(append(s1,s2),F_Br) 750 sqrt(2549) (%o7) -------------- 11 (%i8) float(%) (%o8) 3442.337880372093