連立方程式を反復法で解くSOR法はガウス・ザイデル法よりも高速になる可能性を持ちますが、緩和係数(加速パラメータ)の調整が必要です。ここではPythonを使ってSOR法を実装し、緩和係数のパラメータスタディと最適な緩和係数との比較を行います。
続きを読むPython
Pythonで連立方程式をガウス・ザイデル法(反復法)で解く方法
連立方程式を反復法で解く方法として、直列ではヤコビ法より計算が速く終わるというガウス・ザイデル法を学びます。ここではガウス・ザイデル法がなぜ効率的なのかを式を用いて解説し、Pythonで実装しながら理解を深めます。
続きを読むPythonで連立方程式をヤコビ法(反復法)で解く方法
連立方程式の解法は直接法がわかりやすいですが、巨大な方程式の場合は計算時間が問題となります。ここでは直接法に比べ高速に連立方程式を解くことができる反復法の中で、比較的ポピュラーなヤコビ法を注意点と共に説明しPythonで実装してみます。
続きを読むPythonで拡散方程式を数値計算してアニメーションを作成する
熱流体分野の基礎学習として、拡散方程式の離散化と数値計算を行います。拡散方程式も移流方程式と同様に安定性の議論が必要です。ここではPythonを使って自分の手で実装しながら学習し、理解を深めるためにシミュレーション結果をアニメーションで確認するコードも紹介します。
続きを読むPythonで1次元移流方程式を離散化して数値流体力学に入門する
数値流体力学を学習して普段のCAEへの理解を深めたいと思います。ここでは入門レベルとして1次元移流方程式の紹介、偏微分方程式の離散化からPythonによる実装までを行います。さらにシミュレーション結果は動画で確認できるようにして理解を深めます。
続きを読むPyVistaで2つのSTLサーフェス間距離を計測した事例集
3Dプロットやメッシュ解析のためのライブラリ「PyVista」を使うと簡単にSTLファイルを扱うことが可能です。STLファイルはモデリングだけでなく、比較用途にも需要があります。ここでは色々なSTLファイル2面間の距離を計測してみた例を紹介します。
続きを読むアプリ完成編:wxPythonで信号処理のGUIアプリをつくろう⑥
Pythonによる信号処理のGUIアプリ作成挑戦記第6弾は「アプリ完成編」です。前回までで時間波形や周波数波形に関する一連の機能実装は完成しているため、細かい「軸設定機能」、「処理結果保存機能」を実装してアプリを完成させる方法を紹介します。
続きを読むスペクトログラム編:wxPythonで信号処理のGUIアプリをつくろう④
Pythonによる信号処理のGUIアプリ作成挑戦記第4弾は「スペクトログラム編」です。平均化フーリエ変換ができるとすぐ実装可能なSTFT計算を復習しながら、どうやってGUIプログラミングに組み込んでいくか、特有の例外処理も含めて紹介します。
続きを読むPythonで学ぶ周波数変調(FM)!変調式と特徴を見てみる
周波数が変動している信号を周波数変調信号(FM信号)と呼びます。ここでは周波数変調式と各パラメータの意味を紹介し、Pythonによるヒルベルト変換やフーリエ変換を駆使してAM信号とは異なるFM信号の周波数特性を観察してみましょう。
続きを読む周波数波形編:wxPythonで信号処理のGUIアプリをつくろう③
Pythonによる信号処理のGUIアプリ作成挑戦記第3弾は「周波数波形編」です。読み込んだ時間波形に対し平均化フーリエ変換を施す処理をGUIで行います。今回は設定の読み込み、変更処理や例外処理も含めて実装する方法を紹介します。
続きを読む