/IvyFEM

.NET向け有限要素法(FEM)を用いたCAEライブラリ

Primary LanguageC#Apache License 2.0Apache-2.0

IvyFEM

有限要素法(FEM)を用いたCAEライブラリです。
.Net WPFアプリケーションで使用することを想定しています。

いまできること

☑ 2D(多角形)、3D(限定的)の図面作成
☑ 有限要素(三角形要素、四面体要素※)分割
☑ 有限要素行列の作成 (*1)
☑ リニアシステムを解く(LAPACKE, Lis、独自実装)
☑ サーモグラフィーのような分布図

*1 いま用意しているのは
弾性体力学:線形弾性体(2D/3D)
超弾性体
St.Venant Kirchhoff(2D/3D)
Mooney-Rivlin (非圧縮、微圧縮)(2D/3D)
Ogden (非圧縮、微圧縮)(2D/3D)
多点拘束(Multipoint Constraint [MPC])(2D:直線/3D:平面)
剛体との接触(2D:直線、円/3D:平面、球)
弾性体二体接触(2D/3D)※
構造要素(線形)
Truss要素(トラス)
Beam要素(X方向の梁)(非推奨)
Euler-Bernoulli
Timoshenko
Frame要素(骨組、方向の異なるトラス/梁を繋いだもの)
Euler-Bernoulli
Timoshenko
DKT薄板要素(Discrete Kirchhoff Flat Plates)
Mindlin厚板要素(Reisner-Mindlin Thick Plates)
MITC3シェル要素(MITC: Mixed Interpolation of Tensorial Components)
構造要素(幾何学的非線形)
Co-rotational Beam(Frame) Formulation
Euler-Bernoulli shallow arch
Timoshenko Beam(Frame)
Total Lagrange法
Eular-Bernoulli Field-consistent Beam(Frame)
Timoshenko Beam(Frame)
MITC3シェル要素
St.Venant-Kirchhoff
St.Venant-Kirchhoff(厚さの伸び縮み考慮)
Mooney-Rivlin超弾性体モデル(厚さの伸び縮み考慮)
弾性波プレート導波路(elastic plate waveguides)
Lamb waveの固有値問題(1D)
Lamb waveの伝達問題(2D)
周波数領域FEM
(固有モード展開)
(PML: Perfectly Matched Layers,完全整合層)
(ABC: Absorbing Boundary Conditions,吸収境界条件)
時間領域FEM
(PML: Perfectly Matched Layers,完全整合層)
SH waveの固有値問題(1D)
SH waveの伝達問題(2D)
周波数領域FEM
(固有モード展開)
(PML: Perfectly Matched Layers,完全整合層)
(ABC: Absorbing Boundary Conditions,吸収境界条件)

Note: SH wave:Shear Horizontal wave

流体力学 :Navier-Stokesの方程式
標準(2D/3D)(ただし、3Dは※)
SUPG [Streamline Upwind Petrov-Galerkin]安定化(2D/3D)
Vorticity / Stream Funciton定式化
標準
SUPG[Streamline Upwind Petrov-Galerkin]安定化※
分離型解法(Runge-Kutta)(標準)
Pressure Poisson定式化※
標準
SUPG[Streamline Upwind Petrov-Galerkin]安定化※
分離型解法(Runge-Kutta)(標準)
分離型解法(Runge-Kutta)(SUPG[Streamline Upwind Petrov-Galerkin]安定化)※
Finite Calculus (FIC) Formulation
RANS(Reynolds Average Navier Stokes) 定式化
RNG k-epsilonモデル
LES(Large Eddy Simulation)※
k equation model
乱流(turbulent)中の滴(droplet)の軌跡※

電磁気学 :電磁導波路の伝達問題(2D)
H面TEモード/E面TEモード/2次元TMモードの導波路
周波数領域FEM
(固有モード展開)
(Givoli-Neta-Patlashenkoの高次ABC)(Evanescent Wave ABC)
(PML)
時間領域FEM
(Givoli-Neta-Patlashenkoの高次ABC)(Evanescent Wave ABC)
(Jiao-Jin-Michielssen-RileyのPML)
フォトニック結晶の固有値問題
正方格子、三角形格子
誘電体ロッド型、エアホール型
フォトニックバンドギャップ
フォトニック結晶導波路
フォトニック結晶導波路の伝達問題
正方格子、三角形格子
誘電体ロッド型、エアホール型
周波数領域FEM
(固有モード展開)
(PBC)
(PML)
時間領域FEM
(Jiao-Jin-Michielssen-RileyのPML)
(固有モード展開複素ABC(Modal ABCZ))※

