Фазовый портрет системы диф. уравнений - C#
Формулировка задачи:
Есть такая система:
dx/dt = -x;
dy/dt = y;
Необходимо построить фазовый портрет системы, который должен выглядеть как черно белой фотографии.
А на деле получается как на скриншоте из вижака.
Код:
где я оступился?
Листинг программы
- double k = 0.01; // шаг
- double t = 0; // начальное время
- chart1.Series[0].BorderWidth = 3; // толщина линии
- chart1.Series[0].ChartType = SeriesChartType.Point;
- double x = -1;
- double y = -1;
- Graph(x, y, t, k);
- double x1 = -1;
- double y1 = 1;
- Graph(x1, y1, t, k);
- double x2 = 1;
- double y2 = -1;
- Graph2(x2, y2, t, k);
- double x3 = 1;
- double y3 = 1;
- Graph2(x3, y3, t, k);
Решение задачи: «Фазовый портрет системы диф. уравнений»
textual
Листинг программы
- public void Graph(double x, double y, double t, double k)
- {
- double fx = -x;
- double fy = y;
- chart1.Series[0].Points.AddXY(x, y);
- while (t <= 5)
- {
- double x1 = x + k * fx;
- double y1 = y + k * fy;
- t = t + k;
- x = x1;
- y = y1;
- fx = -x;
- fy = y;
- if (Math.Abs(y) > 0.01)
- {
- chart1.Series[0].Points.AddXY(x, y);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д