Wednesday, 1 December 2010

Substructuring


Introduction

This tutorial was completed using ANSYS 7.0 The purpose of the tutorial is to show the how to use substructuring in ANSYS. Substructuring is a procedure that condenses a group of finite elements into onesuper-element. This reduces the required computation time and also allows the solution of very large problems.
A simple example will be demonstrated to explain the steps required, however, please note that this model is not one which requires the use of substructuring. The example involves a block of wood (E =10 GPa v =0.29) connected to a block of silicone (E = 2.5 MPa, v = 0.41) which is rigidly attached to the ground. A force will be applied to the structure as shown in the following figure. For this example, substructuring will be used for the wood block.
The use of substructuring in ANSYS is a three stage process:
  1. Generation Pass
    Generate the super-element by condensing several elements together. Select the degrees of freedom to save (master DOFs) and to discard (slave DOFs). Apply loads to the super-element
  2. Use Pass
    Create the full model including the super-element created in the generation pass. Apply remaining loads to the model. The solution will consist of the reduced solution tor the super-element and the complete solution for the non-superelements.
  3. Expansion Pass
    Expand the reduced solution to obtain the solution at all DOFs for the super-element.
Note that a this method is a bottom-up substructuring (each super-element is created separately and then assembled in the Use Pass). Top-down substructuring is also possible in ANSYS (the entire model is built, then super-element are created by selecting the appropriate elements). This method is suitable for smaller models and has the advantage that the results for multiple super-elements can be assembled in postprocessing.

Expansion Pass: Creating the Super-element

Preprocessing: Defining the Problem


  1. Give Generation Pass a JobnameUtility Menu > File > Change Jobname ...Enter 'GEN' for the jobname
  2. Open preprocessor menuANSYS Main Menu > Preprocessor
    /PREP7
  3. Create geometry of the super-elementPreprocessor > Modeling > Create > Areas > Rectangle > By 2 Corners
    BLC4,XCORNER,YCORNER,WIDTH,HEIGHT
    Create a rectangle with the dimensions (all units in mm):
      XCORNER (WP X) = 0
      YCORNER (WP Y) = 40
      Width = 100
      Height = 100
  4. Define the Type of Element
  5. Preprocessor > Element Type > Add/Edit/Delete...For this problem we will use PLANE42 (2D structural solid). This element has 4 nodes, each with 2 degrees of freedom (translation along the X and Y axes).
  6. Define Element Material PropertiesPreprocessor > Material Props > Material Models > Structural > Linear > Elastic > IsotropicIn the window that appears, enter the following geometric properties for wood:
    1. Young's modulus EX: 10000 (MPa)
    2. Poisson's Ratio PRXY: 0.29
  7. Define Mesh SizePreprocessor > Meshing > Size Cntrls > Manual Size > Areas > All Areas ...For this example we will use an element edge length of 10mm.
  8. Mesh the blockPreprocessor > Meshing > Mesh > Areas > Free > click 'Pick All'
    AMESH,1

Solution Phase: Assigning Loads and Solving


  1. Define Analysis Type
  2. Solution > Analysis Type > New Analysis > Substructuring
    ANTYPE,SUBST

  3. Select Substructuring Analysis Options
  4. It is necessary to define the substructuring analysis options

    • Select Solution > Analysis Type > Analysis Options
    • The following window will appear. Ensure that the options are filled in as shown.

      • Sename (the name of the super-element matrix file) will default to the jobname.
      • In this case, the stiffness matrix is to be generated.
      • With the option SEPR, the stiffness matrix or load matrix can be printed to the output window if desired.

  5. Select Master Degrees of Freedom
  6. Master DOFs must be defined at the interface between the super-element and other elements in addition to points where loads/constraints are applied.

    • Select Solution > Master DOFs > User Selected > Define
    • Select the Master DOF as shown in the following figure.
    • In the window that appears, set the 1st degree of freedom to All DOF

  7. Apply Loads
  8. Solution > Define Loads > Apply > Structural > Force/Moment > On NodesPlace a load of 5N in the x direction on the top left hand nodeThe model should now appear as shown in the figure below.


  9. Save the database
  10. Utility Menu > File > Save as Jobname.db
    SAVESave the database to be used again in the expansion pass

  11. Solve the System
  12. Solution > Solve > Current LS
    SOLVE

Use Pass: Using the Super-element

The Use Pass is where we model the entire model, including the super-elements from the Generation Pass.

