Skip to content

Releases: jain-shobhit/YetAnotherFEcode

YetAnotherFEcode

24 Jan 09:05
7da6c24

Choose a tag to compare

DOI GitHub release

A simple MATLAB-based code for implementing the Finite Element method in an object oriented fashion.

The main idea behind this package is to enable rapid prototyping and reproducible research related to finite element applications
and/or reduced-order modeling in a user-friendly MATLAB environment.

On one hand, commercial packages lack the flexibility needed for testing new ideas essential for research, especially in the context of
reduced-order modeling, where FE problems are indeed just applications but still require mild intrusion/access to the functionality.
Open source packages, on the other hand, allow endless access to the implementation but tend to be very cumbersome to hack, and
require significant time and training to be able to test even the simplest of ideas. This code is particularly aimed towards
users/researchers who are interested in intrusive finite-element modeling without getting lost in gory details of open source FE packages.

A distinguishing aspect of this package is that apart from using exisiting elements in our library, one can program new elements with
relative ease and flexibility. These elements may also arise from multi-physics problems, e.g., thermo-mechanical
problems which involve the numerical solution of different partial differential equations governing heat and momentum balance
on the same physical domain.

Without worrying about the cumbersome details of finite-element assembly, a researcher can simply focus on the
element-level implementation to quickly obtain results. At the same time, developers are also encouraged to contribute new and
alternative ideas to improve this environment and potentially publish them, allowing future users to access and build upon their work.
This allows for rapid developement and testing of ideas, especially valuable in research efforts.

To use the code, simply add the main folder and its contents to the MATLAB path. Feel free to play with examples in the examples directory.
Further usage and development instructions to follow.

📚 How to cite

To showcase the relevance, please cite the following reference if you use this package in your work

Shobhit Jain, Jacopo Marconi, Matteo Pozzi, Paolo Tiso (2025) YetAnotherFEcode. Zenodo. https://doi.org/10.5281/zenodo.4011281.

Please report any issues/bugs to Shobhit Jain shobhit.jain@tudelft.nl or Jacopo Marconi jacopo.marconi@polimi.it

📄What's new in this release

  • added code associated to the following paper:
    • Matteo Pozzi, Jacopo Marconi, Shobhit Jain, Mingwu Li, Francesco Braghin; Adjoint sensitivities for the optimization of nonlinear structural dynamics via spectral submanifolds. Proc. A 1 December 2025; 481 (2328): 20250244. https://doi.org/10.1098/rspa.2025.0244.
  • MultiPointConstraint (MPC) approach implemented to connect rigid bodies and von Kàrmàn beams (in 2D)
  • Topology optimization updated with new examples and routines for COMSOL
  • General improvements

YetAnotherFEcode

21 Apr 19:57

Choose a tag to compare

DOI

A simple MATLAB-based code for implementing the Finite Element method in an object oriented fashion.

The main idea behind this package is to enable rapid prototyping and reproducible research related to finite element applications
and/or reduced-order modeling in a user-friendly MATLAB environment.

On one hand, commercial packages lack the flexibility needed for testing new ideas essential for research, especially in the context of
reduced-order modeling, where FE problems are indeed just applications but still require mild intrusion/access to the functionality.
Open source packages, on the other hand, allow endless access to the implementation but tend to be very cumbersome to hack, and
require significant time and training to be able to test even the simplest of ideas. This code is particularly aimed towards
users/researchers who are interested in intrusive finite-element modeling without getting lost in gory details of open source FE packages.

A distinguishing aspect of this package is that apart from using exisiting elements in our library, one can program new elements with
relative ease and flexibility. These elements may also arise from multi-physics problems, e.g., thermo-mechanical
problems which involve the numerical solution of different partial differential equations governing heat and momentum balance
on the same physical domain.

Without worrying about the cumbersome details of finite-element assembly, a researcher can simply focus on the
element-level implementation to quickly obtain results. At the same time, developers are also encouraged to contribute new and
alternative ideas to improve this environment and potentially publish them, allowing future users to access and build upon their work.
This allows for rapid developement and testing of ideas, especially valuable in research efforts.

To use the code, simply add the main folder and its contents to the MATLAB path. Feel free to play with examples in the examples directory.
Further usage and development instructions to follow.

What is new in this release:

  1. added Topology Optimization routines (density-based approach with MMA solver)
  2. added code associated to the following publications:
    a. Pozzi, M., Marconi, J., Jain, S. & Braghin, F. Backbone curve tailoring via Lyapunov subcenter manifold optimization. Nonlinear Dynamics (2024), https://doi.org/10.1007/s11071-024-09881-5.
    b. M. Pozzi, J. Marconi, S. Jain, M. Li, and F. Braghin. "Topology optimization of nonlinear structural dynamics with invariant manifold-based reduced order models". Structural and Multidisciplinary Optimization (2025), https://doi.org/10.1007/s00158-025-04010-1.
  3. added Mesh tools and Electrostatic elements (2D)
  4. bugfix and general improvements

