73 std::vector<double>
I0;
76 std::vector<double>
I1;
79 std::vector<Point2D>
I2;
82 std::vector<Point2D>
I3;
117 virtualVortexesParams.resize(0);
123 virtual void CalcConvVelo() = 0;
126 virtual void CalcVeloToWakeVP() = 0;
135 void CalcDiffVeloI1I2ToSetOfPointsFromWake(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const WakeDataBase& vorticesDb, std::vector<double>&
I1, std::vector<Point2D>&
I2);
136 void CalcDiffVeloI1I2ToSetOfPointsFromSheets(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const Boundary& bnd, std::vector<double>& I1, std::vector<Point2D>& I2);
138 virtual void CalcDiffVeloI1I2ToWakeFromSheets(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const Boundary& bnd, std::vector<double>& I1, std::vector<Point2D>& I2) = 0;
139 virtual void CalcDiffVeloI1I2ToWakeFromWake(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const WakeDataBase& vorticesDb, std::vector<double>& I1, std::vector<Point2D>& I2) = 0;
140 #if defined(USE_CUDA) 141 void GPUCalcDiffVeloI1I2ToSetOfPointsFromWake(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const WakeDataBase& vorticesDb, std::vector<double>& I1, std::vector<Point2D>& I2,
bool useMesh =
false);
142 void GPUCalcDiffVeloI1I2ToSetOfPointsFromSheets(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const Boundary& bnd, std::vector<double>& I1, std::vector<Point2D>& I2,
bool useMesh =
false);
143 void GPUDiffVeloFAST(
const WakeDataBase& pointsDb,
const std::vector<double>& domainRadius,
const WakeDataBase& vorticesDb, std::vector<double>& I1, std::vector<Point2D>& I2);
151 void CalcDiffVeloI1I2();
152 void CalcDiffVeloI0I3();
158 void LimitDiffVelo(std::vector<Point2D>& diffVel);
168 void ResizeAndZero();
173 void SaveVisStress();
177 virtual void FillRhs(Eigen::VectorXd& rhs)
const = 0;
std::vector< double > I0
Вектор знаменателей (I0) диффузионных скоростей вихрей (обусловленных профилем)
std::vector< Point2D > I3
Вектор числителей (I3) диффузионных скоростей вихрей (обусловленных профилем)
Абстрактный класс, определяющий способ удовлетворения граничного условия на обтекаемом профиле ...
Заголовочный файл с описанием класса Point2D.
Описание базовых вспомогательных функций
const World2D & W
Константная ссылка на решаемую задачу
std::vector< VortexesParams > virtualVortexesParams
Вектор струтур, определяющий параметры виртуальных вихрей для профилей
std::vector< double > I1
Вектор знаменателей (I1) диффузионных скоростей вихрей (обусловленных завихренностью) ...
VortexesParams wakeVortexesParams
Струтура, определяющая параметры вихрей в следе
std::vector< double > epsastWake
Вектор характерных радиусов вихревых доменов (eps*)
Структура, определяющая параметры виртуальных вихрей для отдельного профиля
std::vector< Point2D > diffVelo
Вектор диффузионных скоростей вихрей
Velocity(const World2D &W_)
Конструктор
std::vector< Point2D > I2
Вектор числителей (I2) диффузионных скоростей вихрей (обусловленных завихренностью) ...
Класс, опеделяющий текущую решаемую задачу
Абстрактный класс, определяющий способ вычисления скоростей
Класс, опеделяющий набор вихрей
std::vector< Point2D > convVelo
Вектор конвективных скоростей вихрей
virtual ~Velocity()
Деструктор