Calibration of a Damped Oscillator Using Signals in ABAQUS

This tutorial allows you to complete a calibration of a single degree-of-freedom system excited with initial kinetic energy.

The equation of motion of free vibration is:

The un-damped and damped eigen-frequency is

The time-dependent displacement function is:

Problem Definition

The goal is the identification of the input parameters m, k, D, and Ekin to optimally fit a reference displacement function.

The objective function is the sum of squared errors between the reference and the calculated displacement function values

Task Description

This tutorial demonstrates how to do the following:

  • Generate a solver chain using ABAQUS

  • Define the input parameters

  • Define the output and reference signals

Preparation

Before you start the tutorial, download the oscillator_signals_abaqus zip file from here , and extract it to your working directory.

Oscillator Model in ABAQUS

The spring mass system is coded in the supplied input script for ABAQUS named oscillator.inp.

Tutorial Steps

Creating a New Project

  1. Start optiSLang.

  2. Create a new empty project.

Starting the Solver Wizard

  1. From the Wizards pane, drag the Solver wizard to the Scenery pane and let it drop.

  2. From the solver list, click Abaqus.

Selecting the Input File

  1. In the Select input file dialog box, browse to the oscillator_signals_abaqus folder and select oscillator.inp.

  2. Click Open.

Defining the Input Parameters

  1. In the text editor, highlight lines 27-30

  2. Select the Assignment AutoParametrize mode.

  3. Click AutoParametrize.

    All possible values are marked.

  4. Change the parameter name to m.

  5. To register the parameter, click Add.

  6. Repeat this procedure for parameters k, D, and Ekin.

  7. Click Next.

Editing the Parameter Properties

  1. Double-click the range numbers for row 1 (m).

  2. Change the lower bound to 0.1 and the upper bound to 5.

  3. Double-click the range numbers for row 2 (k).

  4. Change the lower bound to 10 and the upper bound to 50.

  5. Double-click the range numbers for row 3 (D).

  6. Change the lower bound to 0.01 and the upper bound to 0.05.

  7. Double-click the range numbers for row 4 (Ekin).

  8. Change the lower bound to 10 and the upper bound to 100.

  9. Click Next.

Selecting the Output Data File

  1. In the Choose a file to open dialog box, browse to the oscillator_signals_abaqus folder and select oscillator.odb.

  2. Click Open.

Defining the Output Data

  1. Switch to the History output tab.

  2. From the Output list, select U1.

  3. In the Variable Name field, type U1.

  4. Click Use as response.

    The output is added to the Responses pane.

Selecting the Reference Data File

  1. To open the reference data file, click the orange folder.

  2. In the Choose a file to open dialog box, browse to the oscillator_signals_abaqus folder and select oscillator_reference.txt.

  3. Click Open.

Defining the Reference Signal

  1. From the File format list, ensure Plain text file is selected and click OK.

  2. Select Absolute path as the search mode.

  3. Expand Show advanced options.

  4. Under Line, set Offset: 3.

  5. Set the number of lines to maximum.

  6. Set the number of tokens to maximum.

  7. In the Variable Name field, type Reference.

  8. Click Use as response.

    The signal is displayed in the Responses pane.

Defining the Signal Functions

  1. Switch to the Variables tab

  2. In row 2 (Reference), double-click the Base path mode cell and select Absolute from the drop-down list.

  3. Click Add variable.

  4. Double-click the ID cell for the new variable, type error_norm, and press Enter.

  5. Right-click the Expression cell of row 3 (error_norm) and select Open Calculator from the context menu.

  6. In the calculator, switch to the Linear Algebra tab.

  7. Click euklidnorm.

  8. In the brackets, type U1-Reference.

  9. Click OK.

  10. Drag the error_norm row into the Responses pane to register it as a response.

  11. Select the Instant visualization check box and compare the two signals in the diagram to make sure that there is not a time unit or scaling error.

  12. Click Next.

Defining the Optimization Criteria

  1. To define error_norm as a minimization objective, drag the row from the Responses table to the Objective Minimize icon and let it drop.

    The new criterion is displayed in the Criteria table.

  2. Click Next.

Defining the Solver Process

  1. Do not adjust the current ABAQUS process settings.

  2. Click Next.

Creating the Solver Chain Template

  1. Select the Create a template from solver chain check box.

  2. In the Template name field, enter oscillator_calib

  3. Click Finish.

  4. The template is displayed in the Scenery pane.

Saving and Running the Project

  1. To save the project, click  .

  2. Browse to the location to save the project and type a project name in the File name field.

  3. Click Save.

  4. To run the project, click  .

  5. To review the result, double-click the oscillator_calib template and switch to the Result designs tab.

Alternative Setup for Robust Design Optimization Tutorials


Note:  This is an optional procedure.


  1. Right-click the Output files node and select Edit from the context menu.

  2. Define the x_max variable, using the window function.

  3. Define the omega_damped variable, which is not readily present in the ABAQUS results file.

Alternative Execution Options for the ABAQUS Solver


Note:  This is an optional procedure.


  1. Select the ABAQUS executable.

  2. Create a job name which differs from the input file name.

  3. Specify the input file name.

  4. Set the output file (jobname.odb) as the result for data extraction.


    Note:  You many need to modify the output files as well if changes apply to a wizard generated node.