findHeatSource

Find heat source assigned to a geometric region

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 by using the pdegplot function.

Data Types: double

Output Arguments

collapse all

Heat source assignment, returned as a HeatSourceAssignment Properties object.

Introduced in R2017a