View difference between Paste ID: uPEhryhe and 54eqveb8
SHOW: | | - or go back to the newest paste.
1-
/*#include <iostream>
1+
#include <iostream>
2
#include <vector>
3
4
using namespace std;
5
6
7
vector<double> y = { 1, 1, 1 };
8
9
10
vector<double> k1(3, 0), k2(3, 0), k3(3, 0), k4(3, 0);
11
12
double e = 0.001;
13
14
vector<vector<double>> A = {
15
	{ -1.f / e,     1.f / e,           1.f / e },
16
	{ 0,            1.f - 1.f / e,     0 },
17
	{ 0,            0,                 1.f }
18
};
19
20
double h;
21
double step = 0.1f;
22
23
auto getK1() {
24
	vector<double> result(3, 0);
25
	for (int i = 0; i < 3; i++) {
26
		result[i] = step * (A[i][0] * y[0] + A[i][1] * y[1] + A[i][2] * y[2]);
27
	}
28
	return result;
29
}
30
31
auto getK2() {
32
	vector<double> result(3, 0);
33
	for (int i = 0; i < 3; i++) {
34
		result[i] = step * (A[i][0] * (y[0] + k1[0]) + A[i][1] * (y[1] + k1[1]) + A[i][2] * (y[2] + k1[2]));
35
	}
36
	return result;
37
}
38
39
auto getY() {
40
	vector<double> result(3, 0);
41
	for (int i = 0; i < 3; i++) {
42
		result[i] = y[i] + 1.f / 2.f * (k1[i] + k2[i]);
43
	}
44
	return result;
45
}
46
47
int main() {
48
	for (h = 0 + step; h < 1; h += step) {
49
		k1 = getK1();
50
		k2 = getK2();
51
		y = getY();
52
		cout << h << ";" << (double)y[0] << ";" << (double)y[1] << ";" << (double)y[2] << endl << endl;
53
	}
54
	system("pause");
55
	return 0;
56-
}*/
56+
}