## 3.7. Modal Analysis Examples

The following modal analysis example topics are available:

### 3.7.1. An Example Modal Analysis (GUI Method)

In this example, you perform a modal analysis on the wing of a model plane to demonstrate the wing's modal degrees of freedom.

#### 3.7.1.1. Problem Description

This is a modal analysis of a wing of a model plane. The wing is of uniform configuration along its length, and its cross-sectional area is defined to be a straight line and a spline, as shown. It is held fixed to the body on one end and hangs freely at the other. The objective of the problem is to demonstrate the wing's modal degrees of freedom.

#### 3.7.1.2. Problem Specifications

The dimensions of the wing are shown in the problem sketch. The wing is made of low density polyethylene with the following values:

 Young's modulus = 38x103 psi Poisson's ratio = .3 Density = 8.3e-5 lb-sec2/in4

#### 3.7.1.3. Problem Sketch

The detailed step-by-step procedure for this example, Modal Analysis of a Model Airplane Wing, is included in the Modal Tutorial.

### 3.7.2. An Example Modal Analysis (Command or Batch Method)

You can perform the example modal analysis of a model airplane wing using the commands shown below instead of GUI choices. Items prefaced with an exclamation point (!) are comments.

You may receive warning messages when you run this problem. The version of the problem that appears in the Modal Tutorial contains an explanation of the warnings.

```/FILNAM,MODAL
/TITLE,Modal Analysis of a Model Airplane Wing

/PREP7
ET,1,PLANE182              ! Define PLANE182 as element type 1
ET,2,SOLID185,,3           ! Define SOLID185 as element type 2
MP,EX,1,38000
MP,DENS,1,8.3E-5
MP,NUXY,1,.3
K,1                        ! Define keypoint 1 at 0,0,0
K,2,2                      ! Define keypoint 2 at 2,0,0
K,3,2.3,.2                 ! Define keypoint 3 at 2.3,.2,0
K,4,1.9,.45                ! Define keypoint 4 at 1.9,.45,0
K,5,1,.25                  ! Define keypoint 5 at 1,.25,0
LSTR,1,2                   ! Create a straight line between keypoints 1 and 2
LSTR,5,1                   ! Create a straight line between keypoints 5 and 1
BSPLIN,2,3,4,5,,,-1,,,-1,-.25   ! Create a B-spline
AL,1,3,2
ESIZE,.25
AMESH,1
ESIZE,,10
TYPE,2
VEXT,ALL,,,,,10
/VIEW,,1,1,1
/ANG,1
/REP
EPLOT
FINISH

/SOLU
ANTYPE,MODAL          ! Select modal analysis type
MODOPT,LANB,5        ! Select the Block Lanczos mode-extraction method,
! extracting 5 modes
ESEL,U,TYPE,,1        ! Unselect element type 1
NSEL,S,LOC,Z,0
D,ALL,ALL
NSEL,ALL
MXPAND,5
SOLVE
FINISH

/POST1
SET,LIST,2
SET,FIRST
PLDISP,0
ANMODE,10,.5E-1
SET,NEXT
PLDISP,0
ANMODE,10,.5E-1
SET,NEXT
PLDISP,0
ANMODE,10,.5E-1
SET,NEXT
PLDISP,0
ANMODE,10,.5E-1
SET,NEXT
PLDISP,0
ANMODE,10,.5E-1
FINISH
/EXIT```

### 3.7.3. Brake Squeal (Prestressed Modal) Analysis

Vehicle brakes can generate several kinds of noises. Among them is squeal, a noise in the 1-12 kHz range. It is commonly accepted that brake squeal is initiated by instability due to the friction forces, leading to self-excited vibrations.

To predict the onset of instability, you can perform a modal analysis of the prestressed structure. An unsymmetric stiffness matrix is a result of the friction coupling between the brake pad and disc; this may lead to complex eigenfrequencies. If the real part of the complex frequency is positive, then the system is unstable as the vibrations grow exponentially over time.

Three different methods to perform a brake squeal analysis are presented here:

A full nonlinear perturbed modal analysis is the most accurate method for modeling the brake squeal problem. This method uses nonlinear static solutions to both establish the initial contact and compute the sliding contact.

A partial nonlinear perturbed modal analysis is used when a nonlinear solution is required to establish contact but a linear analysis can be used to compute the sliding contact.

A linear non-prestressed modal analysis is effective when the stress-stiffening effects are not critical. This method requires less run time than the other two methods, as no nonlinear base solution is required. The contact-stiffness matrix is based on the initial contact status.

