Так называемые квадратные и октридные сетки весьма привлекательны для приложений, требующих адаптивного уточнения сетки. Они, например, используются в Gerris и Paramesh . Кто-нибудь знает о хорошем формате файлов для таких сеток и поддерживает программное обеспечение для визуализации? Смотрите также этот ответ в FAQ по Gerris. Единственный потенциальный кандидат, о котором я сейчас знаю, это класс VTK HyperOctree , но, похоже, документации почти нет.
В качестве конкретного примера сетки рассмотрим разреженную сетку октодеревьев, состоящую из блоков, каждый из которых содержит 8 × 8 × 8 = 512 ячеек. Мои текущие стратегии в Визите / Paraview:
- Запишите сетку в виде неструктурированного файла VTK. Это дорого для больших наборов данных и не использует «структурированность» квад / октре.
- Соберите соседние «ящики» в дереве в большие блоки и напишите блочную сетку. Это включает в себя довольно много дополнительного кода и теряет информацию о подключении, встроенную в quad / octree.
Обновление Если в настоящее время нет подходящего формата для прямой записи и визуализации сетки октодеревьев, я был бы признателен за предложения относительно формата файла, который можно использовать для записи октодерева в виде блочно-структурированной сетки. В идеале этот формат:
- Имеет относительно простое определение / реализацию, в идеале с открытым исходным кодом и совместимостью с C / Fortran.
- Может эффективно обрабатывать большое количество блоков сетки (например, 1000 или более).
- Позволяет легко указать связность блоков сетки, в частности на границах уточнения.
В настоящее время я использую Silo для этой цели, но я ищу что-то, что получило бы лучшие результаты по вышеуказанным трем пунктам (меньше, быстрее, проще).