![]() |
VM2D 1.14
Vortex methods for 2D flows simulation
|
Абстрактный класс, определяющий вид механической системы More...
#include <Mechanics2D.h>


Public Member Functions | |
| virtual void | ReadSpecificParametersFromDictionary ()=0 |
| Чтение параметров конкретной механической системы | |
| Mechanics (const World2D &W_, size_t numberInPassport_, bool isMoves_, bool isDeform_) | |
| Конструктор | |
| virtual | ~Mechanics () |
| Деструктор | |
| void | Initialize (Point2D Vcm0_, Point2D Rcm0_, double Wcm0_, double Phi0_) |
| Задание начального положения и начальной скорости | |
| virtual void | GetHydroDynamForce ()=0 |
| Вычисление гидродинамической силы, действующей на профиль | |
| void | GenerateForcesHeader () |
| Генерация заголовка файла нагрузок | |
| void | GeneratePositionHeader () |
| Генерация заголовка файла положения профиля | |
| void | GenerateForcesString () |
| Сохранение строки со статистикой в файл нагрузок | |
| void | GeneratePositionString () |
| Сохранение строки со статистикой в файл нагрузок | |
| virtual Point2D | VeloOfAirfoilRcm (double currTime)=0 |
| Вычисление скорости центра масс профиля | |
| virtual Point2D | PositionOfAirfoilRcm (double currTime)=0 |
| Вычисление положения центра масс профиля | |
| virtual double | AngularVelocityOfAirfoil (double currTime)=0 |
| Вычисление угловой скорости профиля | |
| virtual double | AngleOfAirfoil (double currTime)=0 |
| Вычисление угла поворота профиля | |
| virtual void | VeloOfAirfoilPanels (double currTime)=0 |
| Вычисление скоростей начал панелей | |
| virtual void | Move ()=0 |
| Перемещение профиля в соответствии с законом | |
Public Attributes | |
| Point2D | Vcm0 |
| Начальная скорость центра и угловая скорость | |
| double | Wcm0 |
| Point2D | Rcm0 |
| Начальное положение профиля | |
| double | Phi0 |
| Point2D | Vcm |
| Текущие скорость центра и угловая скорость | |
| double | Wcm |
| Point2D | Rcm |
| Текущие положение профиля | |
| double | Phi |
| Point2D | VcmOld |
| Скорость и отклонение с предыдущего шага | |
| double | WcmOld |
| Point2D | RcmOld |
| Текущие положение профиля | |
| double | PhiOld |
| double | circulation |
| Текущая циркуляция скорости по границе профиля | |
| double | circulationOld |
| Циркуляция скорости по границе профиля с предыдущего шага | |
| const bool | isMoves |
| Переменная, отвечающая за то, двигается профиль или нет | |
| const bool | isDeform |
| Переменная, отвечающая за то, деформируется профиль или нет | |
| Point2D | hydroDynamForce |
| Вектор гидродинамической силы и момент, действующие на профиль | |
| double | hydroDynamMoment |
| Point2D | viscousForce |
| Вектор силы и момент вязкого трения, действующие на профиль | |
| double | viscousMoment |
Protected Attributes | |
| const World2D & | W |
| Константная ссылка на решаемую задачу | |
| const size_t | numberInPassport |
| Номер профиля в паспорте | |
| Airfoil & | afl |
| const Boundary & | boundary |
| const VortexesParams & | virtVortParams |
| std::unique_ptr< VMlib::StreamParser > | mechParamsParser |
| Умный указатель на парсер параметров механической системы | |
Private Member Functions | |
| void | ReadParametersFromDictionary () |
| Парсинг списка параметров механической системы | |
Абстрактный класс, определяющий вид механической системы
\Version 1.14
Definition at line 71 of file Mechanics2D.h.
| Mechanics::Mechanics | ( | const World2D & | W_, |
| size_t | numberInPassport_, | ||
| bool | isMoves_, | ||
| bool | isDeform_ | ||
| ) |
Конструктор
| [in] | W_ | константная ссылка на решаемую задачу |
| [in] | numberInPassport_ | номер профиля в паспорте задачи |
| [in] | isMoves_ | является ли профиль подвижным |
| [in] | isDeform_ | является ли профиль деформируемым |
Definition at line 55 of file Mechanics2D.cpp.
|
inlinevirtual |
|
pure virtual |
Вычисление угла поворота профиля
| [in] | currTime | текущее время |
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
|
pure virtual |
Вычисление угловой скорости профиля
| [in] | currTime | текущее время |
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
| void Mechanics::GenerateForcesHeader | ( | ) |
Генерация заголовка файла нагрузок
Definition at line 125 of file Mechanics2D.cpp.

