internalHeatSource
指定内部热源的热模型
语法
描述
internalHeatSource (
指定一个内部热源的热模型。这个语法宣称整个几何是一个热源。thermalmodel
,heatSourceValue
)
请注意
使用internalHeatSource
用于指定内部热发电机,用于指定热源,属于几何模型。指定一个热量流入从外部来源,使用thermalBC
函数与HeatFlux
参数。
internalHeatSource (
指定类型的几何区域thermalmodel
,heatSourceValue
,RegionType
,RegionID
)RegionType
与身份号码RegionID
作为热源。总是指定heatSourceValue
首先,然后指定RegionType
和RegionID
。
internalHeatSource (___“标签”,
添加一个标签内部热源的使用labeltext
)linearizeInput
函数。这个函数允许您通过内部热源线性化
使用函数,提取稀疏线性模型控制系统工具箱™。
返回热源的对象。heatSource
= internalHeatSource (___)
例子
指定内部热量生成整个几何
创建一个瞬态热模型。
thermalmodel = createpde (“热”,“瞬态”);
导入几何。
通用= importGeometry (thermalmodel,“SquareBeam.stl”);
导热系数设置为0.2
,质量密度2700年e-9
和比热920年
。
thermalProperties (thermalmodel“ThermalConductivity”,0.2,…“MassDensity”2700 e-9,…“SpecificHeat”,920)
ans = ThermalMaterialAssignment属性:RegionType:“细胞”RegionID: 1 ThermalConductivity: 0.2000 MassDensity: 2.7000 e-06 SpecificHeat: 920
指定整个几何产生热量的速度2的军医
。
internalHeatSource (thermalmodel、2)的军医
ans = HeatSourceAssignment属性:RegionType:“细胞”RegionID: 1 HeatSource: 2.0000 e-04标签:[]
指定一个作为热源的二维几何
创建一个稳态热模型。
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、科幻、ns);geometryFromEdges (thermalModel dl);
导热系数设置为50,600年2500年质量密度和比热。
thermalProperties (thermalModel“ThermalConductivity”,50岁,…“MassDensity”,2500,…“SpecificHeat”,600);
指定1产生的热量在25。
internalHeatSource (thermalModel, 25岁,“面子”,1)
ans = HeatSourceAssignment属性:RegionType:“脸”RegionID: 1 HeatSource: 25标签:[]
指定非常数的内部热源
使用一个函数处理指定一个内部热源,取决于坐标。
创建一个热模型进行瞬态分析,包括几何。几何图形是圆形截面的杆。二维矩形带的模型y维度延伸对称轴的外表面,和的x维度延伸杆的实际长度。
thermalmodel = createpde (“热”,“瞬态”);g = decsg ([3 4 -1.5 1.5 1.5 -1.5 0 0。2。2]”);geometryFromEdges (thermalmodel g);
产生的热量在杆由于放射性衰变。因此,整个几何是一个内部非线性热源,可以表示为的函数y例如,协调 。
q = 2000 * location.y @(位置、状态);
指定的内部热源瞬态模型。
internalHeatSource (thermalmodel q)
ans = HeatSourceAssignment属性:RegionType:“脸”RegionID: 1 HeatSource: @(位置、状态)2000 *位置。y标签:[]
指定时间内热源
使用一个函数处理指定一个内部热源,取决于时间。
创建一个热模型进行瞬态分析,包括几何。几何是一个矩形地带。
thermalmodel = createpde (“热”,“瞬态”);g = decsg ([3 4 -1.5 1.5 1.5 -1.5 0 0。2。2]”);geometryFromEdges (thermalmodel g);
指定杆的热性能。
thermalProperties (thermalmodel“ThermalConductivity”现年40岁的…“MassDensity”,7800,…“SpecificHeat”,500);
指定边界条件和初始温度。
thermalBC (thermalmodel“边缘”2,“温度”,100);thermalBC (thermalmodel“边缘”3,…“ConvectionCoefficient”,50岁,…“AmbientTemperature”,100);thermalIC (thermalmodel 0);
指定整个几何生成热率20000t在第一次500秒,然后热源关闭。时间热源函数。
internalHeatSource (thermalmodel @heatSource);
生成网格,解决了模型使用解决方案时间从0到50000秒,并画出结果。
generateMesh (thermalmodel);tfinal = 50000;tlist = 0:100: tfinal;结果=解决(thermalmodel tlist);T = result.Temperature;图次要情节(2,1,1)pdeplot (thermalmodel,“XYData”T (: 6),“轮廓”,“上”)轴平等的标题(sprintf (“温度% g s”,tlist(6)))次要情节(2,1,2)pdeplot (thermalmodel,“XYData”T(:,结束),“轮廓”,“上”)轴平等的标题(sprintf (“温度% g s”,tfinal))
总是确保你的函数返回一个矩阵南
正确的尺寸时state.time
是南
。解算器正确认识到通过一个时间问题南
状态值和寻找回来南
值。如果没有这个条件,解算器可能会失败或返回不正确的结果。
internalHeatSource (thermalmodel @heatSourceInvalid);结果=解决(thermalmodel tlist);T = result.Temperature;图次要情节(2,1,1)pdeplot (thermalmodel,“XYData”T (: 6),“轮廓”,“上”)轴平等的标题(sprintf (“温度% g s”,tlist(6)))次要情节(2,1,2)pdeplot (thermalmodel,“XYData”T(:,结束),“轮廓”,“上”)轴平等的标题(sprintf (“温度% g s”,tfinal))
时间热源函数
函数Q = heatSource(位置、状态)Q = 0(1,元素个数(location.x));如果(isnan (state.time))%返回NaN当时间=南告诉%的解决热源是时间的函数。问(:1)=南;返回结束如果state.time< 500 Q(1,:) = 20000*state.time;结束结束函数Q = heatSourceInvalid(位置、状态)%不检查NaNQ = 0(1,元素个数(location.x));如果state.time< 500 Q(1,:) = 20000*state.time;结束结束
输入参数
thermalmodel
- - - - - -热模型
ThermalModel
对象
热模型,指定为一个ThermalModel
对象。包含几何模型、网格、热性能的材料,内部热源,边界条件和初始条件。
例子:thermalmodel = createpde(“热”、“稳态”)
RegionType
- - - - - -几何区域类型
“面子”
|“细胞”
几何区域类型,指定为“面子”
二维模型或“细胞”
3 d模型。
例子:internalHeatSource (thermalmodel, 25岁的“细胞”,1)
数据类型:字符
|字符串
RegionID
- - - - - -几何区域ID
向量的正整数
heatSourceValue
- - - - - -热源的价值
数量|函数处理
热源的值,指定为一个数字或一个函数处理。使用一个函数处理指定内部热源,取决于空间,时间,或温度。有关详细信息,请参见更多关于。
例子:internalHeatSource (thermalmodel, 25)
数据类型:双
|function_handle
labeltext
- - - - - -标签内部热源
特征向量|字符串
标签内部热源,指定为一个特征向量或一个字符串。
数据类型:字符
|字符串
输出参数
heatSource
——处理热源
HeatSourceAssignment
对象
热源处理,作为一个返回HeatSourceAssignment
对象。看到HeatSourceAssignment属性。
heatSourceValue
将热源的值与几何区域。
更多关于
指定非常数的热模型的参数
使用一个函数处理指定这些热参数取决于空间时,温度,和时间:
导热系数的材料
质量密度的材料
比热容的材料
内部热源
温度对边界
通过边界热流
对流系数的边界
辐射发射率系数的边界
初始温度(只能依赖于空间)
例如,使用功能处理指定导热,内部热源,对流系数和初始温度模型。
thermalProperties(模型,“ThermalConductivity”,…@myfunConductivity) internalHeatSource(模型,“面子”2、@myfunHeatSource) thermalBC(模型、“边缘”(3、4),…“ConvectionCoefficient”@myfunBC,…“AmbientTemperature”27)thermalIC(模型、@myfunIC)
对所有参数,除了初始温度,表单的功能必须:
函数thermalVal = myfun(位置、状态)
初始温度的函数必须的形式:
函数thermalVal = myfun(位置)
解算器计算和填充数据位置
和状态
结构数组并将此数据传递到你的函数。您可以定义函数,使其输出取决于这些数据。您可以使用任何名称代替位置
和状态
,但函数必须有两个参数(或一个参数如果函数指定了初始温度)。
位置
——一个包含这些字段的结构:location.x
- - -x坐标的点或点location.y
- - -y坐标的点或点location.z
——3 d或一个轴对称几何z坐标的点或点location.r
——对于一个轴对称几何r坐标的点或点
此外,边界条件,求解传递这些数据
位置
结构:location.nx
- - - - - -x分法向量的评估点或点location.ny
- - - - - -y分法向量的评估点或点location.nz
——3 d或一个轴对称几何,z分法向量的评估点或点location.nr
——对于一个轴对称几何,r分法向量的评估点或点
状态
——一个包含这些字段的结构瞬态或非线性问题:state.u
——温度的对应点位置的结构state.ux
-估计的x分的温度梯度结构的对应点位置state.uy
-估计的y分的温度梯度结构的对应点位置state.uz
——3 d或一个轴对称几何、估计的z分的温度梯度结构的对应点位置state.ur
——为轴对称几何的估计r分的温度梯度结构的对应点位置state.time
——在评估点
热材料特性(热导率、质量密度和比热)和内部热源的得到这些数据解算器:
location.x
,location.y
,location.z
,location.r
子域ID
state.u
,state.ux
,state.uy
,state.uz
,state.r
,state.time
边界条件(温度边界、热通量对流系数和辐射发射率系数)获得这些数据的解算器:
location.x
,location.y
,location.z
,location.r
location.nx
,location.ny
,location.nz
,location.nr
state.u
,state.time
解算器初始温度得到以下数据:
location.x
,location.y
,location.z
,location.r
子域ID
所有热参数,除了热导率,你的函数必须返回一个行向量thermalVal
列的数量等于评估点的数量,例如,M =长度(location.y)
。
热导率,你的函数必须返回一个矩阵thermalVal
的行数等于1,Ndim
,Ndim * (Ndim + 1) / 2
,或Ndim * Ndim
,在那里Ndim
2为二维问题和3三维问题。列数必须等于评估点的数量,例如,M =长度(location.y)
。矩阵的维度详细信息,请参阅specifyCoefficients c系数。
如果属性依赖于时间和温度,确保你的函数返回一个矩阵南
正确的尺寸时state.u
或state.time
是南
。解决检查是否一个问题是与时间有关的通过南
状态值和寻找回来南
值。
附加参数在函数非常数的热参数
在你的函数中使用附加参数,用你的函数(这需要附加参数)与一个匿名函数,只需要位置
和状态
参数。例如:
thermalVal =…@(位置、状态)myfunWithAdditionalArgs(位置、状态、__arg1最长…)thermalBC(模型,“边缘”3,“温度”thermalVal) thermalVal = @(位置)myfunWithAdditionalArgs(位置、__arg1最长…)thermalVal thermalIC(模型)
版本历史
介绍了R2017aR2021b:使用标签来提取稀疏线性模型控制系统工具箱
现在,您可以添加一个标签内部热源的使用linearizeInput
函数。这个函数允许您通过内部热源线性化
函数,提取稀疏线性模型与控制系统工具箱使用。
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。万博1manbetx
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。