ModalThermalResults
描述
一个ModalThermalResults
对象包含热模型的特征值和特征向量矩阵,以及用于适当正交分解(POD)的快照的平均值。
创建
方法求解一个模态热问题解决
函数。这个函数返回一个模态热解ModalThermalResults
对象。
属性
DecayRates
- - - - - -热模型的特征值
列向量
此属性是只读的。
热模型的特征值,作为列向量返回。
数据类型:双
ModeShapes
- - - - - -特征向量矩阵
矩阵
此属性是只读的。
特征向量矩阵,作为一个矩阵返回。
数据类型:双
SnapshotsAverage
- - - - - -用于POD的快照的平均值
列向量
此属性是只读的。
用于POD的快照的平均值,作为列向量返回。
数据类型:双
ModeType
- - - - - -模式类型
“固有模式”
|“PODModes”
此属性是只读的。
模式类型,返回为“固有模式”
或“PODModes”
.
数据类型:字符串
网
- - - - - -有限元网格
FEMesh
对象
此属性是只读的。
有限元网格,返回作为一个FEMesh
对象。详细信息请参见FEMesh属性.
例子
用模态叠加法求解瞬态热模型
首先得到特定衰减范围的模态振型,然后使用模态叠加方法求解瞬态热问题。
模态分解
首先,创建一个模态热模型。
Thermalmodel = createpde(“热”,“模态”);
创建几何图形并将其包含在模型中。
Sq1 = [3;4;0;3;3;0;0;0;3;3); D1 = [2; 4; 0.5; 1.5; 2.5; 1.5; 1.5; 0.5; 1.5; 2.5]; gd = [SQ1 D1]; sf =“于SQ1 + D1”;Ns = char(“于SQ1”,“D1”);Ns = Ns ';Dl = decsg(gd,sf,ns);geometryFromEdges (thermalmodel dl);pdegplot (thermalmodel“EdgeLabels”,“上”,“FaceLabels”,“上”) xlim([-1.5 4.5]) ylim([-0.5 3.5]平等的
对于正方形区域,分配这些热特性:
导热系数为 .
质量密度为 .
比热为 .
thermalProperties (thermalmodel“ThermalConductivity”10…“MassDensity”2,…“SpecificHeat”, 0.1,…“面子”1);
对于金刚石区域,分配这些热特性:
导热系数为 .
质量密度为 .
比热为 .
thermalProperties (thermalmodel“ThermalConductivity”2,…“MassDensity”, 1…“SpecificHeat”, 0.1,…“面子”2);
假设菱形区域是一个密度为的热源 .
internalHeatSource (thermalmodel 4“面子”2);
将温度恒定为0°C到方板的两侧。
thermalBC (thermalmodel“温度”0,“边缘”,[1 2 7 8]);
设置初始温度为0°C。
thermalIC (thermalmodel 0);
生成网格。
generateMesh (thermalmodel);
计算衰减范围[100,10000]内热模型的本征模 .
RModal = solve(热模型,“DecayRange”(100、10000))
RModal = ModalThermalResults with properties: DecayRates: [164x1 double] ModeShapes: [1481x164 double] ModeType: "EigenModes" Mesh: [1x1 FEMesh]
瞬态分析
知道了模态振型,现在就可以用模态叠加法来解决瞬态热问题。首先,将热模型分析类型切换为瞬态分析。
thermalmodel。一个nalysisType =“瞬态”;
这个问题的动力学非常快。温度在0.1秒左右达到稳定状态。要捕获动态中最活跃的部分,请将解决方案时间设置为logspace (-1100)
.该命令返回100个在0.01到0.1之间的对数间隔解时间。
Tlist = logspace(-2,-1,10);
解这个方程。
Rtransient = solve(热模型,tlist,“ModalResults”, RModal);
用等高线画出解的等温线。
T =瞬变温度;pdeplot (thermalmodel“XYData”T(:,结束),…“轮廓”,“上”,…“ColorMap”,“热”)
恰当正交分解的快照
利用瞬态解的几个实例(快照)获得线性热模型的POD模式。
创建瞬态热模型。
Thermalmodel = createpde(“热”,“瞬态”);
创建一个单位正方形几何图形,并将其包含在模型中。
geometryFromEdges (thermalmodel @squareg);
绘制几何图形,显示边缘标签。
pdegplot (thermalmodel“EdgeLabels”,“上”xlim([-1.1 1.1])
指定材料的热导率、质量密度和比热。
thermalProperties (thermalmodel“ThermalConductivity”, 400,…“MassDensity”, 1300,…“SpecificHeat”, 600);
设置右边边缘的温度为One hundred.
.
thermalBC (thermalmodel“边缘”2,“温度”, 100);
设置初始值为0
对于温度。
thermalIC (thermalmodel 0);
生成一个网格。
generateMesh (thermalmodel);
求解三种不同热源值的模型并采集快照。
Tlist = 0:10:600;snapShotIDs = [1:10 59 60 61];Tmatrix = [];heatVariation = [10000 15000 20000];为q =热变量internalHeatSource(热模型,q);结果= solve(thermalmodel,tlist);Tmatrix = [Tmatrix,results.Temperature(:,snapShotIDs)];结束
将热模型分析类型切换为模态。
thermalmodel。一个nalysisType =“模态”;
计算POD模式。
RModal = solve(热模型,“快照”Tmatrix)
RModal = ModalThermalResults with properties: DecayRates: [6x1 double] ModeShapes: [1541x6 double] SnapshotsAverage: [1541x1 double] ModeType: "PODModes" Mesh: [1x1 FEMesh]
版本历史
R2022a中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。