|
|
|
|
/**
|
|
|
|
|
* 边界条件
|
|
|
|
|
*/
|
|
|
|
|
#ifndef CFDSTRUCTDATASOLVERBOUNDARYCONDITIONEMANAGER_H
|
|
|
|
|
#define CFDSTRUCTDATASOLVERBOUNDARYCONDITIONEMANAGER_H
|
|
|
|
|
|
|
|
|
|
#include <CFDStructDataManagerBase.h>
|
|
|
|
|
#include "CFDStructDataManager_global.h"
|
|
|
|
|
class CUIConfig;
|
|
|
|
|
|
|
|
|
|
class CFDSTRUCTDATAMANAGER_EXPORT CFDStructDataSolverBoundaryConditionManager : public CFDStructDataManagerBase
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
public:
|
|
|
|
|
explicit CFDStructDataSolverBoundaryConditionManager(QObject *parent = nullptr);
|
|
|
|
|
~CFDStructDataSolverBoundaryConditionManager();
|
|
|
|
|
|
|
|
|
|
CUIConfig *getParamUIConfig();
|
|
|
|
|
void saveDataToDom(rapidjson::Document &dom);
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
// 生成界面配置 壁面 绝热壁
|
|
|
|
|
CUIConfig *genWallAdiabaticWallUIConfig();
|
|
|
|
|
// 生成界面配置 壁面 绝热壁
|
|
|
|
|
CUIConfig *genWallIsothermalWallUIConfig();
|
|
|
|
|
// 生成界面配置 壁面 绝热壁
|
|
|
|
|
CUIConfig *genWallHotFlowWallUIConfig();
|
|
|
|
|
|
|
|
|
|
// 生成界面配置 远场
|
|
|
|
|
CUIConfig *genFarFieldModeUIConfig();
|
|
|
|
|
|
|
|
|
|
// 生成界面配置 压强入口 超声速 柱坐标系
|
|
|
|
|
CUIConfig *genPressureInletModeSupersonicCylindricalUIConfig();
|
|
|
|
|
// 生成界面配置 压强入口 超声速 笛卡尔坐标系
|
|
|
|
|
CUIConfig *genPressureInletModeSupersonicCartesianUIConfig();
|
|
|
|
|
// 生成界面配置 压强入口 超声速 面法相
|
|
|
|
|
CUIConfig *genPressureInletModeSupersonicSurfaceUIConfig();
|
|
|
|
|
// 生成界面配置 压强入口 亚声速 柱坐标系
|
|
|
|
|
CUIConfig *genPressureInletModeSubsonicCylindricalUIConfig();
|
|
|
|
|
// 生成界面配置 压强入口 亚声速 笛卡尔坐标系
|
|
|
|
|
CUIConfig *genPressureInletModeSubsonicCartesianUIConfig();
|
|
|
|
|
// 生成界面配置 压强入口 亚声速 面法相
|
|
|
|
|
CUIConfig *genPressureInletModeSubsonicSurfaceUIConfig();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 生成界面配置 压强出口
|
|
|
|
|
CUIConfig *genPressureOutletUIConfig();
|
|
|
|
|
|
|
|
|
|
// 生成界面配置 对称
|
|
|
|
|
CUIConfig *genSymmetricUIConfig();
|
|
|
|
|
|
|
|
|
|
// 超音速出口/外推
|
|
|
|
|
CUIConfig *genSupersonicOutlet_ExtrapolateUIConfig();
|
|
|
|
|
|
|
|
|
|
// 网格交界面
|
|
|
|
|
CUIConfig *genMeshInterfaceUIConfig();
|
|
|
|
|
|
|
|
|
|
// 生成界面配置 周期 平移
|
|
|
|
|
CUIConfig *genCycleTranslationUIConfig();
|
|
|
|
|
// 生成界面配置 周期 旋转
|
|
|
|
|
CUIConfig *genCycleRotationUIConfig();
|
|
|
|
|
|
|
|
|
|
// 流量出口
|
|
|
|
|
CUIConfig *genMassFlowOutletUIConfig();
|
|
|
|
|
signals:
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
// 边界名称
|
|
|
|
|
QString m_BoundaryName; // Boundary Name
|
|
|
|
|
|
|
|
|
|
// 所属计算域
|
|
|
|
|
QString m_ComputationalDomain; // Computational Domain
|
|
|
|
|
|
|
|
|
|
// 边界类型
|
|
|
|
|
int m_BoundaryType = 0; // Boundary Type
|
|
|
|
|
|
|
|
|
|
// 马赫数
|
|
|
|
|
double m_MachNumber; // Mach Number
|
|
|
|
|
|
|
|
|
|
// // 密度
|
|
|
|
|
// double m_Density; // Density
|
|
|
|
|
|
|
|
|
|
// 压强
|
|
|
|
|
double m_Pressure;
|
|
|
|
|
|
|
|
|
|
// 温度
|
|
|
|
|
double m_Temperature; // Temperature
|
|
|
|
|
|
|
|
|
|
// 来流方向
|
|
|
|
|
double m_InflowDirection; // Inflow Direction
|
|
|
|
|
|
|
|
|
|
// 湍流粘性比
|
|
|
|
|
double m_TurbulentViscosityRatio; // Turbulent Viscosity Ratio
|
|
|
|
|
|
|
|
|
|
// 湍流强度
|
|
|
|
|
double m_TurbulentIntensity; // Turbulent Intensity
|
|
|
|
|
|
|
|
|
|
// 总压
|
|
|
|
|
double m_TotalPressure; // Total Pressure
|
|
|
|
|
|
|
|
|
|
// 总温
|
|
|
|
|
double m_TotalTemperature; // Total Temperature
|
|
|
|
|
|
|
|
|
|
// 静压
|
|
|
|
|
double m_StaticPressure; // Static Pressure
|
|
|
|
|
|
|
|
|
|
// 配对名称
|
|
|
|
|
double m_PairingName; // Pairing Name
|
|
|
|
|
|
|
|
|
|
// 对应面
|
|
|
|
|
int m_CorrespondingSurface; // Corresponding Surface
|
|
|
|
|
|
|
|
|
|
// 周期类型
|
|
|
|
|
int m_PeriodicType = 0; // Periodic Type
|
|
|
|
|
|
|
|
|
|
// 平移距离
|
|
|
|
|
QString m_TranslationDistance; // Translation Distance
|
|
|
|
|
|
|
|
|
|
// 旋转中心
|
|
|
|
|
QString m_RotationCenter; // Rotation Center
|
|
|
|
|
|
|
|
|
|
// 转轴方向
|
|
|
|
|
QString m_RotationAxisDirection; // Rotation Axis Direction
|
|
|
|
|
|
|
|
|
|
// 旋转角
|
|
|
|
|
QString m_RotationAngle; // Rotation Angle
|
|
|
|
|
|
|
|
|
|
// 壁面类型
|
|
|
|
|
int m_WallType = 0; // Wall Type
|
|
|
|
|
|
|
|
|
|
// 壁面温度
|
|
|
|
|
double m_WallTemperature; // Wall Temperature
|
|
|
|
|
|
|
|
|
|
// 壁面热流
|
|
|
|
|
double m_WallHeatFlux; // Wall Heat Flux
|
|
|
|
|
|
|
|
|
|
// 配对名称
|
|
|
|
|
QString m_PairedName = "";
|
|
|
|
|
|
|
|
|
|
// 对应面
|
|
|
|
|
int m_MatchingSurface = 0;
|
|
|
|
|
|
|
|
|
|
// 流量(单流道
|
|
|
|
|
double m_FlowRate = 0;
|
|
|
|
|
|
|
|
|
|
// 初始压强:
|
|
|
|
|
double m_InitialPressure = 0;
|
|
|
|
|
|
|
|
|
|
// 压强松弛因子
|
|
|
|
|
double m_PressureRelaxationFactor = 0;
|
|
|
|
|
|
|
|
|
|
//速度方向类型
|
|
|
|
|
int m_VelocityDirectionType = 0;
|
|
|
|
|
|
|
|
|
|
//方向矢量
|
|
|
|
|
QString m_DirectionVector = "";
|
|
|
|
|
|
|
|
|
|
//边界类型,选中总压入口时,出现的子选项,可选声速、亚声速
|
|
|
|
|
int m_BoundaryType_sub = 0;
|
|
|
|
|
|
|
|
|
|
//用户自定义
|
|
|
|
|
int m_UserDefined = 0;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // CFDSTRUCTDATASOLVERBOUNDARYCONDITIONMANAGER_H
|