Each method involves several solution steps. The table below outlines the differences between the methods. Since the eigensolution step is the most computationally intensive step, the QR damp eigensolver (MODOPT,QRDAMP) is generally recommended for fast turnaround time in a parametric brake squeal study environment. However, since this solver approximates the unsymmetric stiffness matrix by symmetrizing it, the unsymmetric eigensolver (MODOPT,UNSYM) should be used to verify the eigenfrequencies and mode shapes.

 Method Base Static Analysis Modal Analysis(Linear Perturbation Analysis or Linear Modal Analysis) First Solve Establish initial contact status; compute prestress effects Second Solve First Solve Second SolveQR damped or unsymmetric modal analysis Full nonlinear perturbed modal analysis Full nonlinear solution Force frictional sliding (CMROTATE command) and perform a full nonlinear solution Generate unsymmetric matrix Linear perturbation modal solution Partial perturbed modal analysis Full nonlinear solution N/A Establish forced sliding contact first (CMROTATE command). Linear perturbation modal solution Linear non-prestressed modal analysis N/A N/A N/A Force frictional sliding (CMROTATE command) and perform a linear modal solution

#### 3.7.3.1. Full Nonlinear Perturbed Modal Analysis

A full nonlinear perturbed modal analysis is the most accurate method to model brake squeal. The following solution steps are required:

1. Perform a nonlinear static contact analysis to establish initial contact conditions:

• Activate large-deflection effects (NLGEOM,ON); (optional).

• Use the unsymmetric stiffness matrix option (NROPT,UNSYM).

• Specify the restart control points needed for the linear perturbation analysis (RESCONTROL command).

2. Perform a forced frictional sliding contact analysis as an additional load step.

This step is needed if you want to model steady-state frictional sliding between a brake pad and the associated rotating disc (brake rotor) with different velocities. In this case, the sliding direction no longer follows the nodal displacements; instead, it is predefined through the CMROTATE command. This command defines the velocities on the contact and target nodes of the element component which are used to determine the sliding direction for the rest of analysis. The rotating element component (CM command) that is specified on the CMROTATE command should include only the contact elements or only the target elements that are on the brake rotor.

3. Perform the first phase of the linear perturbation analysis:

• Specify a restart point (load step number and substep number) using the ANTYPE command (for example, ANTYPE,STATIC,RESTART,LDSTEP,SUBSTEP,PERTURB).

• Specify the type of linear perturbation analysis as modal (PERTURB,MODAL command).

• Issue SOLVE,ELFORM to regenerate the element stiffness matrices, which are generally unsymmetric.

4. Perform a QR damped or unsymmetric modal analysis (second phase of the linear perturbation analysis):

• Specify the QR damped or unsymmetric mode extraction method (MODOPT,QRDAMP or UNSYM).

• Issue the SOLVE command.

The eigensolver uses the unsymmetric stiffness matrix generated in the contact elements, and it may lead to complex eigenfrequencies.

5. Expand the modes and postprocess the results from the Jobname.RSTP file.

The following example illustrates the full nonlinear perturbed modal analysis method for brake squeal analysis:

```/prep7
!
! Create the brake model and apply force normal to the contact surface to
! simulate contact pressure between brake pad and disc.
!
…
!
finish
!
/solu
!
! Non-linear prestress static analysis
!
antype,static
nlgeom,on      ! include large-deflection effects (optional)
nropt,unsym    ! unsymmetric stiffness matrix
rescontrol,define   ! specify restart files needed for multiframe restart
!
! Create an element component (for example, BrakeCM) consisting of brake
! rotor and contact/target element.
…
solve
!
! Pseudo rotation of disc and contact elements
! (this step generates the unsymmetric [K] in contact elements)
!
cmrotate,BrakeCM,ROTATX,ROTATY,ROTATZ
nsubst,1
solve
finish
!
/solu
antype,static,restart,,,perturb   ! restart from last load step and substep
! of previous static solution to perform perperbuation analysis
perturb,modal       ! perform perturbed modal solve
solve,elform        ! regenerate element matrices
!
! Use QR damped or UNSYM eigensolver
!
modopt,qrdamp
mxpand,...
solve
finish
```

#### 3.7.3.2. Partial Nonlinear Perturbed Modal Analysis

When large deflection and/or stress stiffening effects play an important role in the final eigensolution, you can perform a partial prestressed modal analysis as described here.

