読者です 読者をやめる 読者になる 読者になる

Butterfly_Effect( )

僕はとにかく地面と別れる方法を探しているんだ

飛行力学における機体固定座標系

飛行力学の基礎の基礎 多くの飛行力学本は、シミュレーション等行う場合には機体固定座標系上で運動方程式を書くのが簡単であると主張している。 実際、機体に働く空気力やら種々のコントロール・エフェクタの影響を計算するとき、機体固定座標系の方が分か…

C++&EigenでRiccati方程式の解を求める

Riccati方程式を数値的に解く 最適制御を学んだことがある人なら、Riccati代数方程式を解くことの重要性が分かると思う。このプロセスは、LQR的に定義されたJ値を最小化するための最適制御入力の構成に必要になる。言うまでもなく、Matlab様にはRiccati代数…

Datcomで空力解析(その2)

はじめに Datcomで空力解析を行うためにはINPファイルの作成が必要. 以下のような形状の飛行機を解析したい場合の例を示します. INPファイルというのは何の変哲もないタダのtxtファイルで,中身は以下のようなものになっています.これはDatcomのマニュア…

DATCOMで空力解析 (Win, Mac共通)

以前の記事で,こんなことを書いた.octaveで6自由度飛行シミュレーションを行う(0) - Butterfly_Effect( )butterfly-effect.hatenablog.com では,空力微係数を算出する上で簡単な方法は何なのか?方法はいくつかあるけれど,今回は最もレガシーなものを扱…

MacOSXでboost::python(homebrewユーザー)

はじめに 事情があって,pythonとC++を併用したいことがあった. 方法はいくつかあるけれど,C++ユーザーとしてはboost::pythonが良い選択に思える. しかし普段はXcodeのGUIに甘やかされていたので,導入にかなり手こずった. 環境依存な部分は多いかもしれ…

Eigenで力学してみる(1)

C++向けの行列計算ライブラリEigenを使って姿勢運動を扱う話. 初回はウォーミングアップということで,Quaternionクラスの使い方の練習をする. はじめに 僕はC++をメインで使ってる.特に行列計算ライブラリのEigenは手放せない.Matlab/Octave的な行列演…

線形システムの安定性を調べる

octaveでisstable( )する話. 追記:octave-forgeのcontrolコンポーネントの中にisstable()関数がありました.そちらを使うことを推奨します. 線形システムの内部安定性 フライトシミュレーションの記事でも扱ったけれど,線形なシステムは一般にという形で…

octaveで6自由度飛行シミュレーションを行う(3)

6DOF flight simulation編の最終回. 飛行機の絵を書こう 飛行機の運動の可視化には様々な方法があるけれど,やっぱり飛行機がグリグリ動くのが一番楽しいよね.octaveにそういうアニメーションを書く機能があるかいうと,一応ある(comet3関数).ただこれは…

octaveで6自由度飛行シミュレーションを行う(2)

今回と次回で,計算結果のポスト処理について解説する. 軌道データを生成する これまでに,定常飛行状態からの微小擾乱の時間発展を計算してきた. そこから飛行軌道を生成する方法は,テキスト5章の最初の方にサラッと書かれている.1章に基づいて軌道計算…

パネル法によるデルタ翼の空気力計算

渦格子法で3次元空力計算を行う. Vortex Lattice Method + High AoA Delta Wing 揚力面理論の一種である渦格子法(VLM)を用いて高AoAデルタ翼の空力計算をした. 使用PC MacBookAir2011 使用ツール Xcode C++ Eigen gnuplot LEVも含めて解いている.数値計…

octaveで6自由度飛行シミュレーションを行う(1)

本編.前回の記事で示したスクリプトの中身の解説です. 概要 Matlab互換のフリーソフトoctaveを使って,簡単な6自由度フライトシミュレーションを行う.6自由度というのは,xyzの三次元軌道とピッチロールヨーの三軸姿勢運動の自由度を合わせたもの.要する…

octaveで6自由度飛行シミュレーションを行う(0)

はじめに 日本語で書かれた飛行力学のテキストと言えば,「航空機力学入門」が有名.教科書の中ではやや難しい部類に入るので,一部の飛行機ファンの間では鬼門扱いされてるとかされてないとか. ただ,コアの部分(3章)は恐ろしく単純なので,それについて…