An open API service indexing awesome lists of open source software.

https://github.com/mathworks-teaching-resources/engineering-problem-solving

This curriculum module contains interactive examples that emphasize the general approach and methodologies of problem-solving within the field of engineering. The fundamental concepts of systems thinking/engineering will be used as the basis to solve problems.
https://github.com/mathworks-teaching-resources/engineering-problem-solving

analysis capstone courseware cwm design electrical-engineering intro-to-engineering matlab mbd mbse mechanical-engineering problem-solving requirements simscape simulink systems systems-engineering systems-thinking validation verification

Last synced: 3 months ago
JSON representation

This curriculum module contains interactive examples that emphasize the general approach and methodologies of problem-solving within the field of engineering. The fundamental concepts of systems thinking/engineering will be used as the basis to solve problems.

Awesome Lists containing this project

README

          

# Engineering Problem Solving

[![View on File Exchange](https://www.mathworks.com/matlabcentral/images/matlab-file-exchange.svg)](https://www.mathworks.com/matlabcentral/fileexchange/180430-engineering-problem-solving) or [![Open in MATLAB Online](https://www.mathworks.com/images/responsive/global/open-in-matlab-online.svg)](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Engineering-Problem-Solving&project=EngineeringProblemSolving.prj&file=README.mlx)

[![MATLAB Versions Tested](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FMathWorks-Teaching-Resources%2FEngineering-Problem-Solving%2Frelease%2FImages%2FTestedWith.json)](https://MathWorks-Teaching-Resources.github.io/Engineering-Problem-Solving)

**Curriculum Module**

_Created with R2024a. Compatible with R2024a and later releases._

# Information

This curriculum module contains interactive [MATLAB® live scripts](https://www.mathworks.com/products/matlab/live-editor.html), [Simulink®](https://www.mathworks.com/products/simulink.html), and [Simscape™](https://www.mathworks.com/products/simscape.html) models that provide a means to solving multi\-disciplinary engineering problems through systems thinking. The focus will be on problem solving for engineered systems that are applicable from introductory engineering to capstone/senior design.

## Background

The Engineering Problem Solving courseware features three interactive scripts; the first explores problem solving philosophy with emphasis on engineering and concepts that involve systems engineering, the second explores creating and evaluating problem statements and requirements, and the third explores breaking down a complex problem into tangible parts that can be worked on and applying techniques learned in the previous scripts.

The instructions inside the live scripts will guide you through the exercises and activities. Get started with each live script by running it one section at a time. To stop running the script or a section midway (for example, when an animation is in progress), use the EndIcon.png Stop button in the **RUN** section of the **Live Editor** tab in the MATLAB Toolstrip.

## Contact Us

Contact the [MathWorks Educator Content Development Team](mailto:onlineteaching@mathworks.com) if you would like to provide feedback, or if you have a question.

## Prerequisites

This module assumes knowledge of some problem solving theory, calculus, physics, and basic MATLAB skills. There is some MATLAB knowledge required for these scripts and models, and you could use [MATLAB Onramp](https://matlabacademy.mathworks.com/details/matlab-onramp/gettingstarted) and [Simulink Onramp](https://matlabacademy.mathworks.com/details/simulink-onramp/simulink) as resources to acquire familiarity with MATLAB syntax, live scripts, and Simulink/Simscape models. [Simscape Onramp](https://matlabacademy.mathworks.com/details/simscape-onramp/simscape) can be used as an optional resource to gain more skills.

## Getting Started
### Accessing the Module
### **On MATLAB Online:**

Use the [OpenInMO.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Engineering-Problem-Solving&project=EngineeringProblemSolving.prj) link to download the module. You will be prompted to log in or create a MathWorks account. The project will be loaded, and you will see an app with several navigation options to get you started.

### **On Desktop:**

Download or clone this repository. Open MATLAB, navigate to the folder containing these scripts and double\-click on [EngineeringProblemSolving.prj](https://github.com/MathWorks-Teaching-Resources/Engineering-Problem-Solving/blob/main/EngineeringProblemSolving.prj). It will add the appropriate files to your MATLAB path and open an app that asks you where you would like to start.

Ensure you have all the required products (listed below) installed. If you need to include a product, add it using the Add\-On Explorer. To install an add\-on, go to the **Home** tab and select AddOnsIcon.png **Add-Ons** > **Get Add-Ons**.

## Products

*MATLAB®* is used throughout. Tools from *Simulink®*, *Simscape™*, *Requirements Toolbox*, and *Simulink Test* are used frequently as well. The *Image Processing Toolbox* is only used for the [*imread*](https://www.mathworks.com/help/matlab/ref/imread.html) and [*imresize*](https://www.mathworks.com/help/matlab/ref/imresize.html) functions. *System Composer* is only used for visualization of system architectures. *Embedded Coder*, *MATLAB Support Package for Arduino Hardware*, and *Simulink Support Package for Arduino Hardware* are used for a code generation and deployment example. *ThingSpeak* is only used for a task on retrieving data from the cloud. If your module uses a product not on this list, you can find it [*here*](https://www.mathworks.com/products.html).

# Scripts

## [**IntroToProblemSolving.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Engineering-Problem-Solving&project=EngineeringProblemSolving.prj&file=Scripts/IntroToProblemSolving.mlx)
| | **In this script, students will...**
| **Academic disciplines**
|
| :-: | :-- | :-- |
| TrafficPattern.png
| $\bullet$ Explore the fundamentals of problem solving and systems engineering
$\bullet$ Enhance systems thinking skills by utilizing mathematical models
$\bullet$ Gain insights into methodologies for effectively approaching and solving problems
$\bullet$ Engage in project planning and understanding customer needs
|
$\bullet$ All Engineering Disciplines
|

## [**DefiningRequirements.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Engineering-Problem-Solving&project=EngineeringProblemSolving.prj&file=Scripts/DefiningRequirements.mlx)
| | **In this script, students will...**
| **Academic disciplines**
|
| :-: | :-- | :-- |
| RequirementsClipboard.png
| $\bullet$ Gain experience in defining, interpreting, and analyzing problem statements
$\bullet$ Explore different types of requirements and identify what constitutes a useful requirement
$\bullet$ Evaluate a set of requirements for a sample problem statement
$\bullet$ Connect, execute, and visualize requirements and tests with mathematical models
$\bullet$ Incorporate regulatory standards into the process of writing and testing requirements
|
$\bullet$ All Engineering Disciplines
|

## [**SystemsDecomposition.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Engineering-Problem-Solving&project=EngineeringProblemSolving.prj&file=Scripts/SystemsDecomposition.mlx)
| | **In this script, students will...**
| **Academic disciplines**
|
| :-- | :-- | :-- |
| Decomposition.png
| $\bullet$ Utilize the V\-model to decompose a complex problem
$\bullet$ Explore system architectures and interfaces
$\bullet$ Gain experience in decomposing problems into actionable tasks
$\bullet$ Conduct verification activities to ensure compliance with design criteria
$\bullet$ Perform a trade study for drone battery selection
$\bullet$ Review automatic code generation process from a Simulink model
|
$\bullet$ All Engineering Disciplines
|

## [**IntegrationAndTest.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Engineering-Problem-Solving&project=EngineeringProblemSolving.prj&file=Scripts/IntegrationAndTest.mlx)
| | **In this script, students will...**
| **Academic disciplines**

| :-- | :-- | :-- |
| Integration.png
| $\bullet$ Utilize the V\-model to integrate a complex solution
$\bullet$ Explore system architectures and interfaces
$\bullet$ Gain expertise in integrating components and conducting system\-level testing
$\bullet$ Implement an IoT solution to incorporate live weather data for quadcopter mission
$\bullet$ Conduct validation activities to ensure compliance with design criteria and customer needs
$\bullet$ Investigate the benefits of digital twins for a quadcopter and a hydraulic pump
|
$\bullet$ All Engineering Disciplines
|

# License

The license for this module is available in the [LICENSE.md](https://github.com/MathWorks-Teaching-Resources/Engineering-Problem-Solving/blob/main/LICENSE.md).

# Related Courseware Modules
## [Introduction to Engineering with Arduino](https://www.mathworks.com/matlabcentral/fileexchange/156477-introduction-to-engineering-with-arduino)
| image_7.png
| **Available on:**
[OpenInFX.png](https://www.mathworks.com/matlabcentral/fileexchange/156477-introduction-to-engineering-with-arduino)
[OpenInMO.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Intro-To-Engineering&project=intro-to-engineering.prj&file=README.mlx)
[GitHub](https://github.com/MathWorks-Teaching-Resources/Intro-To-Engineering)
|
| :-- | :-- |

## [Battery Systems: introduction](https://www.mathworks.com/matlabcentral/fileexchange/172770-battery-systems-introduction?s_tid=srchtitle)
| image_10.png
| **Available on:**
[OpenInFX.png](https://www.mathworks.com/matlabcentral/fileexchange/172770-battery-systems-introduction?s_tid=srchtitle)
[OpenInMO.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Battery-Systems&project=BatterySystem.prj&file=README.mlx)
[GitHub](https://github.com/MathWorks-Teaching-Resources/Battery-Systems)
|
| :-: | :-- |

## [Mass\-Spring\-Damper Systems](https://www.mathworks.com/matlabcentral/fileexchange/94585-mass-spring-damper-systems?s_tid=srchtitle)
| image_13.png
| **Available on:**
[OpenInFX.png](https://www.mathworks.com/matlabcentral/fileexchange/94585-mass-spring-damper-systems?s_tid=srchtitle)
[OpenInMO.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Mass-Spring-Damper-Systems&project=mass-spring-damper-systems.prj&file=README.mlx)
[GitHub](https://github.com/MathWorks-Teaching-Resources/Mass-Spring-Damper-Systems)
|
| :-- | :-- |

Or feel free to explore our other [modular courseware content](https://www.mathworks.com/matlabcentral/fileexchange/?q=tag%3A%22courseware+module%22&sort=downloads_desc_30d).

# Educator Resources
- [Educator Page](https://www.mathworks.com/academia/educators.html)

# Contribute

Looking for more? Find an issue? Have a suggestion? Please contact the [MathWorks Educator Content Development Team](mailto:%20onlineteaching@mathworks.com). If you want to contribute directly to this project, you can find information about how to do so in the [CONTRIBUTING.md](https://github.com/MathWorks-Teaching-Resources/Engineering-Problem-Solving/blob/main/CONTRIBUTING.md) page on GitHub.

*©* Copyright 2025 The MathWorks, Inc