State-Space Method for Systems with Dashpot Damping


Structural dynamics systems can be represented in terms of mass, damping and stiffness matrices.  Each of these matrices may be coupled depending on the model complexity, degrees-of-freedom, etc.   The mass and stiffness matrices in the assembled equation of motion may be uncoupled using the normal modes for the undamped system.  This approach gives real natural frequencies and real mode shapes.

Damping effects can be included in forced response analyses by implicitly assuming that the damping matrix can be diagonalized into modal damping coefficients by the undamped modes.   But systems with dashpots in general have damping matrices which cannot be uncoupled in this manner.

The state-space method is useful for modal and forced response analysis of systems with discrete dashpot damping.  This approach yields complex natural frequencies and mode shapes, with real and imaginary components.

Here is a paper:

Two-Degree-of-Freedom System, State-Space Method:   two_dof_state_space_revC.pdf

More later…

– Tom Irvine

Nastran Modal Transient & Response Spectrum Analysis for Base Excitation


  • Shock and vibration analysis can be performed either in the frequency or time domain
  • The time domain method requires more computation time but is much better suited for transient and nonstationary excitation
  • Time domain methods are also better for rainflow fatigue cycle counting
  • Students should already have some familiarity with Femap & Nastran
  • They should also be able to perform SRS time history synthesis as shown in previous Vibrationdata units
  • NX Nastran is used as the solver, but the methods should work with other versions
  • Two units for direct shock response spectrum analysis is also included

* * * * * * *

Prerequisite Materials

Webinar Index

Structural Dynamics Webinars

Matlab Vibrationdata GUI

* * * * * * *

Main Presentations:

Nastran Modal Transient Slides:  200_FEA_modal_transient_revJ.pptx  & Alternate Link

Nastran FEA Base Excitation via Response Spectrum:  201_FEA_response_spectrum_revE.pptx & Alternate Link

Nastran FEA Base Excitation with Multiple Response Spectrum Inputs:  202_FEA_response_spectrum_multiple_revA.pptx & Alternate Link

Nastran FEA Frequency Response Function for Base Input:
203_FEA_frf_revB.pptx & Alternate Link

FEA PSD Response for Base Excitation using Femap, Nastran & Matlab:  204_FEA_psd.pptx & Alternate Link

Avionics Component Shock Sensitivity & FEA Shock Analysis:  avionics_box_fea_shock.pptx & Alternate Link

* * * * * * *

Nastran Files

Students should generate their own files, but here are several for reference:







Nastran Acceleration Time History:  srs2000G_accel.nas

* * * * * * *

See also:    Vibrationdata Nastran

– Tom Irvine

Extract Mass & Stiffness Matrices from Nastran model

The punch file method may be used to extract the mass & stiffness matrices from Nastran models.  The format is awkward since zero terms are not stored.  Also the matrices are assumed to be symmetric, and the upper triangular portion above the diagonal is not stored.

Here is a paper from the Middle East Technical University which explains the format:  paper link.

The key is to apply the following command in the *.nas, *.dat, *.bdf or equivalent file:


Here is a sample file for a fixed-free beam, aluminum, 24 inch long, solid cylinder, 0.25 inch diameter, 24 elements:  beam_24e_diam_0p25_punch-000.nas

Its punch file output is:  beam_24e_diam_0p25_punch-000.pch

The fundamental frequency is 11.9 Hz.

If Femap is used, select the punch output with coupled mass.

Here is a C++ program which converts the punch file into full mass & stiffness matrices in ASCII text format:



The mass & stiffness matrices can then be imported to Excel, Matlab or some other program.

* * *

Note:  the dimension of the extracted mass matrix will be less than that of the stiffness matrix for models with massless nodes.

Here is a workaround:

An Indirect Method for Extracting Nastran Full Mass Matrices for Models with Massless Nodes  extract_massless_node.pdf

– Tom Irvine

Transverse Vibration of a Rotating Beam via the Finite Element Method


A function for calculating the natural frequencies and mode shapes for an elastic beam undergoing rotation is given in:

Matlab script: Vibrationdata Signal Analysis Package

The function can be accessed via:

