StructuralModel
(To be removed) Structural model object
StructuralModel will be removed. Use
                    femodel
                instead. (since R2023a) For more information on updating your code, see Version History.
Description
A StructuralModel object contains
            information about a structural analysis problem: the geometry, material properties,
            damping parameters, body loads, boundary loads, boundary constraints, superelement
            interfaces, initial displacement and velocity, and mesh.
Creation
To create a StructuralModel object, use createpde and specify 'structural' as its first
            argument.
Properties
Type of structural analysis, specified as one of these values.
Static analysis:
'static-solid'for static structural analysis of a solid (3-D) problem'static-planestress'for static structural analysis of a plane-stress problem'static-planestrain'for static structural analysis of a plane-strain problem'static-axisymmetric'for static structural analysis of an axisymmetric (2-D) problem
Transient analysis:
'transient-solid'for transient structural analysis of a solid (3-D) problem'transient-planestress'for transient structural analysis of a plane-stress problem'transient-planestrain'for transient structural analysis of a plane-strain problem'transient-axisymmetric'for transient structural analysis of an axisymmetric (2-D) problem
Modal analysis:
'modal-solid'for modal analysis of a solid (3-D) problem'modal-planestress'for modal analysis of a plane-stress problem'modal-planestrain'for modal analysis of a plane-strain problem'modal-axisymmetric'for modal analysis of an axisymmetric (2-D) problem
Frequency response analysis:
'frequency-solid'for frequency response analysis of a solid (3-D) problem'frequency-planestress'for frequency response analysis of a plane-stress problem'frequency-planestrain'for frequency response analysis of a plane-strain problem'frequency-axisymmetric'for frequency response analysis of an axisymmetric (2-D) problem
To change a structural analysis type, assign a new type to
                            model.AnalysisType. Ensure that all other properties
                        of the model are consistent with the new analysis type. Note that you cannot
                        change the spatial dimensionality. For example, you can change the analysis
                        type from 'static-solid' to
                            'modal-solid', but cannot change it to
                            'static-planestress'.
Example: model =
                        createpde('structural','static-solid')
Data Types: char
Geometry description, specified as AnalyticGeometry for a 2-D geometry
                        or DiscreteGeometry for a 2-D or 3-D
                        geometry.
Material properties within the domain, specified as a
                            StructuralMaterialAssignment object containing the
                        material property assignments. For details, see StructuralMaterialAssignment Properties.
To create the material properties assignments for your structural analysis
                        model, use the structuralProperties function.
Loads acting on the domain or subdomain, specified as a
                            BodyLoadAssignment object containing body load
                        assignments. For details, see BodyLoadAssignment Properties.
To create body load assignments for your structural analysis model, use
                        the structuralBodyLoad function.
Structural loads and boundary conditions applied to the geometry,
                        specified as a StructuralBC object containing the
                        boundary condition assignments. For details, see StructuralBC Properties.
To specify boundary conditions for your model, use the structuralBC function. To specify boundary loads, use
                            structuralBoundaryLoad.
Damping model for transient or frequency response analysis, specified as a
                            StructuralDampingAssignment object containing damping
                        assignments. For details, see StructuralDampingAssignment Properties.
To set damping parameters for your structural model, use the structuralDamping function.
Reference temperature for a thermal load, specified as a number. The reference temperature corresponds to state of zero thermal stress of the model. The default value 0 implies that the thermal load is specified in terms of the temperature change and its derivatives.
To specify the reference temperature for a thermal load in your static
                        structural model, assign the property value directly, for example,
                            structuralmodel.ReferenceTemperature = 10. To specify
                        the thermal load itself, use the structuralBodyLoad function.
Data Types: double
Initial displacement and velocity, specified as a
                            GeometricStructuralICs or
                            NodalStructuralICs object. For details, see GeometricStructuralICs Properties and NodalStructuralICs Properties.
To set initial conditions for your transient structural model, use the
                            structuralIC function.
Superelement interfaces for the component mode synthesis, specified as a
                            StructuralSEIAssignment object containing
                        superelement interface assignments. For details, see StructuralSEIAssignment Properties.
To specify superelement interfaces for your frequency response structural
                        model, use the structuralSEInterface function.
Mesh for solution, specified as a FEMesh object.
To create the mesh, use the generateMesh function.
Algorithm options for the PDE solvers, specified as a PDESolverOptions Properties object. The
                        properties of PDESolverOptions include absolute and
                        relative tolerances for internal ODE solvers, maximum solver iterations, and
                        so on.
Object Functions
geometryFromEdges | Create 2-D geometry from decomposed geometry matrix | 
geometryFromMesh | Create 2-D or 3-D geometry from mesh | 
importGeometry | Import geometry from STL or STEP file | 
structuralBC | (To be removed) Specify boundary conditions for structural model | 
structuralSEInterface | (To be removed) Specify structural superelement interface for component mode synthesis | 
structuralBodyLoad | (To be removed) Specify body load for structural model | 
structuralBoundaryLoad | (To be removed) Specify boundary loads for structural model | 
structuralIC | (To be removed) Set initial conditions for a transient structural model | 
structuralProperties | (To be removed) Assign structural properties of material for structural model | 
solve | Solve structural analysis, heat transfer, or electromagnetic analysis problem | 
reduce | Reduce structural or thermal model | 
linearize | (To be removed) Linearize structural or thermal model | 
linearizeInput | (To be removed) Specify inputs to linearized model | 
linearizeOutput | (To be removed) Specify outputs of linearized model | 
Examples
Create a static structural model for solving a solid (3-D) problem.
structuralModel = createpde("structural","static-solid")
structuralModel = 
  StructuralModel with properties:
              AnalysisType: "static-solid"
                  Geometry: []
        MaterialProperties: []
                 BodyLoads: []
        BoundaryConditions: []
      ReferenceTemperature: []
    SuperelementInterfaces: []
                      Mesh: []
             SolverOptions: [1×1 pde.PDESolverOptions]
