Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемВасилий Шадрунов
1 Использование средств MPI в программной системе для моделирования динамики дискретных активных сред М.И. Иванченко, О.И. Канаков, К.Г. Мишагин, Г.В. Осипов, В.Д. Шалфеев ННГУ им. Н.И. Лобачевского, Нижний Новгород
2 Примеры дискретных сред Кристаллические решетки Биологические ткани Сети синхронизации Сети джозефсоновских контактов Искусственные нейронные сети Пространственно-локализованные осциллирующие во времени решения в нелинейных дискретных средах Дискретные бризеры:
3 Параллельный алгоритм Локальность связей –известный пример: уравнение Пуассона Решеточная топология –коммуникатор с декартовой топологией: MPI_Cart_create Параллелизм коммуникации и вычислений –неблокирующие операции обмена
4 Реальная эффективность
5 Метод Рунге-Кутты 4 порядка
6 DAMPS Discrete Active Media Parallelizing Simulator Пакет для моделирования дискретных активных сред
7 DAMPS Статическая библиотека ldamps.lib Заголовочный файл ldamps.h Исходный C++ файл метода интегрирования: rk4footer.cpp Определение классов объектов- датчиков Пользовательский интерфейс
8 Пример задачи: breather.cpp #include "ldamps.h" inline double vstr(double z) { return z-z*z+0.25*z*z*z; } inline void rhand(state_t y, state_t up, state_t rt, state_t dn, state_t lt, state_t res, par_t par, double t) { res[0]=y[1]; res[1]=-vstr(y[0])+0.1*(lt[0]-2.*y[0]+rt[0]); } #define NAME breather enum {ORDER=2, LINKS=1, PARS=0 }; #include "rk4footer.cpp"
9 Пример файла main.cpp #include #include "ldamps.h" #include "process.h" enum consts { ROWS=1, COLS=1000, VCELLS=1, HCELLS=3, };
10 int main(int argc, char* argv[ ]) { MPI_Init(&argc, &argv); { int rank; MPI_Comm_rank(MPI_COMM_WORLD, &rank); Bcond bc; bc.top=FIXED; bc.rt =PERIOD; bc.bot=FIXED; bc.lt =PERIOD; extern Rk4 breather; breather.setstep(0.01); Latt latt(ROWS, COLS, VCELLS, HCELLS, bc, &breather); Minmax mm(&latt); main.cpp (продолжение)
11 double a[VCELLS*ROWS][HCELLS*COLS][2]; for(int i=0; i
12 Заключение Нелинейные дискретные среды - объект пристального внимания современной физики Параллельные вычислительные системы - эффективный инструмент для их изучения Наше направление: дискретные бризеры
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.