/
NenNil
/
vmk2025-parallel-computing
Обзор
Документация
Войти
/
NenNil
/
vmk2025-parallel-computing
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
seq/generate.cpp
27 строк
969 B
Нил Ненахов
added seq and omp program
31 окт 2025, 20:17
31 окт 2025, 20:17
7c054ab
Код
Авторство
О чём код?
#include "generate.h" #include "matrix.h" #include <vector> CSRMatrix* fast_generate(int Nx, int Ny, Matrix_coef m) { auto matrix = new_matrix(Nx, Ny); matrix->IA[0] = 0; for (int i = 0; i < matrix->cols; ++i) { int row = i / Nx; // 0..matrix->rows-1 int col = i % Nx; // 0..matrix->cols-1 int count = matrix->IA[i];// соседи int rowIdx = row * Nx + col; if (row > 0) fast_add(matrix, m.up(col, row), (row-1)*Nx + col, &count); if (col > 0) fast_add(matrix, m.left(col, row), row*Nx + col-1, &count); fast_add(matrix, m.diag(col, row), row*Nx + col, &count); if (col < Nx-1) fast_add(matrix, m.right(col,row), row*Nx + col+1, &count); if (row < Ny-1) fast_add(matrix, m.down(col, row), (row+1)*Nx + col, &count); matrix->IA[i + 1] = count; } return matrix; }