Skip to content

Commit 81cedaf

Browse files
committed
Maintenance cycle R2024b
1 parent 6834ff8 commit 81cedaf

File tree

211 files changed

+1562
-58
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

211 files changed

+1562
-58
lines changed

.gitattributes

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
*.slmx binary merge=mlAutoMerge
1717
*.sltx binary
1818
*.slxc binary
19-
*.slx binary merge=mlAutoMerge
19+
*.slx binary merge=mlAutoMerge linguist-language=Simulink
2020
*.slxp binary
2121

2222
## Other common binary file types

.github/workflows/ci.yml

+111
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
name: MATLAB Build
2+
3+
# Controls when the action will run.
4+
on:
5+
push:
6+
branches: [ release ]
7+
pull_request:
8+
branches: [ release ]
9+
workflow_dispatch:
10+
11+
# Add permission to write GitHub pages
12+
permissions:
13+
contents: write
14+
pages: write
15+
id-token: write
16+
17+
jobs:
18+
test:
19+
strategy:
20+
fail-fast: false
21+
matrix:
22+
MATLABVersion: [R2024a,R2024b]
23+
runs-on: ubuntu-latest
24+
steps:
25+
# Checks-out your repository
26+
- uses: actions/checkout@v4
27+
28+
# Sets up a display server
29+
- name: Start display server
30+
if: ${{ always() }}
31+
run: |
32+
sudo apt-get install xvfb
33+
Xvfb :99 &
34+
echo "DISPLAY=:99" >> $GITHUB_ENV
35+
36+
# Sets up MATLAB
37+
- name: Setup MATLAB
38+
uses: matlab-actions/setup-matlab@v2
39+
with:
40+
release: ${{ matrix.MATLABVersion }}
41+
products: Simulink Symbolic_Math_Toolbox
42+
43+
44+
# Run all the tests
45+
- name: Run SmokeTests
46+
uses: matlab-actions/run-command@v2
47+
with:
48+
command: openProject(pwd); RunAllTests;
49+
50+
# Upload the test results as artifact
51+
- name: Upload TestResults
52+
if: ${{ always() }}
53+
uses: actions/upload-artifact@v4
54+
with:
55+
name: TestResults_${{ matrix.MATLABVersion }}
56+
path: ./public/*
57+
overwrite: true
58+
59+
badge:
60+
if: ${{ always() }}
61+
needs: [test]
62+
strategy:
63+
fail-fast: false
64+
runs-on: ubuntu-latest
65+
steps:
66+
67+
# Checks-out your repository
68+
- uses: actions/checkout@v4
69+
70+
# Sets up R2023b
71+
- name: Setup MATLAB
72+
uses: matlab-actions/setup-matlab@v2
73+
with:
74+
release: R2024b
75+
76+
# Download the test results from artifact
77+
- name: Download All TestResults
78+
uses: actions/download-artifact@v4
79+
with:
80+
path: public
81+
pattern: TestResults_*
82+
merge-multiple: true
83+
84+
# Create the test results badge
85+
- name: Run PostSmokeTest
86+
uses: matlab-actions/run-command@v2
87+
with:
88+
command: openProject(pwd); PostSmokeTest;
89+
90+
# Deploy reports to GitHub pages
91+
- name: Setup Pages
92+
uses: actions/configure-pages@v5
93+
- name: Upload pages artifact
94+
uses: actions/upload-pages-artifact@v3
95+
with:
96+
path: public
97+
- name: Deploy to GitHub Pages
98+
id: deployment
99+
uses: actions/deploy-pages@v4
100+
101+
# Commit the JSON for the MATLAB releases badge
102+
- name: Commit changed files
103+
continue-on-error: true
104+
run: |
105+
git config user.name "${{ github.workflow }} by ${{ github.actor }}"
106+
git config user.email "<>"
107+
git pull
108+
git add Images/TestedWith.json
109+
git commit Images/TestedWith.json -m "Update CI badges ${{ github.ref_name }}"
110+
git fetch
111+
git push

.gitignore

+22-6
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,15 @@
77
*.slx.r*
88
*.mdl.r*
99

10-
# Derived content-obscured files
11-
*.p
10+
# MATLAB Drive
11+
*.MATLABDriveTag
1212

13-
# Compiled MEX files
13+
# Compiled files
1414
*.mex*
15+
*.p
16+
17+
# Compressed files
18+
*.zip
1519

1620
# Packaged app and toolbox files
1721
*.mlappinstall
@@ -23,13 +27,25 @@
2327
# Generated helpsearch folders
2428
helpsearch*/
2529

