XROTORがフリーソフトになってたのでUbuntu上で動かしてみた

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のバージョンに限定はあるけど、インストールが簡単になりました。この記事は古いのでこっちがオススメです。

http://d.hatena.ne.jp/ina111/20111221/1324439520

XROTORがフリーソフトになってたのでUbuntu上で動かしてみた” への1件のコメント

  1. ピンバック: 誘導損失最小のプロペラ設計プログラム作ってみた | ina111's blog

コメントを残す

メールアドレスが公開されることはありません。