1. Perform a static contact analysis to establish contact conditions:

• Activate large deflection effects (NLGEOM,ON); optional.

• Use the unsymmetric stiffness matrix option (NROPT,UNSYM).

• Specify the restart control points needed for the linear perturbation analysis (RESCONTROL command).

• Create components to be used with the CMROTATE command.

The initial contact condition will be established and a prestressed matrix will be generated in the end of this step under external loading.

2. Perform the first phase of the linear perturbation analysis:

• Specify a restart point (load step number and substep number) using the ANTYPE command (for example, ANTYPE,STATIC,RESTART,LDSTEP,SUBSTEP,PERTURB).

• Specify the type of linear perturbation analysis as modal (PERTURB,MODAL command).

• Issue the CMROTATE command. The contact stiffness matrix is based only on the contact status at the restart point. The sliding direction no longer follows the nodal displacements; instead, it is defined through the CMROTATE command.

• Issue SOLVE,ELFORM to regenerate the element stiffness matrices, which are generally unsymmetric.

3. Perform a QR damped or unsymmetric modal analysis (second phase of the linear perturbation analysis):

• Specify the QR damped or unsymmetric mode extraction method (MODOPT,QRDAMP or UNSYM).

• If you are planning to perform multiple solutions and want to reuse the Block Lanczos eigensolution from the previous load steps, issue QRDOPT,ON (QRDAMP only).

• Issue the SOLVE command.

4. Expand the modes and postprocess the results from Jobname.RSTP.

5. To perform friction sensitivity studies by reusing the normal modes from the Block Lanczos solution (QRDAMP only), repeat steps 2, 3, and 4 by changing the coefficient of friction at step 2 and reissuing the QRDOPT,ON command at step 3.

The difference between this procedure and the procedure described in Full Nonlinear Perturbed Modal Analysis is that here the CMROTATE command is used in the first phase of the linear perturbation analysis, while by the other procedure the CMROTATE command is invoked in the nonlinear base analysis. The procedure described here is computationally less expensive compared to the Full Nonlinear Perturbed Modal Analysis.

The following example illustrates the partial nonlinear perturbed modal analysis method for brake squeal analysis:

```!
! Create the brake model and apply force normal to contact surface to
! simulate contact pressure between brake pad and disc.
!
…
!
finish
!
/solu
!
! Non-linear prestress static analysis
!
antype,static
nlgeom,on      ! include large-deflection effects (optional)
nropt,unsym    ! unsymmetric stiffness matrix
rescontrol,define   ! specify restart files for multifrome restart
solve
finish
!
/solu
antype,static,restart,,,perturb   ! restart from last load steop and substep
! of previous static solution to perform
! perturbation analysis
perturb,modal        ! perform perturbed modal analysis
!
! Pseudo rotation of disc and contact elements
! (this step generates the unsymmetric [K] in contact elements)
!
! Create an element component (for example, BrakeCM) consisting of brake
! rotor and contact/target element.
…
!
cmrotate,BrakeCM,ROTATX,ROTATY,ROTATZ
solve,elform   ! regenerate the element matrices
!
! Use QR damped or UNSYM eigensolver
!
qrdopt,on             ! Generate Jobname.MODESYM
modopt,qrdamp,...     ! (or) modopt,unsym
mxpand,...
solve
finish
!
/clear,nostart
!
/solu
antype,static,restart,,,perturb   ! restart from last load step and substep
! of previous static solution to perform perperbuation analysis
mp,mu,cid,0.3		 ! Change coefficient of friction
perturb,modal       ! perform perturbed modal solve
solve,elform        ! regenerate element matrices
!
! Use QR damped or UNSYM eigensolver
!
qrdopt,on		! Reuse Jobname.MODESYM
modopt,qrdamp
mxpand,...
solve
finish
```

For further information, see Linear Perturbation Analysis.

#### 3.7.3.3. Linear Non-prestressed Modal Analysis

The full nonlinear perturbed modal analysis method described above requires a nonlinear static stress analysis. If large-deflection or stress-stiffening effects are not critical, you can use the linear non-prestressed modal analysis method instead. This method involves a single linear QR damped or unsymmetric eigensolution. Since it is a linear analysis, this method is less time consuming. The following steps are required:

1. Perform a QR damped (QRDAMP) or unsymmetric (UNSYM) modal analysis using the linear modal analysis procedure:

• Use the unsymmetric stiffness matrix option (NROPT,UNSYM) to generate the unsymmetric stiffness matrix. (No Newton-Raphson iterations are performed.)

