solve boundary value problems over an unstructured mesh. FEM is particularly well suited for modeling domains of arbitrary shape, and efficiently modeling small features in large computational domains.
the requirements at the bottom of this page, before downloading. Please also see the section below on citing these codes. Thanks. |
jFEM (2D/3D):
from which the electric field is calculated. In 3D, the vector wave equation is solved for the electric or magnetic field directly. - (2D) Triangular elements, with first order nodal basis functions - (3D) Tetrahedral elements, with 0, 1st, or 2nd order H0 curl interpolatory vector basis functions (constructed from Whitney edge elements) or H1 curl 1st order vector basis functions - Sommerfeld radiation condition imposed on exterior of computational domains (1st order) to model open-region scattering problems - (3D) Truncation of domains using a dielectric material - Absorption, scattering, and extinction cross sections - Field intensity profiles - Sparse LU decomposition (PARDISO from Intel MKL) used to solve matrix equations
Download: jfem2d.tar |
coupled infinite cylinders, separated by 1 nm. |E|^2 is shown. |
above result, generated using NETGEN (external link). |
- jScience library (v1.1 will only 2D work for jFEM3D -- for jFEM2D use v1.0) - Intel Math Kernel Library (MKL) - Non-Commecial Download: Intel Non-Commercial Software - Mesh generation program (see Recommendations below) Recommendations: - NETGEN mesh generator: www.hpfem.jku.at/netgen/ |
The Computational Physicist |
The codes provided on this site are distributed open source under the GPL. If these codes are used to obtain useful results, please acknowledge them with reference to their name and link to where they were obtained. Also, if this (or associated) site(s) are useful, please provide a link to it. These requests are not required, but are greatly appreciated. |
ANNOUNCEMENT: jFEM and parts of jScience have been rewritten from scratch, following coding standards and utilizing C++ 11 functionalities. jFEM is also much faster, and has been written to be user-friendly. These codes will be distributed elsewhere, TBD. |