Skip to content

๐Ÿš€ OpenSeesMatlabยค

OpenSeesMatlab is a MATLAB interface for the OpenSees finite element framework. It is designed to provide a more natural MATLAB workflow for structural modeling, analysis, post-processing, and visualization, while preserving the full power of OpenSees.

โœจ The project aims to make OpenSees easier to use in MATLAB by offering:

  • a clearer and more consistent command interface
  • MATLAB-friendly data access
  • integrated visualization and documentation tools


โšก Quick Startยค

Using OpenSeesMatlab is straightforward:

  • The opensees module provides wrappers for almost all OpenSees commands, keeping the same parameter parsing style as OpenSees/OpenSeesPy.
  • Modules such as vis, post, and pre extend functionality with visualization, post-processing, and preprocessing tools, which can be used as needed.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
opsMat = OpenSeesMatlab();   % Get instance
ops = opsMat.opensees;       % Access OpenSees command interface

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);

A = 2.e-3;
Iz = 1.6e-5;
E = 200.e9;
ops.element('elasticBeamColumn', 1, 1, 2, A, E, Iz, 1)

...

opsMat.post.getModelData();  % Collect model data
opsMat.vis.plotModel();      % Visualize the model

๐ŸŒŸ Featuresยค

  • ๐Ÿงฑ .opensees โ€” MATLAB interface to all OpenSees commands (fully compatible syntax), implemented via MATLAB MEX wrapping of the OpenSees C++ library
  • ๐Ÿ“Š .post โ€” post-processing module for extracting, organizing, and exporting analysis results
  • ๐Ÿ—๏ธ .pre โ€” preprocessing tools for model definition, units, and data preparation
  • ๐ŸŽจ .vis โ€” visualization engine for models, responses, and mode shapes
  • ๐Ÿ“ˆ .anlys โ€” high-level analysis workflows and utilities
  • ๐Ÿ› ๏ธ .utils โ€” auxiliary helper functions and common utilities

๐Ÿ“Œ Notesยค

OpenSeesMatlab is intended for users who want to combine:

  • the computational power of OpenSees โš™๏ธ
  • with the scripting, visualization, and data-processing capabilities of MATLAB ๐Ÿ“Š
  • MATLAB R2023a or later, running on Windows (currently supported on Windows only)

๐Ÿ“š The project is actively evolving โ€” more examples, utilities, and documentation will be added over time.

โš ๏ธ This is a non-profit open-source project. Use at your own risk.