Create and plot the geometry.
gm = multicuboid(0.5,0.1,0.1);
structuralModel.Geometry = gm;
pdegplot(structuralModel,"FaceAlpha",0.5)
Specify Young's modulus, Poisson's ratio, and the mass density.
structuralProperties(structuralModel,"Cell",1,"YoungsModulus",210E3, ... "PoissonsRatio",0.3, ... "MassDensity",2.7E-6)
ans = 
  StructuralMaterialAssignment with properties:
           RegionType: 'Cell'
             RegionID: 1
        YoungsModulus: 210000
        PoissonsRatio: 0.3000
          MassDensity: 2.7000e-06
                  CTE: []
    HystereticDamping: []
Specify the gravity load on the rod.
structuralBodyLoad(structuralModel, ... "GravitationalAcceleration",[0;0;-9.8])
ans = 
  BodyLoadAssignment with properties:
                   RegionType: 'Cell'
                     RegionID: 1
    GravitationalAcceleration: [0 0 -9.8000]
              AngularVelocity: []
                  Temperature: []
                     TimeStep: []
                        Label: []
Specify that face 6 is a fixed boundary.
structuralBC(structuralModel,"Face",6,"Constraint","fixed")
ans = 
  StructuralBC with properties:
                RegionType: 'Face'
                  RegionID: 6
                Vectorized: 'off'
   Boundary Constraints and Enforced Displacements
              Displacement: []
             XDisplacement: []
             YDisplacement: []
             ZDisplacement: []
                Constraint: "fixed"
                    Radius: []
                 Reference: []
                     Label: []
   Boundary Loads
                     Force: []
           SurfaceTraction: []
                  Pressure: []
    TranslationalStiffness: []
                     Label: []
Specify the surface traction for face 5.
structuralBoundaryLoad(structuralModel, ... "Face",5, ... "SurfaceTraction",[0;0;100])
ans = 
  StructuralBC with properties:
                RegionType: 'Face'
                  RegionID: 5
                Vectorized: 'off'
   Boundary Constraints and Enforced Displacements
              Displacement: []
             XDisplacement: []
             YDisplacement: []
             ZDisplacement: []
                Constraint: []
                    Radius: []
                 Reference: []
                     Label: []
   Boundary Loads
                     Force: []
           SurfaceTraction: [3×1 double]
                  Pressure: []
    TranslationalStiffness: []
                     Label: []
Generate a mesh.
generateMesh(structuralModel)
ans = 
  FEMesh with properties:
             Nodes: [3×8013 double]
          Elements: [10×5010 double]
    MaxElementSize: 0.0208
    MinElementSize: 0.0104
     MeshGradation: 1.5000
    GeometricOrder: 'quadratic'
View the properties of structuralModel.
structuralModel
structuralModel = 
  StructuralModel with properties:
              AnalysisType: "static-solid"
                  Geometry: [1×1 DiscreteGeometry]
        MaterialProperties: [1×1 StructuralMaterialAssignmentRecords]
                 BodyLoads: [1×1 BodyLoadAssignmentRecords]
        BoundaryConditions: [1×1 StructuralBCRecords]
      ReferenceTemperature: []
    SuperelementInterfaces: []
                      Mesh: [1×1 FEMesh]
             SolverOptions: [1×1 pde.PDESolverOptions]
Version History
Introduced in R2017bStructuralModel will be removed. Use femodel
                instead.
For example, you can create a model for a static structural axisymmetric analysis as follows.
model = femodel(AnalysisType="structuralStatic"); model.PlanarType = "axisymmetric";
The unified finite element model workflow defines the type of a problem and all of
                its parameters as the properties of an femodel object. This
                object enables you to specify physical parameters for structural, thermal, and
                electromagnetic types of analyses. The solver in the unified workflow uses only the
                parameters (properties) appropriate for the current analysis type while ignoring all
                other properties. If you switch the analysis type by setting the
                    AnalysisType property of the model, the solver uses the
                appropriate set of properties corresponding to the new analysis type.
For more help migrating your existing code that uses the
                    StructuralModel object and its properties to the unified
                finite element workflow, see Migration from Domain-Specific to Unified Workflow.
You can now specify hysteretic damping of a material for direct and modal frequency response models.
You can now specify AnalysisType for axisymmetric models.
                Axisymmetric analysis simplifies 3-D structural problems to 2-D using their symmetry
                around the axis of rotation.
The toolbox now supports the frequency response analysis for structural models.
You can now specify AnalysisType for frequency response
                analysis, including 'frequency-solid',
                    'frequency-planestress',
                    'frequency-planestrain', and
                    'frequency-axisymmetric'.
The programmatic workflow for static structural analysis problems now enables you
                to account for thermal loading. When setting up a static structural problem, you can
                specify a reference temperature as a property of StructuralModel.
                This temperature corresponds to the state of the model at which both thermal stress
                and strain are zeros.
The programmatic workflow for modal analysis problems now enables you to find
                natural frequencies and mode shapes of a structure. When solving a modal analysis
                model, the solver requires a frequency range parameter and returns the modal
                solution in that frequency range. The AnalysisType values for
                modal analysis are 'modal-solid',
                    'modal-planestress', 'modal-planestrain',
                and 'modal-axisymmetric'.
The programmatic workflow for structural analysis problems now enables you to set
                up, solve, and analyze dynamic linear elasticity problems. The
                    AnalysisType values for transient analysis are
                    'transient-solid',
                'transient-planestress',
                    'transient-planestrain', and
                    'transient-axisymmetric'.
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)