Ошбику при выделениии проверить просто:
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
| class particle
{
public:
double x; //значение координаты x
double last_x; //значение х на прошлом шаге для интегрирования рунге-кутты
double y; //значение координаты y
double last_y; //значение у на прошлом шаге для интегрирования рунге-кутты
double p; //значение давления
double rho; //значение плотности
double e; //значение энергии
double last_e; //значение энергии на прошлом шаге для интегрирования рунге-кутты
double ux; //значение скорости по х
double last_ux; //значение скорости по х на прошлом шаге для интегрирования рунге-кутты
double uy; //значение скорости по у
double last_uy; //значение скорости по у на прошлом шаге для интегрирования рунге-кутты
double m; //значение массы частицы
int count_N; //количество соседок частицы
int *arr_N; //массив индексов соседних частиц
double sum_ux; //значение суммирования правой части уравнения для ux
double sum_uy; //значение суммирования правой части уравнения для uy
double sum_e; //значение суммироваиня правой части уравнения для энергии
double last_sum_x; //значение функции на прошлом шаге для интегрирования рунге-кутты
double last_sum_y; //значение функции на прошлом шаге для интегрирования рунге-кутты
double last_sum_ux; //значение суммирования на прошлом шаге для интегрования рунге-кутты
double last_sum_uy; //значение суммирования на прошлом шаге для интегрирования рунге-кутты
double last_sum_e; //значение суммирования на прошлом шаге для интегрирования рунге-кутты
int i; //значение индекса строки ячейки в которой находится частица
int j; //значение индекса стодбца ячейки в которой находится частица
int s; //индекс следующей частицы находящейся в текущей ячейке
~particle()
{
delete [] arr_N;
}
};
int main()
{
particle *arr = new particle[28000];
system("pause");
return 0;
} |
|
Если ошибки нет, то выделение здесь ни при чём. Код смотрите.