Skip to content

OpenSeesMatlab

OpenSeesMatlab ¤

Bases: handle

OpenSeesMatlab Main MATLAB interface for OpenSees.

OpenSeesMatlab is the top-level entry point of this toolbox. It creates and connects the OpenSees command interface, pre-processing utilities, analysis helpers, post-processing tools, visualization tools, and general utilities around an OpenSees MATLAB MEX module.

The OpenSees commands are accessed through the opensees property:

1
2
  opsmat = OpenSeesMatlab();
  ops = opsmat.opensees;

Command syntax follows OpenSeesPy/OpenSees command conventions as closely as possible. For command-level details, refer to:

OpenSeesPy: https://openseespydoc.readthedocs.io/en/latest/index.html

OpenSees : https://opensees.github.io/OpenSeesDocumentation/

Syntax
1
2
3
4
  opsmat = OpenSeesMatlab()
  opsmat = OpenSeesMatlab(mexName=name)
  opsmat = OpenSeesMatlab(mexDir=dir)
  opsmat = OpenSeesMatlab(mexName=name, mexDir=dir)

Properties:

  • opensees (_tokxwL73RJhBTyZd8) –

    OpenSees command wrapper. Use this object to call OpenSees commands such as wipe, model, node, element, system, numberer, constraints, integrator, algorithm, analysis, analyze, recorder, and related APIs.

  • pre (_0nS9EHeXHsBRc2lh) –

    Pre-processing utilities, including section-geometry recording, unit-system utilities, mesh import helpers, mass/matrix utilities, and load transformation helpers.

  • anlys (_PlIAt6SJsEOJNqNV7O1Am) –

    Analysis utilities. Includes smartAnalyze for robust transient/static analysis with retries, algorithm switching, step splitting, and progress reporting.

  • post (_JH1ghO22gigh0FQ0x) –

    Post-processing utilities for collecting model information, eigen data, and response data, and for saving/loading output databases.

  • vis (_cBoELGMvxm9OS0JK) –

    Visualization utilities for model geometry, mode shapes, deformations, nodal responses, frame responses, shell responses, and continuum responses.

  • utils (_8v4aJVZZ2hL9fAWj6) –

    General helper tools, including example-model loading.

Example
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
  opsmat = OpenSeesMatlab();
  ops = opsmat.opensees;

  ops.wipe();
  ops.model('basic', '-ndm', 2, '-ndf', 3);
  ops.node(1, 0.0, 0.0);
  ops.node(2, 5.0, 0.0);
  ops.fix(1, 1, 1, 1);
  ops.fix(2, 0, 1, 0);

  % Define materials, sections, elements, loads, and analysis commands.
  % The calls follow OpenSees/OpenSeesPy-style command arguments.
  % ops.uniaxialMaterial(...);
  % ops.element(...);
  % ops.timeSeries(...);
  % ops.pattern(...);

  modelInfo = opsmat.post.getModelData();
  h = opsmat.vis.plotModel();

opensees SetAccess=private ¤

OpenSees command interface.

post SetAccess=private ¤

Post-processing interface.

vis SetAccess=private ¤

Visualization interface.

pre SetAccess=private ¤

Pre-processing interface.

anlys SetAccess=private ¤

Analysis management interface.

utils SetAccess=private ¤

General utility interface.

OpenSeesMatlab ¤

(mexName='OpenSeesMATLAB', mexDir='derived/')

Construct the main OpenSeesMatlab interface.

The constructor creates the OpenSees command wrapper first, then initializes visualization, post-processing, utility, analysis, and pre-processing helper objects that share the same parent interface.

Syntax
1
2
3
4
  opsmat = OpenSeesMatlab()
  opsmat = OpenSeesMatlab(mexName=name)
  opsmat = OpenSeesMatlab(mexDir=dir)
  opsmat = OpenSeesMatlab(mexName=name, mexDir=dir)

Input arguments:

  • mexName (string or char) –

    Name of the OpenSees MATLAB MEX module. Default is 'OpenSeesMATLAB'.

  • mexDir (string or char) –

    Directory containing the OpenSees MATLAB MEX module. Relative paths are resolved by OpenSeesMatlabBase relative to this class location when possible. Default is 'derived/'.

Example
1
2
3
4
5
6
  opsmat = OpenSeesMatlab();
  ops = opsmat.opensees;

  opsmatCustom = OpenSeesMatlab( ...
      mexName="OpenSeesMATLAB", ...
      mexDir="derived/");