>> vibrationdata > Miscellaneous > Structural Dynamics > Beam Bending > Rotating Beam, FEA

An option is included for calculating the response to a uniform force/length.

* * *

See also:  Beam_FEM_rotating.pdf

– Tom Irvine

Beam Supported by End Springs

A function for calculating the natural frequencies and mode shapes for an elastic beam supported by end springs is included in:

Matlab script: Vibrationdata Signal Analysis Package

The function can be accessed via:

>> vibrationdata > Miscellaneous > Structural Dynamics > Beam Bending > Beam with End Springs, FEA

Options for calculating the beam response to an applied force will be added soon.

* * *

See also:  Beam Bending Finite Element Analysis

– Tom Irvine

Rectangular Plate Bending Frequencies and Mode Shapes, Finite Element Method, GUI version


I have added a feature for rectangular plate bending modes to the Matlab GUI package.

Matlab script: Vibrationdata Signal Analysis Package

The script allows for the addition of point masses and point constraints.  This is a work-in-progress.  The next step will be to add base excitation options.

The new feature can be accessed via:

vibrationdata > Miscellaneous > Structural Dynamics > Plates, Rectangular & Circular > Rectangular Plate, Finite Element Method

* * *

Here is a reference paper: FEA_plate_bending.pdf

See also:  Dynamic Response to Enforced Motion

* * *

– Tom Irvine

The Static Deflection Method

The static deflection method can be used for estimating the fundamental frequency of a grounded dynamic system. A 1 G body load is applied to the system for this analysis.

The method can be used as a “ballpark” check for finite element models in conjunction with modal analysis.

Here is a tutorial paper.

The paper also demonstrates the use of the static deflection shape as the starting vector for the inverse power iteration method for obtaining a better estimate of the fundamental frequency.

Matlab script: inverse_power_iteration_manual.m

* * *

– Tom Irvine

Vibrationdata Finite Element Package

I have begun work on a Matlab GUI finite element package for structural dynamics.

This is a long-term work-in-progress!

Here is the current package:

vibrationdata_fea_preprocessor.m is the main script.  The remaining scripts are supporting functions.

* * *

Here are sample input files in Excel format:


* * *

Here is a preliminary user guide:


Reference papers:

Response of a Two-degree-of-freedom System Subject to a Half-Sine Applied Force

Sample Lateral Natural Frequency Calculations for a Space Vehicle/Dispenser Analysis

Assembly of subsystem matrices

* * *

The user is responsible for consistent units.

The package allows for nodes and elements in a 3D space.  There are three translational and three rotational degrees-of-freedom per node.

The available elements are dof springs, point masses and rigid links.  Additional elements will be included in future revisions, such as beams, plates, gap springs, etc.

This package began as a preprocessor.  The mass and stiffness matrices can be exported.

But the package will also solve for the normal modes.  Forced response and enforced acceleration will added in future revisions, both for frequency and time domain analyses.  Static analysis and buckling are also on the to-do list.

The scripts have some error-detection capability, but further checks are needed.

Please let me know if you have any comments, suggestions, or find any bugs.

* * *

See also:  Vibrationdata Finite Element

* * *

Thank you,
Tom Irvine

Convert Time History to Nastran format

Here is a Matlab script that converts a time history to a format which can be input to Femap or some other preprocesser for Nastran analysis. time_history_nastran.m

with supporting function: datafix.m

It can be used for force, pressure, acceleration or other amplitude types.

The script writes the Nastran data to an external ASCII text file, which would typically have a *.nas or other Nastran-friendly extension per the user’s choice.

– Tom Irvine

Beam Bending, Finite Element Analysis

Here is a paper which gives a derivation of the mass and stiffness matrices for beam bending: beam_FEM.pdf

* * *

Here is a Matlab script for the modal analysis of a straight beam.

* * *

Here is Matlab script for the modal analysis of a rotating beam such as a helicopter blade:

Here is a paper: Beam_FEM_rotating.pdf

* * *

Here is a Matlab script for the beam bending response to base excitation:

* * *

See also:

Dynamic Response to Enforced Motion

Beam Bending Natural Frequencies & Mode Shapes

– Tom Irvine