EasyFEM API Documentation

website·Indexed 31 days ago

https://www.easifem.com

API documentation for EasyFEM, featuring tools for finite element analysis. Includes classes and modules for Lagrange finite elements (LagrangeFE), polynomial and monomial evaluations (Polynomial1D, Monomial1D, Monomial3D), scalar fields (STScalarField, ScalarFieldLis), and linear algebra utilities via Lapack95.

Tokens
733.3K
Snippets
3.8K
Records
4.7K
Agent score
56%

What's inside EasyFEM

  1. Overview of LinearElasticModel_

    LinearElasticModel_ is a class used for modeling linear elastic material behavior. It is a subclass of AbstractSolidMechanicsModel_. It assumes that strains are small and the relationship between the stress tensor ($\sigma_{ij}$) and strain tensor ($\varepsilon_{kl}$) is linear, defined by the fourth-order stiffness tensor $C$ ($\sigma_{ij} = C_{ijkl} \varepsilon_{kl}$). The model supports various elasticity types including Isotropic, Orthotropic, Transversely Isotropic, and Anisotropic.
  2. Overview of the EASIFEM framework

    EASIFEM (Expandable And Scalable Infrastructure for Finite Element Methods) is a Modern FORTRAN framework designed for researchers, scientists, and engineers to implement numerical methods for solving initial-boundary-value problems (IBVPs) using finite element methods. It provides both low- and high-level datatypes and classes, supporting mesh generation, domain creation, shape functions, 1D/2D/3D elements and plotting, constitutive material laws, linear solvers, sparse matrices, and Fast Fourier Transforms (FFT).
  3. Overview of the FPL Fortran library

    FPL is a pure Fortran 2003 library designed to manage program parameters from a single point. It functions as an extendible container (dictionary) of <Key, Value> pairs, where the Key is a character string. FPL stores copies of passed data by assignment and is based on the Teuchos::ParameterList from the Trilinos project.

    Supported default data types for Values include:

    • Integer (kinds 1, 2, 4, 8)
    • Real (kinds 4, 8)
    • Logical
    • String

    Values can be either scalars or arrays of any dimension.

  4. Overview of the PENF Fortran library

    PENF is a pure Fortran library developed by Mr. Szaghi, designed to ensure code portability for modern (2003+) Fortran projects. It specifically provides utilities for converting numbers to strings and vice-versa.
  5. Overview of Material Model classes in Easifem

    Easifem provides a hierarchy of abstract classes to handle material properties in simulations. The base class AbstractMaterial_ is used to manage material properties, with specialized sub-classes for different physics domains: AbstractSolidMechanicsModel for modeling the behavior of solids and structures, and AbstractFluidMech for fluid mechanics. Specific implementations include LinearElasticModel for solids and NewtonianFluidModel for fluids.
  6. Overview of the EASIFEM framework

    EASIFEM (Expandable And Scalable Infrastructure for Finite Element Methods) is a Modern FORTRAN framework used for solving partial differential equations (PDEs) via finite element methods. It is designed for researchers, scientists, and engineers to implement numerical methods for solving initial-boundary-value problems (IBVPs). The framework provides both low-level and high-level datatypes and classes to streamline the development of scientific programs in FORTRAN.
  7. Overview of ChebyshevFirst1D_ class

    The ChebyshevFirst1D_ class defines the Chebyshev polynomial of the first kind, denoted as $T_n(x)$. These are orthogonal polynomials and the class is a child of AbstractOrthopol1D_.
    TYPE, EXTENDS( AbstractOrthoPol1D_ ) :: ChebyshevFirst1D_
  8. Overview of Orthogonal Polynomial Utilities in Easifem

    Easifem provides a suite of utilities for handling orthogonal polynomials and interpolation spaces, including Chebyshev of the first kind, Jacobi, Legendre, and Ultraspherical (Gegenbauer) polynomials, as well as specialized interpolation utilities for Prism and Pyramid geometries.
  9. Overview of PolynomialUtility modules

    The PolynomialUtility collection provides a set of modules used for constructing polynomials and shape functions. This includes specialized polynomial utilities (such as Chebyshev, Jacobi, and Legendre) and interpolation utilities for different geometric elements.
  10. Overview of Dirichlet Boundary Conditions in EASIFEM

    In EASIFEM, Dirichlet boundary conditions are managed by the DirichletBC_ class (a subclass of AbstractBC). A boundary condition consists of a boundary (defined using the MeshSelection class) and a value. In multi-dimensional problems, a single vector boundary condition (e.g., $\mathbf{u} = \mathbf{U}_0$) is treated as separate boundary conditions for each component (e.g., $u_x, u_y, u_z$). Multiple DirichletBC instances can share the same boundary but apply different conditions.
  11. Overview of Lis (Library of Iterative Solvers)

    Lis is a parallel software library designed for solving discretized linear equations (Ax = b) and eigenvalue problems (Ax = λBx). It provides a wide array of iterative solvers, eigensolvers, and preconditioners supporting various matrix storage formats.