Гравик зависимости от константы и значение координат

Форум пользователей пакета Mathematica

Модератор: Admin

ALFaust
Сообщения: 1
Зарегистрирован: Чт ноя 01, 2018 7:24 pm

Гравик зависимости от константы и значение координат

Сообщение ALFaust » Чт ноя 01, 2018 7:31 pm

Всем доброго. Нужна помощь. Прилагаю код программы.
1. Необходимо построить график зависимости L(переменная) при значении константы "k" от 0,01 до 0,1 с шагом 0,01.
2. Нужно определить значение координат на графике зависимости L(r) при r = SIn(teta)

Код: Выделить всё

\[Kappa] = 0.01;
\[Alpha] = 0.01;
solution =
 NDSolve[{Derivative[1][r][t] == (\[Kappa] Subscript[P, r][t])/Sqrt[
    Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
     Subscript[P, \[Phi]][t]^2], r[0] == 0.1,
   Derivative[1][\[CapitalTheta]][
     t] == (\[Kappa] Subscript[P, \[Theta]][t])/Sqrt[
    Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
     Subscript[P, \[Phi]][t]^2], \[CapitalTheta][0] == 0.5,
   Derivative[1][Subscript[P, r]][
     t] == (\[Kappa] Subscript[P, \[Theta]][t]^2)/(
     r[t] Sqrt[
      Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
       Subscript[P, \[Phi]][t]^2]) + (\[Kappa] Subscript[P, \[Phi]][
       t]^2)/(r[t] Sqrt[
      Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
       Subscript[P, \[Phi]][t]^2]) + \[Alpha] (
      Subscript[P, \[Theta]][t] Sign[Cos[\[CapitalTheta][t]]])/(
      r[t] Sqrt[
       Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
        Subscript[P, \[Phi]][t]^2]), Subscript[P, r][0] == 0.6,
   Derivative[1][Subscript[P, \[Theta]]][
     t] == (-\[Kappa] Subscript[P, r][t] Subscript[P, \[Theta]][t])/(
     r[t] Sqrt[
      Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
       Subscript[P, \[Phi]][t]^2]) + (\[Kappa] Subscript[P, \[Phi]][
        t]^2)/(r[t] Sqrt[
       Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
        Subscript[P, \[Phi]][t]^2]) Cot[\[CapitalTheta][t]] - (
     Sin[\[CapitalTheta][t]] Sign[Cos[\[CapitalTheta][t]]])/r[t] +
     Subscript[P, \[Phi]][t]/ Sqrt[
      Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
       Subscript[P, \[Phi]][t]^2] Sign[Cos[\[CapitalTheta][t]]]/
      r[t]^2 - (\[Alpha] Subscript[P, r][t])/Sqrt[
      Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
       Subscript[P, \[Phi]][t]^2] Sign[Cos[\[CapitalTheta][t]]]/r[t],
   Subscript[P, \[Theta]][0] == -0.8,
   Derivative[1][Subscript[P, \[Phi]]][
     t] == -\[Kappa] (Subscript[P, r][t] Sin[\[CapitalTheta][t]] +
        Subscript[P, \[Theta]][t] Cos[\[CapitalTheta][t]]) Subscript[
       P, \[Phi]][t]/(
      r[t] Sqrt[
       Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
        Subscript[P, \[Phi]][t]^2] Sin[\[CapitalTheta][t]]) -
     Subscript[P, \[Theta]][t]/Sqrt[
      Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
       Subscript[P, \[Phi]][t]^2] Sign[Cos[\[CapitalTheta][t]]]/
      r[t]^2, Subscript[P, \[Phi]][0] == 0},
  {r, \[CapitalTheta], Subscript[P, r], Subscript[P, \[Theta]],
   Subscript[P, \[Phi]]}, {t, 0, 400}, MaxSteps -> 1000000000,
  Method -> {"TimeIntegration" -> "ExplicitRungeKutta"}]
ParametricPlot[
 Evaluate[{r[t] Sin[\[CapitalTheta][t]], Sqrt[
    Subscript[P, r][t]^2 + Subscript[P, \[Theta]][t]^2 +
     Subscript[P, \[Phi]][t]^2]} /. solution], {t, 0, 400},
 AxesLabel -> {"r", "L"}]

Markiyan Hirnyk
Сообщения: 1248
Зарегистрирован: Вс дек 04, 2011 11:07 pm

Re: Гравик зависимости от константы и значение координат

Сообщение Markiyan Hirnyk » Вт ноя 06, 2018 2:55 pm

Ваш код производит ошибку
NDSolve::dsvar: 0 cannot be used as a variable.