26-
# Code generation folders
30+
# Defined Simulink cache folder
31+
Utilities/SimulinkCache/*
32+
33+
# Standard code generation folders
2734
slprj/
2835
sccprj/
2936
codegen/
3037

38+
# Code generation file
39+
*.eep
40+
*.elf
41+
*.hex
42+
*.bin
43+
3144
# Cache files
3245
*.slxc
3346

34-
# Cloud based storage dotfile
35-
.MATLABDriveTag
47+
# Project settings
48+
Utilities/ProjectSettings.mat
49+
50+
# GitLab page folder
51+
public/

.gitlab-ci.yml

+87
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
stages:
2+
# Set up two testing paths
3+
- setup
4+
- test
5+
- deploy
6+
- release
7+
8+
setup-job:
9+
tags:
10+
- matlab
11+
stage: setup
12+
script:
13+
- cd ..
14+
- if (test-path utilities) { rm -r -force utilities }
15+
- git clone [email protected]:modular-curriculum-content/utilities.git
16+
- cd $CI_PROJECT_NAME
17+
allow_failure: false
18+
19+
20+
smoke-test:
21+
# Smoke tests should run all the time
22+
tags:
23+
# Add additional tags like (e.g. - arduino) as required
24+
# Make sure that the runner you plan to use matches the tags
25+
- matlab
26+
stage: test
27+
parallel:
28+
matrix:
29+
- VERSION: [R2024a,R2024b]
30+
script:
31+
- Set-Alias -Name matlab -Value "C:\Program Files\MATLAB\$VERSION\bin\matlab.exe"
32+
- matlab -batch "openProject(pwd);RunAllTests"
33+
when: always
34+
allow_failure: true
35+
artifacts:
36+
name: "$VERSION"
37+
paths:
38+
- public/*
39+
when: always
40+
41+
42+
pages:
43+
tags:
44+
- matlab
45+
stage: deploy
46+
script:
47+
- matlab -batch "openProject(pwd);PostSmokeTest;"
48+
artifacts:
49+
paths:
50+
- public
51+
52+
file-test:
53+
tags:
54+
- matlab
55+
stage: release
56+
script:
57+
- matlab -batch "proj = openProject(pwd);
58+
addpath(proj.RootFolder+'/InternalFiles/Tests/CI');
59+
results = runtests('OpenCloseFileTest.m');
60+
disp(table(results)); assertSuccess(results);"
61+
rules:
62+
# This test should always run when merging to main
63+
# And be available for manual running on any push
64+
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH
65+
when: always
66+
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME != $CI_DEFAULT_BRANCH
67+
when: manual
68+
allow_failure: true
69+
70+
release-testing:
71+
tags:
72+
- matlab
73+
stage: release
74+
script:
75+
- matlab -batch "proj = openProject(pwd);
76+
cd ..;
77+
addpath(genpath(fullfile('utilities','TestingResources')));
78+
addpath(genpath(fullfile('utilities','Tools')));
79+
runCMTests"
80+
rules:
81+
# This test should always run when merging to main
82+
# And be available for manual running on any push
83+
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH
84+
when: always
85+
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME != $CI_DEFAULT_BRANCH
86+
when: manual
87+
allow_failure: true

CONTRIBUTING.md

+27

Images/2-mass-spring-damper.gif

1 MB

Images/FBDMultipleMSD.png

154 KB

Images/doubleMSDFreeBodyDiagram.png

58.6 KB

Images/image_0.png

955 Bytes

Images/image_1.png

4.07 KB

Images/image_2.png

1.1 KB

Images/image_3.png

36.7 KB

Images/image_4.gif

4.29 MB

Images/image_5.gif

2.57 MB

Images/image_6.png

16 KB

Images/image_7.png

2.13 KB

Images/image_8.png

4.07 KB

Images/mass_spring_damper_FBD.png

54.9 KB
14.3 KB
32.7 KB
Binary file not shown.
29.7 KB
Binary file not shown.
53.3 KB
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
27.7 KB
Binary file not shown.
77.1 KB
Binary file not shown.

LICENSE.md

+27

MainMenu.mlx

6.9 MB
Binary file not shown.

Models/mfb.slx

29.6 KB
Binary file not shown.

Models/mfbDouble.slx

29.3 KB
Binary file not shown.

Models/msd.slx

28.6 KB
Binary file not shown.

Models/msdDouble.slx

50.1 KB
Binary file not shown.

Models/msdDoubleBuilding.slx

69.2 KB
Binary file not shown.

Models/msdDoubleSimulationOutput.slx

30.9 KB
Binary file not shown.

Models/msdDoubleVectorized.slx

29.1 KB
Binary file not shown.

Models/msdMultiple.slx

32.5 KB
Binary file not shown.

Models/msdMultipleBuilding.slx

82.8 KB
Binary file not shown.

Models/msdMultipleFreq.slx

31.3 KB
Binary file not shown.

Models/msdSimulationOutput.slx

28.2 KB
Binary file not shown.

Models/msdTune.slx

77 KB
Binary file not shown.

0 commit comments

Comments
 (0)