Preprocessing: Defining the Problem


  1. Clear the existing databaseUtility Menu > File > Clear & Start New
  2. Give Use Pass a JobnameUtility Menu > File > Change Jobname ...
    FILNAME, USEEnter 'USE' for the jobname
  3. Open preprocessor menuANSYS Main Menu > Preprocessor
    /PREP7
    Now we need to bring the Super-element into the model
  4. Define the Super-element Type
  5. Preprocessor > Element Type > Add/Edit/Delete...Select 'Super-element' (MATRIX50)
  6. Create geometry of the non-superelement (Silicone)Preprocessor > Modeling > Create > Areas > Rectangle > By 2 Corners
    BLC4,XCORNER,YCORNER,WIDTH,HEIGHT
    Create a rectangle with the dimensions (all units in mm):
      XCORNER (WP X) = 0
      YCORNER (WP Y) = 0
      Width = 100
      Height = 40
  7. Define the Non-Superelement Type
  8. Preprocessor > Element Type > Add/Edit/Delete...We will again use PLANE42 (2D structural solid).
  9. Define Element Material PropertiesPreprocessor > Material Props > Material Models > Structural > Linear > Elastic > IsotropicIn the window that appears, enter the following geometric properties for silicone:
    1. Young's modulus EX: 2.5 (MPa)
    2. Poisson's Ratio PRXY: 0.41
  10. Define Mesh SizePreprocessor > Meshing > Size Cntrls > Manual Size > Areas > All Areas ...For this block we will again use an element edge length of 10mm. Note that is is imperative that the nodes of the non-superelement match up with the super-element MDOFs.
  11. Mesh the blockPreprocessor > Meshing > Mesh > Areas > Free > click 'Pick All'
    AMESH,1
  12. Offset Node Numbering
  13. Since both the super-element and the non-superelement were created independently, they contain similarly numbered nodes (ie both objects will have node #1 etc.). If we bring in the super-element with similar node numbers, the nodes will overwrite existing nodes from the non-superelements. Therefore, we need to offset the super-element nodes
      Determine the number of nodes in the existing model
    • Select Utility Menu > Parameters > Get Scalar Data ...
    • The following window will appear. Select Model Data, For Selected set as shown.
    • Fill in the following window as shown to set MaxNode = the highest node number
      Offset the node numbering
    • Select Preprocessor > Modeling > Create > Elements > Super-elements > BY CS Transfer
    • Fill in the following window as shown to offset the node numbers and save the file as GEN2
      Read in the super-element matrix
    • Select Preprocessor > Modeling > Create > Elements > Super-elements > From .SUB File...
    • Enter 'GEN2' as the Jobname of the matrix file in the window (shown below)
    • Utility Menu > Plot > Replot

  14. Couple Node Pairs at Interface of Super-element and Non-Superelements

    • Select the nodes at the interface
    • Select Utility Menu > Select > Entities ...
    • The following window will appear. Select Nodes, By Location, Y coordinates, 40 as shown.
      Couple the pair nodes at the interface
    • Select Preprocessor > Coupling / Ceqn > Coincident NodesRe-select all of the nodes
    • Select Utility Menu > Select > Entities ...
    • In the window that appears, click 'Nodes > By Num/Pick > From Full > Sele All'

Solution Phase: Assigning Loads and Solving


  1. Define Analysis Type
  2. Solution > New Analysis > Static
    ANTYPE,0

  3. Apply Constraints
  4. Solution > Define Loads > Apply > Structural > Displacement > On LinesFix the bottom line (ie all DOF constrained)
  5. Apply super-element load vectors

    • Determine the element number of the super-element (Select Utility Menu > PlotCtrls > Numbering...)You should find that the super-element is element 41
    • Select Solution > Define Loads > Apply > Load Vector > For Super-element
    • The following window will appear. Fill it in as shown to apply the super-element load vector.

  6. Save the database
  7. Utility Menu > File > Save as Jobname.db
    SAVESave the database to be used again in the expansion pass

  8. Solve the System
  9. Solution > Solve > Current LS
    SOLVE

General Postprocessing: Viewing the Results


  1. Show the Displacement Contour PlotGeneral Postproc > Plot Results > Contour Plot > Nodal Solution ... > DOF solution, Translation USUM
    PLNSOL,U,SUM,0,1

    Note that only the deformation for the non-superelements is plotted. This results agree with what was found without using substructuring (see figure below).

Expansion Pass: Expanding the Results within the Super-element

To obtain the solution for all elements within the super-element you will need to perform an expansion pass.

Preprocessing: Defining the Problem


  1. Clear the existing databaseUtility Menu > File > Clear & Start New
  2. Change the Jobname back to Generation pass JobnameUtility Menu > File > Change Jobname ...
    FILNAME, GENEnter 'GEN' for the jobname
  3. Resume Generation Pass DatabaseUtility Menu > File > Resume Jobname.db ...
    RESUME

Solution Phase: Assigning Loads and Solving


  1. Activate Expansion Pass

    • Enter the Solution mode by selecting Main Menu > Solution or by typing /SOLU into the command line.
    • Type 'EXPASS,ON' into the command line to initiate the expansion pass.

  2. Enter the Super-element name to be Expanded

    • Select Solution > Load STEP OPTS > ExpansionPass > Single Expand >Expand Superelem ...
    • The following window will appear. Fill it in as shown to select the super-element.

  3. Enter the Super-element name to be Expanded

    • Select Solution > Load Step Opts > ExpansionPass > Single Expand > By Load Step...
    • The following window will appear. Fill it in as shown to expand the solution.

  4. Solve the System
  5. Solution > Solve > Current LS
    SOLVE

General Postprocessing: Viewing the Results


  1. Show the Displacement Contour PlotGeneral Postproc > Plot Results > (-Contour Plot-) Nodal Solution ... > DOF solution, Translation USUM
    PLNSOL,U,SUM,0,1

    Note that only the deformation for the super-elements is plotted (and that the contour intervals have been modified to begin at 0). This results agree with what was found without using substructuring (see figure below).


    ANSYS Command Listing

    ! Bottom-Up Substructuring

    ! GENERATION PASS - Build the superelement portion of the model
    FINISH
    /CLEAR, START
    /FILNAME,GEN ! Change jobname

    /PREP7

    ! Create Geometry
    blc4,0,40,100,100 ! Creates rectangle

    ! Define material properties of wood section
    ET,1,PLANE42 ! Element type
    MP,EX,1, 10000 ! Young's Modulus
    MP,PRXY,1,0.29 ! Poisson's ratio

    ! meshing
    AESIZE,1,10, ! Element size
    amesh,1 ! Mesh area

    FINISH
    /SOLU

    ANTYPE,SUBST ! SUBSTRUCTURE GENERATION PASS
    SEOPT,GEN,,2 ! Name = GEN and no printed output

    NSEL,S,EXT ! Select all external nodes
    M,ALL,ALL ! Make all selected nodes master DOF's
    NSEL,ALL ! Reselect all nodes

    NSEL,S,LOC,Y,140 ! Select the corner node
    NSEL,R,LOC,X,0
    F,ALL,FX,5 ! Load it

    NSEL,ALL ! Reselect all nodes

    SAVE ! Saves file to jobname.db
    SOLVE ! GEN.SUB created
    FINISH

    ! USE PASS
    FINISH
    /CLEAR
    /FILNAME,USE ! Change jobname to use
    /PREP7

    ! Create Geometry of non superelements
    blc4,0,0,100,40 ! Creates rectangle

    ! Define material properties
    ET,2,PLANE42 ! Element type
    TYPE,2 ! Turns on element type 2
    MP,EX,2, 2.5 ! Second material property set for silicon
    MP,PRXY,2,0.41

    ! Meshing
    AESIZE,1,10, ! Element size
    mat,2 ! Turns on Material 2
    real,2 ! Turns on real constants 2
    amesh,1 ! Mesh the area

    ! Superelement
    ET,1,MATRIX50 ! MATRIX50 is the superelement type
    TYPE,1 ! Turns on element type 1
    *GET,MaxNode,NODE,,NUM,MAX ! determine the max number of nodes
    SETRAN,GEN,,MaxNode,GEN2 ! node number offset
    SE,GEN2 ! Read in superelement matrix
    NSEL,S,LOC,Y,40 ! Select nodes at interface
    CPINTF,ALL ! Couple node pairs at interface
    NSEL,ALL

    FINISH

    /SOLU
    ANTYPE,STATIC ! Static analysis

    NSEL,S,LOC,Y,0 ! Select all nodes at y = 0
    D,ALL,ALL,0 ! Constrain those nodes
    NSEL,ALL ! Reselect all nodes

    ESEL,S,TYPE,,1 ! Element select
    SFE,ALL,1,SELV,,1 ! Apply super-element load vector
    ESEL,ALL ! Reselect all elements

    SAVE
    SOLVE
    FINISH

    /POST1 ! Enter post processing
    PLNSOL,U,SUM,0,1 ! Plot deflection contour
    FINISH

    ! EXPANSION PASS
    /CLEAR ! Clear database
    /FILNAME,GEN ! Change jobname back to generation pass jobname
    RESUME ! Restore generation pass database

    /SOLU ! Enter SOLUTION
    EXPASS,ON,YES ! Activate expansion pass
    SEEXP,GEN2,USE ! Superelement name to be expanded
    EXPSOL,1,1, ! Expansion pass info
    SOLVE ! Initiate expansion pass solution. Full superelement solution written to GEN.RST
    FINISH

    /POST1
    PLNSOL,U,SUM,0,1 ! Plot deflection contour

No comments:

Post a Comment