Страница imitrichev'а

:)   English version 

Вперед на GitHub

C++ код для расчета величины первой ячейки

Этот простой код может рассчитать величину первой ячейки $h_1$ на основе трех вводимых параметров:

  • $N$, числа ячеек
  • $L$, длины ребра, на котором строится сетка
  • $k$, скорости роста
Скорость роста показывает, во сколько раз следующая ячейка больше предыдущей (в направлении роста): $$k = h_2 / h_1 = {}... = h_{i+1} / h_i = h_N / h_{N-1}$$

Biased gridРисунок 1. Сетка со смещением

Коэффициент смещения $r$, который используется в качестве входного параметра в ANSYS Meshing, определяется как: $$r = h_N / h_1 $$ Тогда, поскольку $h_N = h_1 k^{N-1}$, $$r = k^{N-1}$$ Наконец, длина ребра, на котором строится сетка, равна: $$L = \sum_{n=0}^{N-1}h_1 k^n$$ Код выполняет подбор $h_1$ методом половинного деления, чтобы получить $L$ при заданных $N$ и $k$.

  1. Компиляция: g++ grid.cpp -o grid
  2. Запуск: ./grid
  3. Введите последовательно свои $N$, $L$, $k$.
  4. $h_1$ и $r$ выводятся в конце результатов.

Скачать исходный код (.cpp)

no image