Поиск начальных температурных условий, назначенных геометрической области
возвращает начальное температурное условие, назначенное указанной области.tica = findThermalIC(thermalmodel.InitialConditions,RegionType,RegionID)
Создайте нестационарную тепловую модель с тремя гранями.
thermalmodel = createpde('thermal','transient'); geometryFromEdges(thermalmodel,@lshapeg); pdegplot(thermalmodel,'FaceLabels','on') ylim([-1.1 1.1]) axis equal

Задайте начальные температуры для каждой грани.
thermalIC(thermalmodel,10,'Face',1); thermalIC(thermalmodel,20,'Face',2); thermalIC(thermalmodel,30,'Face',3);
Проверьте исходные условия для грани 1.
ticaFace1 = findThermalIC(thermalmodel.InitialConditions,'Face',1)ticaFace1 =
GeometricThermalICs with properties:
RegionType: 'face'
RegionID: 1
InitialTemperature: 10
Проверьте исходные температурные характеристики для граней 2 и 3.
tica = findThermalIC(thermalmodel.InitialConditions,'Face',[2 3]);
ticaFace2 = tica(1)ticaFace2 =
GeometricThermalICs with properties:
RegionType: 'face'
RegionID: 2
InitialTemperature: 20
ticaFace3 = tica(2)
ticaFace3 =
GeometricThermalICs with properties:
RegionType: 'face'
RegionID: 3
InitialTemperature: 30
Создайте геометрию, состоящую из трех вложенных цилиндров, и включите геометрию в нестационарную тепловую модель.
gm = multicylinder([5 10 15],2)
gm =
DiscreteGeometry with properties:
NumCells: 3
NumFaces: 9
NumEdges: 6
NumVertices: 6
Vertices: [6x3 double]
thermalmodel = createpde('thermal','transient'); thermalmodel.Geometry = gm; pdegplot(thermalmodel,'CellLabels','on','FaceAlpha',0.5)

Установите начальные температуры для каждой ячейки.
thermalIC(thermalmodel,0,'Cell',1); thermalIC(thermalmodel,100,'Cell',2); thermalIC(thermalmodel,0,'Cell',3);
Проверьте исходные условия для ячейки 1.
ticaCell1 = findThermalIC(thermalmodel.InitialConditions,'Cell',1)ticaCell1 =
GeometricThermalICs with properties:
RegionType: 'cell'
RegionID: 1
InitialTemperature: 0
Проверьте исходные условия для ячеек 2 и 3.
tica = findThermalIC(thermalmodel.InitialConditions,'Cell',[2:3]);
ticaCell2 = tica(1)ticaCell2 =
GeometricThermalICs with properties:
RegionType: 'cell'
RegionID: 2
InitialTemperature: 100
ticaCell3 = tica(2)
ticaCell3 =
GeometricThermalICs with properties:
RegionType: 'cell'
RegionID: 3
InitialTemperature: 0
Создайте тепловую модель и включите квадратную геометрию.
thermalmodel = createpde('thermal','transient'); gm = @squareg; geometryFromEdges(thermalmodel,gm); pdegplot(thermalmodel,'FaceLabels','on') ylim([-1.1 1.1]) axis equal

Задайте свойства материала, источник тепла, задайте исходные и граничные условия.
thermalProperties(thermalmodel,'ThermalConductivity',500,... 'MassDensity',200,... 'SpecificHeat',100); internalHeatSource(thermalmodel,2); thermalBC(thermalmodel,'Edge',[1 3],'Temperature',100); thermalIC(thermalmodel,0);
Создайте сетку и решите проблему.
generateMesh(thermalmodel); tlist = 0:0.5:10; result1 = solve(thermalmodel,tlist)
result1 =
TransientThermalResults with properties:
Temperature: [1541x21 double]
SolutionTimes: [1x21 double]
XGradients: [1541x21 double]
YGradients: [1541x21 double]
ZGradients: []
Mesh: [1x1 FEMesh]
Проверьте текущие активные исходные температурные характеристики.
tica = findThermalIC(thermalmodel.InitialConditions,'Face',1)tica =
GeometricThermalICs with properties:
RegionType: 'face'
RegionID: 1
InitialTemperature: 0
Теперь возобновите анализ и решите проблему в течение времени от 10 до 15 секунд. В качестве исходного условия используйте ранее полученный раствор в течение 10 секунд. Поскольку 10 секунд - последний элемент в tlist, не требуется указывать индекс времени решения. По умолчанию thermalIC использует последний индекс решения.
ic = thermalIC(thermalmodel,result1);
Решить проблему
tlist = 10:0.5:15; result2 = solve(thermalmodel,tlist);
Проверьте текущие активные исходные температурные характеристики.
tica = findThermalIC(thermalmodel.InitialConditions,'Face',1)tica =
NodalThermalICs with properties:
InitialTemperature: [1541x1 double]
pdeplot(thermalmodel,'XYData',tica.InitialTemperature)
thermalmodel.InitialConditions - Исходные условия тепловой моделиInitialConditions свойство тепловой моделиИсходные условия тепловой модели, указанные как InitialConditions свойство ThermalModel объект.
RegionType - Тип геометрической области'Edge' | 'Face' | 'Vertex' | 'Cell' для модели 3-DТип геометрической области, указанный как 'Edge', 'Face', или 'Vertex' для модели 2-D или модели 3-D, или 'Cell' для модели 3-D.
Типы данных: char | string
RegionID - Идентификатор геометрической областиИдентификатор геометрической области, заданный как вектор положительных целых чисел. Поиск идентификаторов регионов с помощью pdegplot функции с помощью 'FaceLabels' (3-D) или 'EdgeLabels' (2-й) набор значений к'on'.
Типы данных: double
tica - Температурное исходное состояние для конкретного регионаGeometricThermalICs объект | NodalThermalICs объектТепловое начальное условие для конкретного региона, возвращенного как GeometricThermalICs Свойства или объект NodalThermalICs Properties.
Свойства GeometricThermalIc | Свойства NodalThermalICs | thermalIC
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.