C++を学習してみよう.
☆以下の学習ガイドは,プログラム言語の要素を学ぶため,無理やりたくさんの言語要素をぶち込んだものである.
☆最も簡単で高速なプログラム,ではないので注意
☆「その瞬間に最も短いプログラムの書き方」を学習すると,いわゆるスパゲティコードを書く癖がついてしまい,計算規模が大きくなったときに, どうにもならないからである.
目次
| 表題 | 数学的コンテンツ | C++コンテンツ | 情報コンテンツ |
| C++インストール | |||
| Hello, world | プログラムとは何か | ||
| Hello, Class | クラスとは何か | ||
| 常微分方程式I | 1階常微分方程式の初期値問題, 差分法とは | forループ | 1D作図 |
| フォルダー操作 | フォルダーとは何か | ||
| 常微分方程式II | 2階常微分方程式の初期値問題 | C++でフォルダー操作,ファイル書出, オーバーロード, 例外処理 | |
| 常微分方程式III | 三重対角行列, Jacobi法 | Eigen/Dense(密行列), コンテナ(std::map) | |
| クラスターに接続 | ssh | ||
| レポジトリー | git | ||
| ビルドシステム | cmake | ||
| 数値積分 | 台形則, シンプソン公式, 二重指数変換 | ポインター, 参照, キャスト, std::function, ラムダ式 | awk/gawk |
| 偏微分方程式 I | 1D移流方程式, 陽解法と陰解法, CFL条件, 有限体積法 | テンプレート・継承, オペレータ | draw.sh, LibreOffice |
| 偏微分方程式II | 1D拡散方程式, 1D移流拡散方程式, 人工粘性 | Eigen/Sparse(疎行列) | |
| ライブラリーの使用 | 特殊関数,乱数 | 日付と時刻,多次元配列 | |
| 自作多次元配列 | |||
| 可視化 | |||
| 偏微分方程式III | |||
| 常微分方程式IV (ライブラリー使用) |