Paraview
.pdfВизуализация и обработка научных данных
Пакет Paraview
Григорьев А.В.
re5itsme@gmail.com
http://chpc.ru/
6 февраля 2013 г.
Содержание
Содержание
q Подготовка данных
qФорматы данных
qГенерация данных
qСтруктурированная сетка
qНеструктурированная сетка q Пакет Paraview
qУстановка Paraview
qИнтерфейс Paraview
qФильтры
qВремя в Paraview
qПараллельная визуализация Paraview
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Форматы данных
Существуют два различных типа формата VTK. Первый тип формата последовательный, он легко может быть записан и считан. В том числе, при написании программы перевода данных в нужный формат собственными руками. Второй тип формата на основе XML является более гибким. Форматы основанные на XML поддерживают произвольный доступ, параллельный ввод и вывод и лучшее сжатие данных.
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Форматы данных
VTK поддерживает пять различных форматов данных: structured points (структурированные точки), structured grid (структурированная сетка), rectilinear grid (прямоугольная сетка), unstructured grid (произвольная сетка) и polygonal data (полигональные данные).
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Генерация данных
Рассмотрим на простых примерах генерацию данных для визуализации. При умении генерировать данные для формата VTK, вы сможете переводить результаты численного моделирования в этот формат. Разумеется, различных вариантов много, в рамках данного учебного материала нет возможности всех их охватить. Поэтому рассмотрим наиболее часто встречающиеся, в другие форматы запись данных будет выполняться примерно по той же схеме.
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Структурированная сетка
Можно вручную записать результаты своих вычислений в случае трехмерных данных. Следующий код демонстрирует запись данных в формат VTK. В качестве источника данных
воспользуемся сеточной функцией
f = exp(x2 + y2 + z2) cos(3 x) cos(4 y) на сетке (100, 100, 50).
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Структурированная сетка
void WriteStructuredGrid3D(float x, float y, float z, float A, int ni, int nj, int nk, const char filename) {
FILE out;
out = fopen(filename, "w");
fprintf(out, "# vtk DataFile Version 3.0\n"); fprintf(out, "Example 3D regular grid VTK file.\n"); fprintf(out, "ASCII\n");
fprintf(out, "DATASET STRUCTURED_GRID\n"); fprintf(out, "DIMENSIONS %d %d %d\n", ni, nj, nk); fprintf(out, "POINTS %d float\n", ni nj nk);
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Структурированная сетка
for (int k = 0; k < nk; k++) { for (int j = 0; j < nj; j++) {
for (int i = 0; i < ni; i++) {
int index = k ni nj + j ni + i; fprintf(out, "%f %f %f\n", x[i], y[j], z[k]);
}
}
}
fprintf(out, "POINT_DATA %d\n", ni nj nk); fprintf(out, "SCALARS u float 1\n");
fprintf(out, "LOOKUP_TABLE default\n"); for (int i = 0; i < ni nj nk; i++) {
fprintf(out, "%f\n", A[i]);
}
fclose(out);
}
Григорьев А.В. Визуализация и обработка научных данных
Содержание
Структурированная сетка
Содержание
Структурированная сетка