• Generate frictional sliding force via the CMROTATE command. The contact stiffness matrix is based only on the initial contact status.

• Specify the QR damped or unsymmetric mode extraction method (MODOPT,QRDAMP or UNSYM).

• If you are planning to perform multiple solutions and want to reuse the Block Lanczos eigensolution from the previous load steps, issue QRDOPT,ON (QRDAMP only).

• Issue the SOLVE command.

• To perform friction sensitivity studies by reusing the normal modes from the Block Lanczos solution (QRDAMP only), just change the friction coefficients and issue the SOLVE command.

2. Expand the modes and postprocess the results from Jobname.RST.

The following example illustrates the linear non-prestressed modal analysis method for brake squeal analysis:

```/prep7
!
! Create the brake model
!
finish
!
/solu
!
! Perform a linear modal analysis
!
antype,modal
nropt,unsym    ! unsymmetric stiffness matrix
!
! Create an element component (for example, BrakeCM) consisting of brake
! rotor and contact/target elements.
!
…
cmrotate,BrakeCM,ROTATX,ROTATY,ROTATZ
!
! Use QR damped or UNSYM eigensolver
!
qrdopt,on             ! Generate Jobname.MODESYM
modopt,qrdamp,...     ! (or) modopt,unsym
mxpand,...
solve
!
mp,mu,cid,0.3           ! Change freiction coefficient
solve
finish
```

### 3.7.4. Reuse of Jobname.MODESYM in QR Damp Eigensolver

This section describes the reuse of Jobname.MODESYM in QR Damp eigensolver. Reuse is activated by the reuse flag (ReuseKey) in the QRDOPT command. A typical example of the reuse of Jobname.MODESYM would be for determining instability predictions in brake squeal analysis (Brake Squeal (Prestressed Modal) Analysis ).

To reuse Jobname.MODESYM in QR Damp eigensolver, turn on the ReuseKey reuse flag in the QRDOPT command. The following solution steps occur:

1. In the first load step, if Jobname.MODESYM does not exist, the block Lanczos eigensolution is performed to create the Jobname.MODESYM mode file. This file contains symmetric normal modes of the eigenproblem, given by:

Where the eigenvalues λ and {x} are output as symmetric modes to Jobname.MODESYM. The [K] matrix in the above expression is the stiffness matrix, symmetrized as outlined in QR Damped Method in the Mechanical APDL Theory Reference.

2. Then in the first and all the subsequent load steps, the symmetric Lanczos eigenmodes are used to build the subspace eigenproblem and create the Jobname.MODE. This mode file contains the complex eigenmodes of the non-symmetric eigenproblem, given by:

Where λu and {xu} are output as unsymmetric modes to Jobname.MODE.

3. The Lanczos eigenmodes from the symmetrized eigenproblem written out to the Jobname.MODESYM mode file are available for later use by the QR damp eigensolver.

When analyzing for brake squeal or Campbell plot generation in rotordynamics, the reuse approach can improve performance by avoiding the Block Lanczos run that typically occurs in a QR damp eigensolution. Exercise caution when comparing eigensolutions from a reuse run with a non-reuse run, as symmetrization differs in these runs. In a non-reuse run the [K] matrix gets symmetrized at each load step of a QR damp eigenanalysis. In a reuse run the symmetrization occurs at the first load step and the symmetric normal modes are reused in all subsequent load steps.

The QR damp eigensolver will attempt to reuse the normal modes from Jobname.MODESYM if the file is present in the folder where the ANSYS job is run, so ensure that Jobname.MODESYM is created by the same model as the subsequent QR damp model.

#### 3.7.4.1. Calculate the Complex Mode Contribution Coefficients (CMCC)

In a brake squeal analysis, the complex mode contribution coefficients (CMCC) can be used to determine how much the symmetric normal modes contribute to the complex modes. The equations and APDLMath procedure for CMCC are described in this section.

Using the upper part of Equation 15–213 in the Mechanical APDL Theory Reference, the relationship between the real and the complex modes can be written as:

Where:

is the vector of complex modes (upper part only) in:

is the matrix of real modes (upper part only) in:

Premultiplying by   when real modes are mass normalized obtains:

APDLMath is used to calculate the CMCC based on the above equation. The real modes are read from the Jobname.MODESYM mode file, the mass matrix from the file.full file, and the complex modes from the Jobname.MODE file. The resulting CMCC are printed out in the ASCII file Cmcc.txt. If the file Cmcc.txt already exists, the new coefficients will be appended to this file.

