Airspace-Encounter-Models / em-core

Software and data used by multiple repositories in the Aerospace Encounter Models organization.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[ENHANCEMENT] Update run_dynamics_fast to use C++ MEX API instead of C API with mxArray

aweinert-MIT opened this issue · comments

Relation

The MATLAB mex function, run_dynamics_fast is used by multiple repositories, including em-model-manned-bayes to simulate aircraft trajectories with a 6DOF physics model.

The code currently uses the MATLAB C Matrix API which works with the mxArray data structure.

Description

Update the software to use the more modern C++ MEX API. If appropriate, casts should be updated to modern C++ style as well, per the Google C++ Style Guide on casting.

Alternatives

The original source for run_dynamics_fast can be traced back to over a decade ago and the code does not take advantage of modern C++ features to improve robustness, efficiency, and ease of use. For long term substantiality of the code, an upgrade to the C++ MEX API is recommended.

Additional

Issues #12 , #11 , #10 also address run_dynamics_fast but these other issues are expected to require significantly less resources to complete than this task focused on the C++ MEX API.

While the contributing guidelines does not define a style guide for C++, we currently recommend the Google C++ Style Guide for this issue.