This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

findHeatSource

Find heat source assigned to a geometric region

Syntax

hsa = findHeatSource(thermalmodel.HeatSources,RegionType,RegionID)

Description

example

hsa = findHeatSource(thermalmodel.HeatSources,RegionType,RegionID) returns the heat source value hsa assigned to the specified region.

Examples

collapse all

Create a thermal model that has three faces.

thermalmodel = createpde('thermal');
geometryFromEdges(thermalmodel,@lshapeg);
pdegplot(thermalmodel,'FaceLabels','on')
ylim([-1.1 1.1])
axis equal

Specify that face 1 generates heat at 10 W/m^3, face 2 generates heat at 20 W/m^3, and face 3 generates heat at 30 W/m^3.

internalHeatSource(thermalmodel,10,'Face',1);
internalHeatSource(thermalmodel,20,'Face',2);
internalHeatSource(thermalmodel,30,'Face',3);

Check the heat source specification for face 1.

hsaFace1 = findHeatSource(thermalmodel.HeatSources,'Face',1)
hsaFace1 = 
  HeatSourceAssignment with properties:

    RegionType: 'face'
      RegionID: 1
    HeatSource: 10

Check the heat source specification for faces 2 and 3.

hsa = findHeatSource(thermalmodel.HeatSources,'Face',[2 3]);
hsaFace2 = hsa(1)
hsaFace2 = 
  HeatSourceAssignment with properties:

    RegionType: 'face'
      RegionID: 2
    HeatSource: 20

hsaFace3 = hsa(2)
hsaFace3 = 
  HeatSourceAssignment with properties:

    RegionType: 'face'
      RegionID: 3
    HeatSource: 30

Create a geometry that consists of three stacked cylinders and include the geometry in a thermal model.

gm = multicylinder(10,[1 2 3],'ZOffset',[0 1 3])
gm = 
  DiscreteGeometry with properties:

       NumCells: 3
       NumFaces: 7
       NumEdges: 4
    NumVertices: 4

thermalmodel = createpde('thermal');
thermalmodel.Geometry = gm;
pdegplot(thermalmodel,'CellLabels','on','FaceAlpha',0.5)

Specify that the cylinder C1 generates heat at 10W/m3, the cylinder C2 generates heat at 20W/m3, and the cylinder C3 generates heat at 30W/m3.

internalHeatSource(thermalmodel,10,'Cell',1);
internalHeatSource(thermalmodel,20,'Cell',2);
internalHeatSource(thermalmodel,30,'Cell',3);

Check the heat source specification for cell 1.

hsaCell1 = findHeatSource(thermalmodel.HeatSources,'Cell',1)
hsaCell1 = 
  HeatSourceAssignment with properties:

    RegionType: 'cell'
      RegionID: 1
    HeatSource: 10

Check the heat source specification for cells 2 and 3.

hsa = findHeatSource(thermalmodel.HeatSources,'Cell',[2:3]);
hsaCell2 = hsa(1)
hsaCell2 = 
  HeatSourceAssignment with properties:

    RegionType: 'cell'
      RegionID: 2
    HeatSource: 20

hsaCell3 = hsa(2)
hsaCell3 = 
  HeatSourceAssignment with properties:

    RegionType: 'cell'
      RegionID: 3
    HeatSource: 30

Input Arguments

collapse all

Internal heat source of the model, specified as the HeatSources property of a ThermalModel object.

Geometric region type, specified as 'Face' for a 2-D model or 'Cell' for a 3-D model.

Data Types: char | string

Geometric region ID, specified as a vector of positive integers. Find the region IDs using the pdegplot function, as shown in Create Geometry and Remove Face Boundaries or STL File Import.

Data Types: double

Output Arguments

collapse all

Heat source assignment, returned as a HeatSourceAssignment Properties object.

Introduced in R2017a