To showcase the relevance, please cite the following reference if you use this package in your work

Shobhit Jain, Jacopo Marconi & Paolo Tiso (2020). YetAnotherFEcode. Zenodo. http://doi.org/10.5281/zenodo.4011281

Please report any issues/bugs to Shobhit Jain shobhit.jain@tudelft.nl or Jacopo Marconi jacopo.marconi@polimi.it

YetAnotherFEcode

11 Nov 11:21

Choose a tag to compare

DOI

A simple MATLAB-based code for implementing the Finite Element method in an object oriented fashion.

The main idea behind this package is to enable rapid prototyping and reproducible research related to finite element applications
and/or reduced-order modeling in a user-friendly MATLAB environment.

On one hand, commercial packages lack the flexibility needed for testing new ideas essential for research, especially in the context of
reduced-order modeling, where FE problems are indeed just applications but still require mild intrusion/access to the functionality.
Open source packages, on the other hand, allow endless access to the implementation but tend to be very cumbersome to hack, and
require significant time and training to be able to test even the simplest of ideas. This code is particularly aimed towards
users/researchers who are interested in intrusive finite-element modeling without getting lost in gory details of open source FE packages.

A distinguishing aspect of this package is that apart from using existing elements in our library, one can program new elements with
relative ease and flexibility. These elements may also arise from multi-physics problems, e.g., thermo-mechanical
problems which involve the numerical solution of different partial differential equations governing heat and momentum balance
on the same physical domain.

Without worrying about the cumbersome details of finite-element assembly, a researcher can simply focus on the
element-level implementation to quickly obtain results. At the same time, developers are also encouraged to contribute new and
alternative ideas to improve this environment and potentially publish them, allowing future users to access and build upon their work.
This allows for rapid development and testing of ideas, especially valuable in research efforts.

To use the code, simply add the main folder and its contents to the MATLAB path. Feel free to play with examples in the examples directory.
Further usage and development instructions to follow.

To showcase the relevance, please cite the following reference if you use this package in your work

Shobhit Jain, Jacopo Marconi & Paolo Tiso (2020). YetAnotherFEcode. Zenodo. http://doi.org/10.5281/zenodo.4011281

Please report any issues/bugs to Shobhit Jain shobhit.jain@tudelft.nl or Jacopo Marconi jacopo.marconi@polimi.it

Release Notes:

  1. Introduced the procedure to add code associated to scientific publications (see “how to contribute” in the papers folder)
  2. Added code associated to the following publications:
  3. Bug fixes and plot function update for multi-element meshes.

YetAnotherFEcode

02 Nov 16:08

Choose a tag to compare

DOI

A simple MATLAB-based code for implementing the Finite Element method in an object oriented fashion.

The main idea behind this package is to enable rapid prototyping and reproducible research related to finite element applications
and/or reduced-order modeling in a user-friendly MATLAB environment.

On one hand, commercial packages lack the flexibility needed for testing new ideas essential for research, especially in the context of
reduced-order modeling, where FE problems are indeed just applications but still require mild intrusion/access to the functionality.
Open source packages, on the other hand, allow endless access to the implementation but tend to be very cumbersome to hack, and
require significant time and training to be able to test even the simplest of ideas. This code is particularly aimed towards
users/researchers who are interested in intrusive finite-element modeling without getting lost in gory details of open source FE packages.

A distinguishing aspect of this package is that apart from using exisiting elements in our library, one can program new elements with
relative ease and flexibility. These elements may also arise from multi-physics problems, e.g., thermo-mechanical
problems which involve the numerical solution of different partial differential equations governing heat and momentum balance
on the same physical domain.

Without worrying about the cumbersome details of finite-element assembly, a researcher can simply focus on the
element-level implementation to quickly obtain results. At the same time, developers are also encouraged to contribute new and
alternative ideas to improve this environment and potentially publish them, allowing future users to access and build upon their work.
This allows for rapid developement and testing of ideas, especially valuable in research efforts.

To use the code, simply add the main folder and its contents to the MATLAB path. Feel free to play with examples in the examples directory.
Further usage and development instructions to follow.

To showcase the relevance, please cite the following reference if you use this package in your work

Shobhit Jain, Jacopo Marconi & Paolo Tiso (2020). YetAnotherFEcode. Zenodo. http://doi.org/10.5281/zenodo.4011281

Please report any issues/bugs to Shobhit Jain shobhit.jain@tudelft.nl or Jacopo Marconi jacopo.marconi@polimi.it

Release Notes:

  1. We have added interface to treat meshes containing more than one type of elements.
  2. We have had a function that returns the stability characteristic of the periodic solutions obtained via the external package NLvib, around which yaFEc wraps.

v1.1.1

02 Sep 08:04
e9e395f

Choose a tag to compare

Update README.md

v1.1

01 Sep 21:44
50bc5c5

Choose a tag to compare

Update README.md

v1.0

01 Sep 21:42
50bc5c5

Choose a tag to compare

v1.0 Pre-release
Pre-release
Update README.md