2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Помогите исправить программу в Wolfram mathematica
Сообщение18.11.2024, 04:46 


14/11/21
66
1. Решите графически систему


$$
\left\{\begin{aligned} {{}} & {{} {{} {{} x^{2}+y^{2}=4,}}} \\ {{{}}} & {{} {{} {{} ( x-3 )^{2}+( y+4 )^{2}=a^{2}}}} \\ \end{aligned} \right. 
$$


для различных значений параметра а. Значения параметра задаются слайдером, для каждого значения выведите количество решений системы.


Код:
(*task 1*)

circle1[x_, y_] := x^2 + y^2 == 4

circle2[x_, y_, a_] := (x - 3)^2 + (y + 4)^2 == a^2

countSolutions[a_] :=   Module[{eq1, eq2, plot1, plot2, intersections},

   plot1 = Plot[Evaluate[Solve[circle1[x, y], y]], {x, -3, 3},
 
   PlotStyle -> {Blue, Blue}, PlotRange -> {{-5, 5}, {-5, 5}}];

   plot2 = Plot[Evaluate[Solve[circle2[x, y, a], y]], {x, 1, 5},

     PlotStyle -> {Red, Red}];

   intersections = NSolve[{circle1[x, y], circle2[x, y, a]}, {x, y}];   

Show[plot1, plot2, PlotRange -> All, AxesLabel -> {"x", "y"},

  PlotLabel -> "Решения системы уравнений"]];

Manipulate[countSolutions[a], {a, 1, 10, 1}  ]



Почему-то не работает ползунок (двигаю, а ничего не меняется). И график не показывает, только декартова систему координат.

-- 18.11.2024, 04:47 --

Помогите, пожалуйста, разобраться

 Профиль  
                  
 
 Re: Помогите исправить программу в Wolfram mathematica
Сообщение18.11.2024, 21:42 
Заслуженный участник


25/02/11
1797
Команда Solve выдает результат в виде правил {x->...}. Чтобы работало, надо подставить переменные. Ну и точки пересечения вывести.
Код:
(*task 1*)circle1[x_, y_] := x^2 + y^2 == 4

circle2[x_, y_, a_] := (x - 3)^2 + (y + 4)^2 == a^2

countSolutions[a_] :=
  Module[{eq1, eq2, plot1, plot2, intersections},
   plot1 = Plot[y /. Evaluate[Solve[circle1[x, y], y]], {x, -3, 3},
     PlotStyle -> {Blue, Blue}, PlotRange -> {{-5, 5}, {-5, 5}}];
   plot2 =
    Plot[y /. Evaluate[Solve[circle2[x, y, a], y]], {x, -3, 5},
     PlotStyle -> {Red, Red}];
   intersections =
    Select[{x, y} /.
      NSolve[{circle1[x, y], circle2[x, y, a]}, {x, y}], # \[Element]
       Reals &];
   Show[plot1, plot2, PlotRange -> All, AxesLabel -> {"x", "y"},
    PlotLabel -> "Решения системы уравнений",
    Epilog -> {PointSize[Medium], Point /@ intersections}]];

Manipulate[countSolutions[a], {a, 1, 10, 1}]


Решение тут, правда, аналитическое, а не графическое.

 Профиль  
                  
 
 Re: Помогите исправить программу в Wolfram mathematica
Сообщение18.11.2024, 23:16 


05/09/16
12108
Изображение

 Профиль  
                  
 
 Re: Помогите исправить программу в Wolfram mathematica
Сообщение19.11.2024, 13:32 


14/11/21
66
Vince Diesel

Да
Спасибо
Исправляюсь

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group