Installation
August 5, 2026 ยท View on GitHub
Requirements
LADAC is developed for MATLAB and Simulink. The currently documented baseline is:
- MATLAB and Simulink R2023b or later
Newer releases may work, but compatibility is not guaranteed for every component. Older MATLAB releases may require exporting Simulink files to an older format.
Additional products are required only for particular workflows. Depending on the components used, these may include:
- MATLAB Coder
- Simulink Coder
- Embedded Coder
- Curve Fitting Toolbox
- MATLAB Compiler
The exact requirements are not yet recorded centrally for every LADAC component. If MATLAB reports a missing product, consult the local component documentation and the referenced functions.
Optional external software includes:
- FlightGear for visualization
- ArduPilot SITL for software-in-the-loop simulation
- QGroundControl, Mission Planner, or MAVProxy for interaction with ArduPilot
- TiGL/TiXI for selected CPACS-based geometry workflows
- Tornado for the corresponding aerodynamic interface
Clone LADAC
Clone LADAC together with its Git submodules:
git clone --recursive https://github.com/iff-gsc/LADAC.git
If LADAC has already been cloned without submodules:
cd LADAC
git submodule update --init --recursive
For a research or application repository, LADAC should normally be included as a Git submodule rather than copied:
git submodule add https://github.com/iff-gsc/LADAC.git modules/LADAC
git submodule update --init --recursive
Pinning LADAC to a specific commit is recommended for reproducible research and long-lived projects.
Add LADAC to the MATLAB path
In MATLAB:
addpath(genpath('/path/to/LADAC'))
To make the path persistent, use savepath or add the command to a project-specific initialization script.
A project-specific script is usually preferable because it keeps the required LADAC version and path explicit.
Avoid adding multiple LADAC checkouts to the MATLAB path at the same time.
Verify the installation
Run:
check_ladac
Then verify the Simulink libraries:
- Open Simulink.
- Open the Library Browser.
- Refresh the browser if necessary.
- Check that
LADACappears at the top level. - Open several sublibraries and verify that blocks can be inserted into a model.
The main library can also be opened directly:
open_system('ladac_lib')
Install LADAC-Examples
The easiest way to explore complete models is the separate LADAC-Examples repository:
git clone --recursive https://github.com/iff-gsc/LADAC-Examples.git
LADAC-Examples includes LADAC and additional example data as submodules. Follow its README for the currently available simulations.
Updating
When LADAC is used as a submodule, update deliberately and test the project after changing the pinned commit:
cd modules/LADAC
git fetch
git checkout <desired-commit-or-tag>
cd ../..
git add modules/LADAC
git commit
After switching LADAC versions, run:
git submodule update --init --recursive
and execute the LADAC and project-specific tests.
Version compatibility
Some interfaces depend on matching versions in multiple repositories. This is particularly important for the generated MATLAB/Simulink controller interface to the ArduPilot fork. Use versions or commits that are documented as compatible; otherwise, interface variables, generated files, or parameter handling may differ.
A formal compatibility matrix is not yet part of LADAC. Until one is introduced, record the exact LADAC, LADAC-Examples, MATLAB, and ArduPilot commit identifiers in each project.