```! ------------------------------------------------------------
! GET THE MASS MATRIX FROM FILE.FULL
! ------------------------------------------------------------

*SMAT,Mass,D,IMPORT,FULL,file.full,MASS
! GET THE FULL TO BCS MAPPING
*SMAT,NodToBcs,D,IMPORT,FULL,file.full,NOD2BCS

! ------------------------------------------------------------
! GET THE COMPLEX MODES FROM FILE.MODE  : PhiC
! ------------------------------------------------------------

*DMAT,PhiF,Z,IMPORT,MODE,file.mode,1,300
*MULT,NodToBcs,,PhiF,,PhiC
*FREE,PhiF

! ------------------------------------------------------------
! GET THE REAL MODES FROM FILE.MODESYM    : PhiR
! ------------------------------------------------------------

*DMAT,PhiF,,IMPORT,MODE,file.modesym,1,300
*MULT,NodToBcs,,PhiF,,PhiR
*FREE,PhiF

! ------------------------------------------------------------
! COMPUTE AND NORMALIZE THE CMCC : PhiR(T).M.PhiC
! ------------------------------------------------------------

*MULT,Mass,,PhiC,,MPhiC            ! MPhiC = M.PhiC
*MULT,PhiR,T,MPhiC,,PhiRMPhiC      ! PhiRMPhiC = PhiR(T).MPhiC

*DO,ii,1,PhiRMPhiC_colDim,1        ! LOOP OVER ALL COLUMNS
*VEC,vr,d,COPY,v
*NRM,vr,NRMINF,_vr_nrm
*AXPY,,,,1./_vr_nrm,,v            ! V is normalized / NRM_INF(V)=1.
*ENDDO

*PRINT,PhiRMPhiC,Cmcc.txt          ! PRINT -> Cmcc.txt

```

### 3.7.5. Where to Find Other Modal Analysis Examples

Several ANSYS, Inc. publications, particularly the Mechanical APDL Verification Manual, describe additional modal analyses.

The Mechanical APDL Verification Manual consists of test case analyses demonstrating the analysis capabilities of the ANSYS family of products. While these test cases demonstrate solutions to realistic analysis problems, the Mechanical APDL Verification Manual does not present them as step-by-step examples with lengthy data input instructions and printouts. However, most ANSYS users who have at least limited finite element experience should be able to fill in the missing details by reviewing each test case's finite element model and input data with accompanying comments.

The Mechanical APDL Verification Manual includes variety of modal analysis test cases:

 VM45 - Natural Frequency of a Spring-mass System VM47 - Torsional Frequency of a Suspended Disk VM48 - Natural Frequency of a Motor-generator VM50 - Fundamental Frequency of a Simply Supported Beam VM52 - Automobile Suspension System Vibrations VM53 - Vibration of a String Under Tension VM54 - Vibration of a Rotating Cantilever Blade VM55 - Vibration of a Stretched Circular Membrane VM57 - Torsional Frequencies of a Drill Pipe VM59 - Lateral Vibration of an Axially-loaded Bar VM60 - Natural Frequency of a Cross-ply Laminated Spherical Shell VM61 - Longitudinal Vibration of a Free-free Rod VM62 - Vibration of a Wedge VM66 - Vibration of a Flat Plate VM67 - Radial Vibrations of a Circular Ring from an Axisymmetric Model VM68 - PSD Response of a Two-degrees of freedom Spring-mass System VM69 - Seismic Response VM70 - Seismic Response of a Beam Structure VM76 - Harmonic Response of a Guitar String VM89 - Natural Frequencies of a Two-mass-spring System VM151 - Nonaxisymmetric Vibration of a Circular Plate VM152 - Nonaxisymmetric Vibration of a Stretched Circular Membrane (Harmonic Els) VM153 - Nonaxisymmetric Vibration of a Stretched Circular Membrane (Modal) VM154 - Vibration of a Fluid Coupling VM175 - Natural Frequency of a Piezoelectric Transducer VM181 - Natural Frequency of a Flat Circular Plate with a Clamped Edge VM182 - Transient Response of a Spring-mass System VM183 - Harmonic Response of a Spring-mass System VM202 - Transverse Vibrations of a Shear Beam VM203 - Dynamic Load Effect on Simply-supported Thick Square Plate VM212 - Modal Analysis of a Rectangular Cavity