XFOILの生みの親であるMark Drela教授のプロペラ設計のためのプログラムであるXROTORが今年になってライセンスがGNU GPLのフリーソフトになっていたので動かしてみた。
XROTORが先に開発されてしばらく商用シェアウェア、アカデミックはフリーのソフトとして存在していたが、そのあとモーター込みでの性能の計算プログラムとしてQPROPというソフトが作られてGPLで公開されていた。それに続く形でXROTORのGPLへのライセンス移行だった。
QPROPについては前の記事を参考にしてください。
XROTORでは飛行機のプロペラの設計と性能計算、風車の設計と性能計算が可能。
プロペラは修正されたLarrabee法という手法で設計される。
今あるのはソースコードだけなので自分でコンパイルして使っていく。
XFOILではソースコードからwindowsでの実行形式(.exe)が置かれるまで1年ぐらいかかったのでそれが待てる人は必要ないけど、すぐに使いたいって人への記事です。
具体的な使い方の記事とかはやる気次第で作るかも。
まず自分の環境。
メインはwindowsVISTA(笑)だけどコンパイルの簡単さとかを考えて仮想マシンのLinux上で動かそうとした。
OS:Ubuntu10.10(Oracle VM VirtualBOX上)
CPU:32ビット
Win機だが全く同じだったのでここを参考にubuntu導入
コンパイル(ビルド)するのにFortranのコンパイラなどが必要なので
- gfortran
- Intel Fortran Compiler(ifort)
- Xlib.h
をインストール
※——追記——
ifortのインストールは必要ではありません。gfortranでもビルド(使えるようにする)は可能なのでインストールの簡単なgfortranをオススメします。下のifortのインストールの部分を省略して、途中でMakefileの中身をいじってやります。下に書いた赤文字追記の部分の変更をしてからmake ~~のコマンドに入ります。
※——追記終わり——
gfortranは端末上で
% sudo apt-get install gfortran
でインストール完了。
ifortはここを参考に。
ただし今のバージョンだと多少違って、インストール後に
% . /opt/intel/bin/ifortvars.sh -ia32
と打たないとコンパイルできなかった。ログアウトしてもifort使いたいならホームディレクトリの.profilのファイルの末尾に
. /opt/intel/bin/ifortvars.sh -ia32
を追加する
libPltのところでXlib.hがないとか言われたから、ここのように
% aptitude show xorg-dev
でインストールされてるか確認して
% sudo aptitude install xorg-dev
でパッケージのインストールをする
※——追記2011-12-12——
上記は下の方じゃないと動かないかも
% sudo apt-get install xorg-dev
※——追記終了——
以上のインストールが出来たら
ここを参考にコンパイルしていく。
これは非常に有用でありがたい記事でした。
同じことを書くようだけど少しだけ違うので改めて書くと、本家サイトからXrotor7.55.tar.tgzを落としてきて解凍する。
解凍は
% tar -xzvf Xrotor7.55.tar.tgz
などのようにする。解凍されたフォルダの./plotlibに移動して
% cp config.make.SP config.make % make libPlt.a
これでlibPlt.aというファイルが出来る。その後./binに移って、
% make xrotor % make jplot % make jplote
としたらコンパイル通った。実は何度も試行錯誤してて、ここまでで半日以上かかったが、一度コンパイルしてエラーが出たら解凍されたファイルを削除し、解凍からやり直すことでエラー吐かないようになった。
※——追記——
初期設定だとifortというインテル製のFortranコンパイラを使う設定になっているが、ifortのインストールは少しめんどくさいのでgfortranというコンパイラを使うやり方。下記の変更をしてからmake ~~をするとエラーが出ないはず。
./plotlibにある「config.make」というファイルの16行目を
FC = ifort
を以下に変更
FC = gfortran
もう一点、./binにできている「Makefile」というフィイルの42行目(一行上に# Linux Inter ifort Fortranと書いてある行)を
FC = ifort
を以下に変更
FC = gfortran
※——追記終わり——
以上、ビルドが終わったら./binに新たにできるxrotor,jplot,jploteをパスの通ったところつまり、/usr/local/binなどにいれてやると
% xrotor
と打つことでどこでも起動できる。
Ubuntuでインストール直後だったので/usr/local/binにアクセスするために
%sudo passwd
でパスワード設定することによりアクセスできるようする必要もあった。
実はwinで動くexe形式のXROTORは持ってるから必要ないんだけど、勉強だと思って弄ってた。
XFOILがGPLで公開されてからのXFLR5みたいにXROTORもUIを改良したソフトを誰か作ってくれればなと妄想中。
※※※ 追記 ※※※
Ubuntuのバージョンに限定はあるけど、インストールが簡単になりました。この記事は古いのでこっちがオススメです。
ピンバック: 誘導損失最小のプロペラ設計プログラム作ってみた | ina111's blog