工学

2D数値計算の境界条件を画像から作るPythonコード例

2Dの流体解析をする時、計算領域内部に置いた構造物の影響を考慮したくなります。ここでは画像の輪郭から流体解析に使用できる境界条件を作る1つの例を、Pythonの流体解析コードと画像処理コードをコラボしながら考察してみたいと思います。

続きを読む

Pythonで2次元ラプラス方程式を数値計算する方法

時間によって変化しない定常状態を示すラプラス方程式は様々な物理現象の基礎となっています。ここではラプラス方程式の差分化から説明します。また、学習の理解を深めるために簡単な2次元のラプラス方程式をPythonを使って数値計算する方法を紹介します。

続きを読む

Pythonで連立方程式をヤコビ法(反復法)で解く方法

連立方程式の解法は直接法がわかりやすいですが、巨大な方程式の場合は計算時間が問題となります。ここでは直接法に比べ高速に連立方程式を解くことができる反復法の中で、比較的ポピュラーなヤコビ法を注意点と共に説明しPythonで実装してみます。

続きを読む

Pythonで拡散方程式を数値計算してアニメーションを作成する

熱流体分野の基礎学習として、拡散方程式の離散化と数値計算を行います。拡散方程式も移流方程式と同様に安定性の議論が必要です。ここではPythonを使って自分の手で実装しながら学習し、理解を深めるためにシミュレーション結果をアニメーションで確認するコードも紹介します。

続きを読む

PyVistaで2つのSTLサーフェス間距離を計測した事例集

3Dプロットやメッシュ解析のためのライブラリ「PyVista」を使うと簡単にSTLファイルを扱うことが可能です。STLファイルはモデリングだけでなく、比較用途にも需要があります。ここでは色々なSTLファイル2面間の距離を計測してみた例を紹介します。

続きを読む

csvの値から直列ばねマスモデルを自動生成するPythonコード

振動シミュレーションをプログラミングで行う場合、質量行列や剛性行列の記述が面倒です。しかし、ばね要素の結合と行列の重畳を理解する事で規則性を利用できます。ここではcsvに記録した質量や剛性の値を使ってPython/Numpy形式の行列生成を行う方法を紹介します。

続きを読む