Computation of the Friedrichs and Poincare constants in 2D/3D

バージョン 2.1.0.0 (798 KB) 作成者: Jan Valdman
Computation of Friedrichs and Poincare constants in 2D/3D from generalized eigenvalue problems.
ダウンロード: 1.5K
更新 2018/4/11

ライセンスの表示

To run the code, type 'start_2D' or 'start_3D' in the MATLAB window.
Mass and stiffness matrices are assembled for nested uniform meshes (triangles in 2D and tetrahedral in 3D) starting from a coarse mesh (level=1 mesh) with few elements and ending up with a finest mesh (level=levels, where levels is predefined) with up to a milion of elements, depending on the available memory.

The Friedrichs', the Poincare are approximated from a generalized eigenvalue problems. Approximated values are compared with exact values if these are known (eg. for the rectangular domain in 2D and the cuboid domain in 3D) and corresponding eigenfunctions are visualized. Domains geometry can be easily changed by modifying input matrices: nodes2coords, elems2nodes, dirichlet. There is also an experimental computation of the Maxwell constant.
This code generalizes the original computations of the Friedrichs constant explained in the section 3.1. of [1]. The original code to [1] is saved in the 'original_code' folder and can be run as the file 'start_Friedrichs' in the MATLAB window. This code exploits vectorization concepts of FEM assemblies explained in [2] and [3] and runs therefore much faster.
Literature:
[1] Jan Valdman, Minimization of Functional Majorant in A Posteriori Error Analysis based on H(div) Multigrid-Preconditioned CG Method, Advances in Numerical Analysis, vol. 2009, Article ID 164519 (2009)

[2] Talal Rahman, Jan Valdman, Fast MATLAB assembly of FEM matrices in 2D and 3D: nodal elements. Applied Mathematics and Computation 219, 7151–7158 (2013)

[3] Immanuel Anjam, Jan Valdman, Fast MATLAB assembly of FEM matrices in 2D and 3D: Edge elements. Applied Mathematics and Computation 267, 252–263 (2015)

The paper can be downloaded from the author's web
http://sites.google.com/site/janvaldman/publications

引用

Jan Valdman (2024). Computation of the Friedrichs and Poincare constants in 2D/3D (https://www.mathworks.com/matlabcentral/fileexchange/23991-computation-of-the-friedrichs-and-poincare-constants-in-2d-3d), MATLAB Central File Exchange. 取得済み .

MATLAB リリースの互換性
作成: R2014b
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersLinear Algebra についてさらに検索
謝辞

ヒントを得たファイル: Sparse null space and orthogonal

ヒントを与えたファイル: Double porosity model

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

constants_2D_3D/

constants_2D_3D/original_code/

constants_2D_3D/path/

constants_2D_3D/path/SparseNullOrth/

constants_2D_3D/path/library_fem/

constants_2D_3D/path/library_integration/

constants_2D_3D/path/library_meshing/

constants_2D_3D/path/library_vectorization/

constants_2D_3D/path/library_visualization/

バージョン 公開済み リリース ノート
2.1.0.0

more geometries added: annulus, general rectangle and cuboid with known constants

2.0.0.0

This is a major update. Features: now both 2D and 3D computations, vectorized assembly of FEM matrices

1.5.0.0

paper citation added

1.4.0.0

Faster performance. Almost scalable generation of stiffness and mass matrices.

1.3.0.0

description

1.2.0.0

description + screenshot

1.1.0.0

description

1.0.0.0