full-wave(ベクトル波)導波路の固有値問題
edge/nodal elements
(遮蔽形, closed waveguides)
(開放形, open or unbounded waveguides)

共振器の固有値問題(3D)

電磁導波路の伝達問題(3D)
周波数領域FEM
(固有モード展開)
Note: ABC - Absorbing Boundary Conditions, 吸収境界条件
PML - Perfectly Matched Layers, 完全整合層
PBC - Periodic Boundary Conditions, 周期境界条件

渦電流(eddy current)場問題
A-φ法(2D)

各種方程式:Poisson方程式(2D/3D)
熱拡散方程式(2D/3D)
移流拡散方程式(2D/3D)
Helmholtz方程式(2D/3D)

三角形要素:Lagrange (1次、2次)
Bell Triangle(5次)
edge element(1次、2次)

四面体要素:Lagrange (1次、2次)
edge element(1次、2次)

※印:実験的または未完

バイナリ(2021-06-30更新)

IvyFEM.dll version 0.0.0.63

プラットフォームターゲット: x64
IvyFEM

依存ライブラリ

OpenTK.GLControlをNuGetでインストールしてください。

インストールおよび使い方

インストール、実装概略を次のページにまとめました。
.NET向けCAEライブラリIvyFEMを用いて弾性体の曲げの有限要素法シミュレーションをする
.NET向け有限要素法CAEライブラリIvyFEMでカスタマイズ方程式を実装する
IvyFEM(.NET向け有限要素法ライブラリ)をPythonから使用する

技術資料
定式化をpdfにまとめています。
pdf置き場

サンプルアプリケーション

IvyFEM.dllを使ったサンプルアプリケーション
IvyFEMProtoApp

計算例
〇メッシュ
メッシュ
〇弾性体
弾性体
〇弾性体多点拘束(MPC)
弾性体多点拘束(MPC)
〇直線、円との接触問題
直線、円との接触問題
〇弾性体二体接触問題
弾性体二体接触問題
〇構造要素
トラス要素
Truss-Fig
Truss
ビーム要素
Beam-Fig
Beam
フレーム要素
Frame-Fig
Frame
〇弾性波プレート導波路の伝達問題
Lamb wave
Elastic Lamb Waveguide
〇Poissonの方程式
Poisson
〇Helmholtzの方程式
Helmholtz
〇拡散方程式
拡散
〇移流拡散方程式
移流拡散
〇流体(Navier-Stokesの方程式)
Standard Galerkin Cavity
Standard Galerkin Cavity
SUPG Cavity
SUPG Cavity SUPG Back-step
SUPG Back-step 1
SUPG Back-step 2
SUPG Back-step 3
SUPG Back-step 4
SUPG Back-step 5
SUPG Back-step 6
SUPG Back-step 7
〇流体(Finite Calculus (FIC) Formulation)
Water Column1
Water Column2
Water Column3
Water Column4
〇電磁導波路の周波数領域FEM(固有モード展開)
H面導波路直角コーナーベンド
ベンド
遮蔽形誘電体導波路の終端
終端
〇電磁導波路の周波数領域FEM(高次ABC)
開放形誘電体導波路の終端
終端
〇電磁導波路の時間領域FEM(高次ABC)
H面導波路直角コーナーベンド
ベンド
開放形誘電体導波路の終端
終端1
終端2
終端3
終端4
〇フォトニックバンドギャップ
三角形格子PBG
〇フォトニック結晶導波路の周波数領域FEM(固有モード展開)
正方格子ベンド
三角形格子ベンド
〇電磁導波路のベクトル波固有モード(full-wave eigenmode)
異方性誘電体導波路(図面)
異方性誘電体導波路
〇3次元電磁導波路の伝達問題
誘電体装荷導波管1
誘電体装荷導波管2
誘電体装荷導波管3
誘電体装荷導波管4
〇渦電流(eddy current)場
swtiched reluctance motor(SRM)