Линейная система дифференциальных уравнений методом Эйлера - C#
Формулировка задачи:
Здрасте, вообщем прочитал много интересный источников, и как-то не понял как это решается. Не пойму самого алгоритма решения(проблема не в написании кода).
Вот пару источников которые якобы рассказывают для чайников как это сделать:
1. http://mathhelpplanet.com/static.php...nyeinyh-sistem
2. http://www.mathelp.spb.ru/DU/p12.htm
Может кто знает как это делается.)) растолкуйте.)
Решение задачи: «Линейная система дифференциальных уравнений методом Эйлера»
textual
Листинг программы
- public class Euler
- {
- public static List<EulersResult> GetAnswer(double a, double b, double h, double Y0)
- {
- List<EulersResult> result = new List<EulersResult>();
- double y0 = 1, //начальное условие
- x0 = a,
- x = x0,
- y = y0,
- eps = 0; //ошибка
- int n = (int)Math.Ceiling((b - a) / h); //кол-во итераций
- for (int i = 0; i < n + 1; i++)
- {
- result.Add(new EulersResult()
- {
- x = x,
- y = y,
- eps = eps
- });
- y = y + h * Function(x, y); //делаем шаг
- eps = Math.Abs(y - 2 / x);
- x += h;
- }
- return result;
- }
- private static double Function(double x, double y)
- {
- double res = -x * y / (x + 1);
- return res;
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д