Log in

Introducing the MATLAB® Toolbox for Cloud Engineering Simulation with OnScale

By Chloe Allison 30 September 2020

OnScale is excited to announce the release of a new MATLAB® Toolbox! Created with engineers in mind, the toolbox aims to boost productivity and allow for customizable simulation workflows while benefiting from the powerful OnScale multiphysics solvers and the convenience of scalable HPC (High Performance Computing) cloud resources.

Built by Engineering for Engineers

OnScale’s mission is to give engineers across the world access to world-class CAE tools and HPC resources they need to innovate, solve complex problems, and ultimately bring next-generation technologies to market. Our latest endeavor is a comprehensive toolbox created in MATLAB®, which gives users the ability to build, submit and post process OnScale simulations all from the MATLAB® environment.

The toolbox is designed to give engineers more freedom and customization in their simulation workflows and to create user-friendly way for non-OnScale users to build and run FEA (Finite Element Analysis) projects easily. The combination of our computer-aided engineering (CAE) software tools with the limitless capabilities of a scalable cloud High Performance Computing (HPC) and now a streamlined toolbox capable of processing massive design studies is what we believe to be the Future of Engineering™.

The making of the toolbox

The MATLAB® Toolbox for OnScale utilizes Object-Oriented Programming (OOP), which uses “objects” containing data and “methods” to perform operations on them. OOP is a popular programming model due to its simplicity and flexibility.

The aim when creating the toolbox was to provide engineers with all the basic tools for a simulation workflow and give them the ability to customize and add to the code to fit their requirements. The toolbox was designed by our very own Application Engineers who are tuned to the needs of OnScale users.

The toolbox contains multiple classes for each section of the simulation workflow. There will be a series of blog posts out soon detailing toolbox structure. Here is a quick overview:

  • Account – Stores user credentials and account settings
  • SimMaterials – Contains methods for storing material data
  • BaseSim, GeneralSim, RFSim – Contains methods for different types of model creation based on different applications. BaseSim is the parent class for all model creation and the application specific classes like the GeneralSim and RFSim subclasses inherit from it.
  • Job – Stores job information and contains methods for submitting jobs to the cloud and downloading results.
  • PostProcess – Contains methods for post processing, including calculations, KPI extraction and plotting.

Cloud Engineering

Overview of features

The first version of the toolbox has all the basic functionality required for a general simulation workflow. However, there is more complex functionality on our roadmap to be released soon.

Model Creation

The toolbox contains methods for all aspects of model creation, from creating geometry and assigning materials, to adding loads and outputs. Our future goal is to create more application-specific workflows. We currently have a general workflow and an RF workflow. A SoftMEMS and PMUT workflow are coming soon.

FBAR model

Active FBAR model created using the RF workflow


Models can be created using CAD or primitive shapes. Models can be also loaded from an existing input file (*.flxinp) and parameters can be controlled via MATLAB® without having to open the OnScale User Interface (UI).

Job Submission

The toolbox uses the OnScale Command Line Interface (CLI) to submit jobs in the cloud. The CLI uses JavaScript Object Notation (JSON) format to transmit job data to the cloud. JSON can be complex to unfamiliar users, the toolbox streamlines this process in a couple of lines of code. Currently the types of jobs supported are:

  • Single jobs
  • Recursive Sweeps
  • Sweeps via CSVs
  • MPI (Message Passing Interface)
  • MNMPI (Multi-Node Message Passing Interface)
  • GCMPI (General Connectivity Message Passing Interface)


Postprocessing in a UI can be repetitive and time consuming. This toolbox is the solution for such tasks. There are a vast number of common post processing methods for basic calculations such as impedance, FFT (Fast Fourier Transform), and more complex methods to extract Key Performance Indicators (KPIs) like bandwidth and center frequency. The greatest thing about post processing using the toolbox is that sweeps with 100s or 1000s of simulations are automatically processed in one line of code without the need for loops.

Cloud Engineering

Impedance plot generated from 8 simulation batch

Productivity Features

The first productivity feature is the automatic keypointing option. This method detects all in-plane surfaces and adds keypoints to ensure the geometry is accurately meshed. This saves a lot of time and effort for complex structures.

Cloud Simulation

Plot of automatic keypointing


Another productivity feature is the ability to slice primitive models. This also saves engineers the time of building two separate models for 2D and 3D. Now only one line of code can generate a 2D version of a 3D model.

3D Model

Plot of slicing capability (Top: 3D model, Bottom: 2D sliced model)


The toolbox has also been designed so that engineers can easily create hybrid mesh models with both structured and unstructured grids. This functionality is available in the OnScale UI but is complex to set up. The toolbox simplifies this process drastically.

To get your hands on the toolbox, head over to our Getting Started documentation. If you have any feedback or feature requests don’t hesitate to get in touch via our forum.

For a live demo of the toolbox check out our MATLAB® Toolbox for Cloud Engineering Simulation with OnScale Webinar.

Enjoy working with our toolbox and don’t hesitate to let us know what features you most want next!

Chloe Allison
Chloe Allison

Chloe Allison is an Application Engineer at OnScale. She received her MA in Electrical and Electronics Engineering from the University of Strathclyde. As part of our engineering team Chloe assists with developing applications, improving our existing software and providing technical support to our customers.