Skip to main content

CMS Superelement Harmonic Analysis

Fig 1: Project Schematic

With the release of Mechanical 19.2, substructuring is now available for Modal & Rigid Dynamics without scripting. That just made my earlier post on CMS outdated! Note that there is still a key limitation where Generation and Expansion Pass must be performed on your local machine.

To get ahead of the game a bit, here is a way to do Harmonic Analysis extending on previous work. (Please go through that before this post). Some points of note:
  1. The method of merging the CMS and non-CMS models together into System C is the same.
  2. All files related to the superelement has to be copied over to the solver file directory as before.
  3. Modal analysis need not be performed first as the example here uses Full Method instead of Modal Superposition for simplicity. 
  4. The script expands the responses the same way as Modal Analysis does so the script will look familiar.
Additional Resources:
Example: Harmonic Response to Unbalanced Force using CMS (Link)
Example: Modal and Harmonic Analyses of an Automotive Suspension Assembly Using CMS (Link)

Command Snippet for Combined Analysis D
!!!!! Save full model
/filnam, full

!!!!! perform use pass solution
/filnam, use
! Deletes body to be replaced by cms element
cmsel, s, BODY1_CMS_PART_  ! ** part named selection for deletion **     
cmsel,u, interA_CMS_PART_  ! ** don't delete interface nodes **
edele, all
ndele, all

*get, etmax, etyp, 0, num, max
et, etmax+1, 50         ! define substructure element type 
type, etmax+1
mat, 1
se, myse                ! define substructure element

/solu                   ! uses exisitng settings

!!!!! expand the solution for viewing purposes
/clear, nostart
/filnam, myse

expass, on
seexp, myse, use        ! substructure name and the use pass jobname 
numexp, all,,, yes   ! Expand all modes

!!!!! merge results file
/clear, nostart
/filnam, full

nsubsteps = 3         ! **number of harmonic frequencies**
*do,ct, 1, nsubsteps
   file, use
   set, 1, ct
   file, myse
   append, 1, ct
   reswrite, file      ! file name for results file

Model Comparison with verification model
Fig 2: CMS Model

Fig 3: Verification Model

The results looks pretty similar for the solved frequency.

Archived Model V19+
The archived file can be found here:  Link

All posts on Superelement 
CMS Superelement Harmonic Analysis Link
Reuse CMS Superelement in Ansys Workbench with Expansion Link
Component Mode Synthesis (CMS) with Results Expansion in Ansys Workbench Link
Craig Bampton Method Overview Link
Component Mode Synthesis(CMS) Substructure in ANSYS Workbench Link

In more recent version of Ansys Workbench, distributed file combinations defaults were changed to OFF. This needs to be corrected with appending the following commands to the Analysis A command snippet (Generation Pass).
    dmpopt, esav, yes
    dmpopt, emat, yes
    dmpopt, full, yes

Update [Jan 18, 2020]
A new post shows the same procedure in Ansys 2019 r3.


  1. Can we use CMS for electric motor modal analysis, what I try to achieve is that stator, rotor, bearing, endplates, housing are independent components, and then use CMS to get the full motor assembly modes.

    1. Yes, you should be able to branch off multiple analysis for different components.


Post a Comment

Popular posts from this blog

ANSYS User Defined Results

There is an abundant of options in ANSYS classic when one wishes to post process results. ANSYS workbench default pull down menu post processing options are more limited but they can still be accessed via the User Defined Results. One way not commonly used but can come in handy is as follows: Zeroth: Under Analysis Settings, there is "Output Controls" where you can toggle to "Yes" what you would like to save before the solution starts. This is like OUTRES in APDL. Output Controls First: After solving the model, click on Solution in the tree to highlight it. Solution Second: Click on Worksheet in the toolbar. Worksheet Third: In the worksheet, you will see list of results that are saved. Right click on it to create the User Defined Results. Create User Defined Results So here we have it. You could of look up the different expressions in the help document but I find this method of accessing the results convenient.  Example: Aspec

Export Stiffness Matrix from Ansys

It is sometimes useful to extract the mass and stiffness matrix from Ansys.     *SMAT, MatK, D, IMPORT, FULL, file.full, STIFF       *PRINT, matk, matk, txt Exporting mass matrix would be similar:       *SMAT, MatM, D, import, full, file.full, MASS The above script uses APDL Math to get the job done. (Please see previous post for another example). The ordering of the matrix is unfortunately not concurrently exported. To verify the sequencing is as expected, we will work to replicate a truss example in the  Finite Element Trusses course notes by Bob Greenlee. Figure 1: Truss Problem Setup Model Creation Script to create model: /prep7 !! Creates Model to reflect course notes ! Properties et ,1,1  mp , ex, 1, 29.5e6 r , 1, 1 ! Geometry n ,1 $  n ,2, 40 $  n ,3, 40, 30 $  n ,4, 0, 30 e ,1,2 $  e ,2,3 $  e ,1,3 $  e ,3,4 ! Boundary Conditions d ,1,ux,0 $  d ,1,uy,0 d ,2,uy,0 d ,4,ux,0 $  d ,4,uy,0 f ,2,fx,20e3 f ,3,fy,-25e3 ! solves /solu eqslv , sparse

ANSYS APDL Syntax Highlighting editor

Notepad++ with APDL User Defined Language The editor of my choice is Notepad++  with the available User Defined Language Files for APDL . You can install it without administrative privileges via the zip file. The best part of it is, it's FREE! After installing Notepad++, go to "Language>Define Your Language..." then "Import" the XML file downloaded from the above link. Remember to restart Notepad++ so that the language changes will take into effect. Opening up any *.inp or *.ans files should automatically switch highlighting to APDL. I made some minor edits. Here's my XML file: LINK . I also heard Sublime Text and  Ultraedit  has more advance features but they aren't (totally) free.