C++

【オブジェクト指向C++】2次元ナビエストークス方程式(キャビティ流れ)の数値計算

全体のコード

全体のコードがこちらです。

main.cpp

main.cpp(メインファイル)以外のコードはgithubにアップしています。

その他のヘッダーファイルは以下となります。

  • #include “Mesh.h” //メッシュ設定
  • #include “Fields.h” //場の定義
  • #include “Diff1d.h” //空間微分
  • #include “FileWriter.h” //ファイル出力
  • #include “creatFields.h” //場の定義
  • #include “Diff1d.h” //微分の離散化定義

結果はParaViewで確認すると以下のようになります。

まとめ

C++を使ってオブジェクト指向を意識してナビエストークス方程式を解くプログラムを組みました。
今回は「MAC(Marker And Cell)法」と呼ばれる非圧縮流体の解析手法のでナビエストークス方程式、およびナビエストークス方程式の発散と連続の式から得られる圧力方程式を連立して計算を行いました。
プログラムのメインは

のように離散化した後の方程式を直感的に計算できるようにしました。

main.cppのパラメータ設定の部分が少しぐちゃぐちゃになっているので改善の余地は十分にあるコードですが、全体を通すことでオブジェクト指向を意識したコーディングができたのではないかと思います。

参考書

1週間でC++の基礎が学べる本

1週間でC++の基礎が学べる本

亀田 健司
2,574円(10/07 08:22時点)
発売日: 2021/03/12
Amazonの情報を掲載しています
独習C++ 新版

独習C++ 新版

高橋 航平
1,859円(10/07 11:10時点)
発売日: 2019/11/11
Amazonの情報を掲載しています
江添亮のC++入門

江添亮のC++入門

江添 亮
5,445円(10/07 08:22時点)
Amazonの情報を掲載しています
1 2 3 4 5 6

【プロフィール】

カマキリ
(^^)

大学の専攻は物性理論で、Fortranを使って数値計算をしていました。
CAEを用いた流体解析は興味がありOpenFOAMを使って勉強しています。

プロフィール記事はこちら

 

大学学部レベルの物理の解説をします 大学初学者で物理にお困りの方にわかりやすく解説します。

このブログでは主に大学以上の物理を勉強して記事にわかりやすくまとめていきます。

  • ・解析力学
  • ・流体力学
  • ・熱力学
  • ・量子統計
  • ・CAE解析(流体解析)
  • note
    noteで内容は主に「プログラミング言語」の勉強の進捗を日々書いています。また、「現在勉強中の内容」「日々思ったこと」も日記代わりに書き記しています。
  • youtube
    youtubeではオープンソースの流体解析、構造解析、1DCAEの操作方法などを動画にしています。
    (音声はありません_(._.)_)
  • Qiita
    Qiitaではプログラミング言語の基本的な内容をまとめています。

COMMENT

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