| void Mechanics::GenerateForcesString | ( | ) |
Сохранение строки со статистикой в файл нагрузок
Definition at line 183 of file Mechanics2D.cpp.


| void Mechanics::GeneratePositionHeader | ( | ) |
Генерация заголовка файла положения профиля
Definition at line 156 of file Mechanics2D.cpp.

| void Mechanics::GeneratePositionString | ( | ) |
Сохранение строки со статистикой в файл нагрузок
Definition at line 238 of file Mechanics2D.cpp.


|
pure virtual |
Вычисление гидродинамической силы, действующей на профиль
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
Задание начального положения и начальной скорости
| [in] | Vcm0_ | - скорость центра масс |
| [in] | Rcm0_ | - положение центра масс |
| [in] | Wcm0_ | - угловая скорость центра масс |
| [in] | Phi0_ | - угол поворота центра масс |
Definition at line 92 of file Mechanics2D.cpp.


|
pure virtual |
Перемещение профиля в соответствии с законом
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
|
pure virtual |
Вычисление положения центра масс профиля
| [in] | currTime | текущее время |
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
|
private |
Парсинг списка параметров механической системы
Definition at line 116 of file Mechanics2D.cpp.

|
pure virtual |
Чтение параметров конкретной механической системы
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
|
pure virtual |
Вычисление скоростей начал панелей
| [in] | currTime | текущее время |
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
|
pure virtual |
Вычисление скорости центра масс профиля
| [in] | currTime | текущее время |
Implemented in VM2D::MechanicsDeformable, VM2D::MechanicsRigidGivenLaw, VM2D::MechanicsRigidImmovable, VM2D::MechanicsRigidOscillPart, and VM2D::MechanicsRigidRotatePart.
|
protected |
Константная ссылка на профиль
инициализируется автоматом в конструкторе, при помощи const_cast
Definition at line 87 of file Mechanics2D.h.
|
protected |
Константная ссылка на граничное условие
инициализируется автоматом в конструкторе
Definition at line 91 of file Mechanics2D.h.
| double VM2D::Mechanics::circulation |
Текущая циркуляция скорости по границе профиля
Definition at line 121 of file Mechanics2D.h.
| double VM2D::Mechanics::circulationOld |
Циркуляция скорости по границе профиля с предыдущего шага
Definition at line 124 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::hydroDynamForce |
Вектор гидродинамической силы и момент, действующие на профиль
Definition at line 134 of file Mechanics2D.h.
| double VM2D::Mechanics::hydroDynamMoment |
Definition at line 135 of file Mechanics2D.h.
| const bool VM2D::Mechanics::isDeform |
Переменная, отвечающая за то, деформируется профиль или нет
Definition at line 131 of file Mechanics2D.h.
| const bool VM2D::Mechanics::isMoves |
Переменная, отвечающая за то, двигается профиль или нет
Definition at line 128 of file Mechanics2D.h.
|
protected |
Умный указатель на парсер параметров механической системы
Definition at line 98 of file Mechanics2D.h.
|
protected |
Номер профиля в паспорте
Definition at line 82 of file Mechanics2D.h.
| double VM2D::Mechanics::Phi |
Definition at line 112 of file Mechanics2D.h.
| double VM2D::Mechanics::Phi0 |
Definition at line 106 of file Mechanics2D.h.
| double VM2D::Mechanics::PhiOld |
Definition at line 118 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::Rcm |
Текущие положение профиля
Definition at line 112 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::Rcm0 |
Начальное положение профиля
Definition at line 106 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::RcmOld |
Текущие положение профиля
Definition at line 118 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::Vcm |
Текущие скорость центра и угловая скорость
Definition at line 109 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::Vcm0 |
Начальная скорость центра и угловая скорость
Definition at line 103 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::VcmOld |
Скорость и отклонение с предыдущего шага
Definition at line 115 of file Mechanics2D.h.
|
protected |
Константная ссылка на структуру с параметрами виртуального вихревого слоя для профиля
инициализируется автоматом в конструкторе
Definition at line 95 of file Mechanics2D.h.
| Point2D VM2D::Mechanics::viscousForce |
Вектор силы и момент вязкого трения, действующие на профиль
Definition at line 138 of file Mechanics2D.h.
| double VM2D::Mechanics::viscousMoment |
Definition at line 139 of file Mechanics2D.h.
|
protected |
Константная ссылка на решаемую задачу
Definition at line 79 of file Mechanics2D.h.
| double VM2D::Mechanics::Wcm |
Definition at line 109 of file Mechanics2D.h.
| double VM2D::Mechanics::Wcm0 |
Definition at line 103 of file Mechanics2D.h.
| double VM2D::Mechanics::WcmOld |
Definition at line 115 of file Mechanics2D.h.