プロペラ設計プログラムです。誘導損失最小のプロペラが設計できます。 E.E.Larrabeeの設計法です。
Larrabeeの方法ではPrandtlの理論を用いていています。 円盤荷重が0のときに厳密に成立し、低円盤荷重のプロペラに適応しても 誤差が生じないと言われています。
高円盤荷重の時には適さないので注意してください。
Larrabeeの手法のプログラムとしてはXROTORなど有用なオープンソースなソフトがあります。 しかし、読みやすい形でソースが公開されることで、 プロペラ設計への敷居が下がれば良いと思い公開します。
Octaveで書いています。確認していませんが、おそらくMatlabでも動くと思います。 大きく分けて3つの構成で出来ています。
- 設計プログラム
- 簡易設計プログラム
- 設計点以外での解析
主なファイルは設計プログラムのためのものです。
簡易設計プログラムはSimple-Larrabeeフォルダに入っているものです。
ややこしいことせずに論文のまま素直に書き下したものです。
Larrabee.mファイルの中身の設計条件を編集してOctave上から$ Larrabee
と打ち込んでください。
メインの方の使い方もOctave(Matlab)からLarrabee.mを読み込んでください。
$ Larrabee
とするだけです。Larrabee_***.mのファイル群はLarrabee.mのサブルーチンです。
Larrabee.m内のそれぞれのサブルーチンをコメントアウトすることによってそれぞれの機能の
有無を設定できます。
- 'Larrabee_input'
- 'Larrabee_airfoil_ini'
- 'Larrabee_culc'
だけ回せば動きます。 Larrabee_input.mの中身がプロペラの設定値なので求めたい条件に書き換えてください。
解析はaero_calc.mで行います。現在は使いにくいことからSimple-Larrabeeにだけ置いています。
実行すべきmファイル。ここから以下の各々のサブルーチンを実行する。
: プロペラの設定値を決める。ここの値を変えることで様々な条件のプロペラが設計できる。
XFLR5で解析したairfoilフォルダ内のtxtフィイルを読み込み、 data_matという多次元配列に代入する。 例えば、'pelafoil_T1_Re0.01_M0.00_N9.0.txt'のようなファイルが必要。 それぞれの翼型に変えたければ中身のfoil_nameの値を変える。 レイノルズ数の数や値を変えたければRelistを変える。レイノルズ数は使用する領域より幅広く取ってやるとエラーが少なくなる。
Larrabee_airfoil_ini.mではCd(抗力係数)とalpha(迎え角)を自分で決めるが、readXFLR.mで翼型の解析データが読み込めればCdとalphaをCl(揚力係数)とRe(レイノルズ数)の2変数関数と置いて、(Cd = f(Re,Cl), alpha = f(Re,Cl))自分で決めたClの値と前回の計算から持ってきたReからCd、alphaを求める。
Reの範囲がreadXFLRで読み込んだ値を越える場合は外挿ができないためにエラーが出るので、こちらを用いる。自分でCdとalphaの値を指定する。
計算部分
図として出力する。出力された図はresultフォルダに保存される。
計算された結果をresultフォルダのresult.txtに保存する。
設計されたプロペラを3DCAD上で表示するためにCADデータをcsvなどで保存する。 SolidWorksに対応予定。翼型はairfoil内にある翼型.datファイルを読み込む。 未実装。
Larrabee_airfoil.mでCd、 alphaの値を補完するための関数。 interp1,interp2関数を用いて補完している。要改良。
- CAD出力部
- 翼型データを変更
Larrabee.E.,"Practical Design of Minimum Induced Loss Propellers,"SAE Technical Paper 790585, 1979, doi:10.4271/790585