private void button1_Click(object sender, EventArgs e) { double t0, tmax, tau; t0 = Convert.ToDouble(tbT0.Text); tmax = Convert.ToDouble(tbTmax.Text); tau = Convert.ToDouble(tbTau.Text); double[] mass = {}; double t = t0; int n = 3; double[] ynach = new double[n]; ynach[0] = 1.0; ynach[1] = 1.0; ynach[2] = 0.0; MathFuncsDiffEquations myfunc = new MathFuncsDiffEquations(); if (rbEiler.Checked) { richTextBox1.Clear(); mass = myfunc.Eiler(t0, tmax, tau, n, ynach, diffEqu); for (int i = 1; i < (int)((tmax - t0) / tau); i++) { t += tau; richTextBox1.Text += String.Format("time={0} y1={1:f6} y2={2:f6} y3={3:f6}", t, mass[i * 3], mass[1 + i * 3], mass[2 + i * 3]) + Environment.NewLine; } } if (rbRK2.Checked) { richTextBox1.Clear(); mass = myfunc.RK2(t0, tmax, tau, n, ynach, diffEqu); for (int i = 1; i < (int)((tmax - t0) / tau); i++) { t += tau; richTextBox1.Text += String.Format("time={0} y1={1:f6} y2={2:f6} y3={3:f6}", t, mass[i * 3], mass[1 + i * 3], mass[2 + i * 3]) + Environment.NewLine; } } if (rbRK4.Checked) { richTextBox1.Clear(); mass = myfunc.RK4(t0, tmax, tau, n, ynach, diffEqu); for (int i = 1; i < (int)((tmax - t0) / tau); i++) { t += tau; richTextBox1.Text += String.Format("time={0} y1={1:f6} y2={2:f6} y3={3:f6}", t, mass[i * 3], mass[1 + i * 3], mass[2 + i * 3]) + Environment.NewLine; } } }