From c013a61aaace9ea0fd3ec5b9712f6c120cb91e38 Mon Sep 17 00:00:00 2001 From: Thomas Lambert <t.lambert@uliege.be> Date: Thu, 14 Dec 2023 14:52:14 +0100 Subject: [PATCH] refact: add octave-atmosisa lib to codebase --- .gitmodules | 3 +++ CHANGELOG.md | 3 +++ README.md | 10 +++++++++- src/.miss_hit | 6 ++++++ src/libs/octave-atmosisa | 1 + src/rotare.m | 4 ++++ 6 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 src/.miss_hit create mode 160000 src/libs/octave-atmosisa diff --git a/.gitmodules b/.gitmodules index d6a9b88..2846d88 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "src/libs/matlab_airfoil_toolbox"] path = src/libs/matlab_airfoil_toolbox url = ../../am-dept/matlab_airfoil_toolbox +[submodule "src/libs/octave-atmosisa"] + path = src/libs/octave-atmosisa + url = https://github.com/lentzi90/octave-atmosisa diff --git a/CHANGELOG.md b/CHANGELOG.md index c48b7ad..e135975 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,9 @@ to [Semantic Versioning][sem_ver]. ### Changed +- Add `octave-atmosisa` in libs so we can use it if _Aerospace Toolbox_ is not + installed + ### Deprecated ### Removed diff --git a/README.md b/README.md index 60a40a7..673db5c 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ A more exhaustive list of features can be found in the [complete documentation][rotare-doc] that will be made available with version 1.0.0. ### Types of rotors + - [x] Helicopters main or tail rotors - [x] Aircraft propellers - [ ] Wind/tidal turbines @@ -65,6 +66,13 @@ Rotare implements 4 different solvers. Each one solves a different form of the BEMT equations. Note that some of these solvers use additional hypotheses and may not provide valid results in all situations. +## Dependencies + +Rotare currently requires the _Signal Processing Toolbox_ in order to use the +`findpeaks` function to find the stall point from the airfoil polars. A +workaround is being developed to so Rotare can work without additional +toolboxes. + ## Installation and utilization ### Download and install @@ -120,7 +128,7 @@ troubleshooting section of the documentation. If you encounter any other issue with this code, please check [the issue tracker][rotare-issues] and fill a new issue report if applicable. You can also -contact me directly at tlambert@uliege.be. +contact me directly at <tlambert@uliege.be>. ## Other diff --git a/src/.miss_hit b/src/.miss_hit new file mode 100644 index 0000000..d326fea --- /dev/null +++ b/src/.miss_hit @@ -0,0 +1,6 @@ +# miss_hi style checker +# (https://florianschanda.github.io/miss_hit/style_checker.html) +# + +# Exclude libraries directory from style checking +exclude_dir: "libs" diff --git a/src/libs/octave-atmosisa b/src/libs/octave-atmosisa new file mode 160000 index 0000000..05ed802 --- /dev/null +++ b/src/libs/octave-atmosisa @@ -0,0 +1 @@ +Subproject commit 05ed802f013be4dfe86ac0d1c21e141fb702790f diff --git a/src/rotare.m b/src/rotare.m index 0a80671..0823eb6 100644 --- a/src/rotare.m +++ b/src/rotare.m @@ -51,11 +51,15 @@ function [Results] = rotare(configFile) % clearvars -except configFile; close all; clc; + % Add everything to path % BUT, only include root of airfoil_data, otherwise issue with aeropy examples in venv addpath(genpath('.')); rmpath(genpath('./airfoil_data/')); addpath('./airfoil_data/'); + if license('test', 'Aerospace_Toolbox') + rmpath('./libs/octave-atmosisa/'); + end verifyinstall; % Check if packages (libs) and required functions are presents on the system -- GitLab