geometryFromEdges
Create 2-D geometry from decomposed geometry matrix
Description
Examples
Rectangle from Decomposed Solid Geometry
Create a decomposed solid geometry model representing a rectangle and include it in a PDE model.
Create a default scalar PDE model.
model = createpde;
Define a geometry representing a rectangle.
R1 = [3,4,-1,1,1,-1,0.5,0.5,-0.75,-0.75]';
Decompose the geometry into minimal regions.
g = decsg(R1);
Create the geometry from the decomposed geometry matrix.
geometryFromEdges(model,g);
Plot the geometry.
pdegplot(model,EdgeLabels="on") axis equal xlim([-1.1,1.1]) ylim([-0.9,0.6])
Rectangle with Circular Hole from Decomposed Solid Geometry
Create a decomposed solid geometry model and include it in a PDE model.
Create a default scalar PDE model.
model = createpde;
Define a circle in a rectangle, place these in one matrix, and create a set formula that subtracts the circle from the rectangle.
R1 = [3,4,-1,1,1,-1,0.5,0.5,-0.75,-0.75]';
C1 = [1,0.5,-0.25,0.25]';
C1 = [C1;zeros(length(R1) - length(C1),1)];
gm = [R1,C1];
sf = 'R1-C1';
Create the geometry.
ns = char('R1','C1'); ns = ns'; g = decsg(gm,sf,ns);
Include the geometry in the model and plot it.
geometryFromEdges(model,g); pdegplot(model,EdgeLabels="on") axis equal xlim([-1.1,1.1])
Predefined Geometry Functions
The toolbox provides the several geometry functions. Specify them by using the following function handles.
model = createpde; g = geometryFromEdges(model,@cardg); pdegplot(model)
clear model
model = createpde;
g = geometryFromEdges(model,@circleg);
pdegplot(model)
clear model
model = createpde;
g = geometryFromEdges(model,@cirsg);
pdegplot(model)
clear model
model = createpde;
g = geometryFromEdges(model,@crackg);
pdegplot(model)
clear model
model = createpde;
g = geometryFromEdges(model,@lshapeg);
pdegplot(model)
clear model
model = createpde;
g = geometryFromEdges(model,@scatterg);
pdegplot(model)
clear model
model = createpde;
g = geometryFromEdges(model,@squareg);
pdegplot(model)
Input Arguments
model
— Model container
PDEModel
object | ThermalModel
object | StructuralModel
object | ElectromagneticModel
object
Model container, specified as a PDEModel
object,
ThermalModel
object, StructuralModel
object,
or ElectromagneticModel
object.
Example: model = createpde(3)
Example: thermalmodel =
createpde(thermal="steadystate")
Example: structuralmodel =
createpde(structural="static-solid")
Example: emagmodel =
createpde(electromagnetic="electrostatic")
g
— Geometry description
decomposed geometry matrix | name of a geometry function | handle to a geometry function
Geometry description, specified as a decomposed geometry matrix, as the
name of a geometry function, or as a handle to a geometry function. For
details about a decomposed geometry matrix, see decsg
.
A geometry function must return the same result for the same input arguments in every function call. Thus, it must not contain functions and expressions designed to return a variety of results, such as random number generators.
Example: geometryFromEdges(model,@circleg)
Data Types: double
| char
| function_handle
Output Arguments
pg
— Geometry object
AnalyticGeometry
object
Geometry object, returned as an AnalyticGeometry
object. This
object is stored in model.Geometry
.
Version History
Introduced in R2015a
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)