Common
Common is a submodule of msa-toolkit repository.
A submodule is a separate repo, with its own commits and history, of your main project. It is shown as a subdirectory of the main repo, but technically is not just a subdirectory. This is due to the fact that the submodule and the repo are treated separately.
For example, the main repo we are going to use is msa-toolkit
. This repo has a submodule which is common
where all the common files, data, and functions are stored.
Submodule architecture
The submodule is divided into four main folders:
-
classes: in this folder you can find the classes over which are defined methods and variables. They are the "kernel" of the toolkit.
-
functions: here you can find all the functions to make msa toolkits working; there are plenty of functions, from ode functions to functions which generates standardized plots for reports.
-
missions: here all the missions together with all data are stored. By opening
missionConfig.m
you can choose the mission.mission = Mission(); mission.name = '2025_Orion_Portugal_October';
-
settings: this folder only contains
odeConfig.m
, which contains ODE settings.
Caution
Don't touch odeConfig.m
if you don't know what you're doing, from this configuration file depend ODE-based script, such ad ballistic.m
, and so do all the toolkits!
Inside the mission folder, you can find all the missions and their data and configurations file. Each folder has the name of the mission in a specific format/order. This format is the one you have to use when specifying the mission in missionConfig.m
.
% YEAR_ROCKETNAME_LOCATION_MONTH
mission.name = '2025_Orion_Portugal_October';
Inside this folder you will find:
-
config: there are four files of config:
-
environmentConfig.m
: it sets environmental variables for the launch and they are independent from the rocket itself (latitude, longitude, ...) -
paraConfig.m
: configs for all parachutes onboard, including both the main and parafoil -
rocketConfig.m
: general parameters of the rocket divided for each bay (nose, parafoil, recovery, ...) -
windConfig.m
: wind custom and wind matlab configs
-
-
data: all the
.mat
files are stored; they collect all the data which will be used by toolkits
Note
Classes were introduced during the 2024 refactoring of the toolkit! This new architecture enhances robustness, automation, and includes auto-generated documentation for classes.
Setting up common
Common can be used as a standalone repository or be configured as submodule to work with your existing project
Warning
It is strongly recommended to setup an SSH key before using common. The following examples show links to clone common using ssh. You can still clone using https by pressing the 'clone' button in the repository page
Setting up submodule
Open a terminal in your repository and run:
git submodule add git@git.skywarder.eu:skyward/matlab-dependencies/common.git
After adding the submodule, push your changes et voila! Common has been added to your repo.
Cloning full standalone
Open a terminal in your target folder and run:
git clone git@git.skywarder.eu:skyward/matlab-dependencies/common.git
You have no cloned the full version of common and can access its data
Cloning light version
Common various binary files (i.e. aerodynamic coefficients, motor data...) which make the repository very large.
If you are only interested in data classes and utilities, without the data files, you can clone common without git LFS and get a significantly smaller repo
When inside the desired folder, run the following commands:
mkdir common && cd common
git init -b main
git config --local filter.lfs.smudge "git-lfs smudge --skip %f"
git config --local filter.lfs.process "git-lfs filter-process --skip"
git remote add origin git@git.skywarder.eu:skyward/matlab-dependencies/common.git
git pull origin main
This will clone common without binary files
Projects
Constellation programme
2025
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
Orion |
|
Pont de Sor (POR) | TBD | |
Orion |
|
Roccaraso (ITA) | TBD |
2024
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
Lyra |
|
Pont de Sor (POR) | 12/10/2024 | |
Lyra |
|
Roccaraso (ITA) | 14/09/2024 |
2023
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
Gemini |
|
Pont de Sor (POR) | 17/10/2023 | |
Gemini |
|
Roccaraso (ITA) | 19/09/2023 |
2022
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
Pyxis | Pont de Sor (POR) | 13/10/2022 | ||
Pyxis | Roccaraso (ITA) | 17/09/2022 |
2021
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
Lynx | Pont de Sor (POR) | 13/10/2021 | ||
Lynx | Roccaraso (ITA) | 18/09/2021 |
Previous projects
2019
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
HermesV1 | tbd | Roccaraso (ITA) | 15/11/2019 |
2017
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
R2A | tbd | Sardinia (ITA) | 07/2017 |
2014
Project | Engine type | Launch site | Date | Status |
---|---|---|---|---|
R1X | tbd | Roccaraso (ITA) | 07/2014 |