All Projects → tdegeus → GooseFFT

tdegeus / GooseFFT

Licence: MIT License
Micro mechanical computations with an FFT-based method

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to GooseFFT

MinimalFem
podgorskiy.com/spblog/304/writing-a-fem-solver-in-less-the-180-lines-of-code
Stars: ✭ 23 (+9.52%)
Mutual labels:  finite-elements, mechanics
AsFem
A Simple Finite Element Method program (AsFem)
Stars: ✭ 108 (+414.29%)
Mutual labels:  finite-elements, mechanics
dblclockfft
A configurable C++ generator of pipelined Verilog FFT cores
Stars: ✭ 147 (+600%)
Mutual labels:  fft
MobileInsight
A Mobile web app to browse PHP code analyses made by SensioLabsInsight, built with Angular.js and Ionic.
Stars: ✭ 25 (+19.05%)
Mutual labels:  publication
FEMAddOns
Finite Element Method addons for Wolfram Language
Stars: ✭ 41 (+95.24%)
Mutual labels:  finite-elements
CNN-SoilTextureClassification
1-dimensional convolutional neural networks (CNN) for the classification of soil texture based on hyperspectral data
Stars: ✭ 35 (+66.67%)
Mutual labels:  publication
meteor-publication-collector
Test a Meteor publication by collecting its output.
Stars: ✭ 32 (+52.38%)
Mutual labels:  publication
VoiceNET.Library
.NET library to easily create Voice Command Control feature.
Stars: ✭ 14 (-33.33%)
Mutual labels:  fft
continuum mechanics
Utilities for doing calculations in continuum mechanics.
Stars: ✭ 18 (-14.29%)
Mutual labels:  finite-elements
spectrogram
Taking an audio signal (wav) and converting it into a spectrogram. Written in Go programming language.
Stars: ✭ 34 (+61.9%)
Mutual labels:  fft
neper
Polycrystal generation and meshing
Stars: ✭ 111 (+428.57%)
Mutual labels:  mechanics
math
Useful m-scripts for DSP (CIC, FIR, FFT, Fast convolution, Partial Filters etc.)
Stars: ✭ 15 (-28.57%)
Mutual labels:  fft
create-book
⚡️ Fast & frictionless book template generator.
Stars: ✭ 22 (+4.76%)
Mutual labels:  publication
PyMFEM
Python wrapper for MFEM
Stars: ✭ 91 (+333.33%)
Mutual labels:  finite-elements
ffts
The Fastest Fourier Transform in the South
Stars: ✭ 111 (+428.57%)
Mutual labels:  fft
DTMF-Decoder
A Java program to implement a DMTF Decoder.
Stars: ✭ 28 (+33.33%)
Mutual labels:  fft
ameshref
Efficient Matlab Implementation of Adaptive Mesh Refinement in 2D
Stars: ✭ 28 (+33.33%)
Mutual labels:  finite-elements
PencilFFTs.jl
Fast Fourier transforms of MPI-distributed Julia arrays
Stars: ✭ 48 (+128.57%)
Mutual labels:  fft
aurora-sdk-win
An SDK to develop effects for Nanoleaf Light Panels using features like frequency, beat, or tempo.
Stars: ✭ 22 (+4.76%)
Mutual labels:  fft
intfftk
Fully pipelined Integer Scaled / Unscaled Radix-2 Forward/Inverse Fast Fourier Transform (FFT) IP-core for newest Xilinx FPGAs (Source language - VHDL / Verilog). GNU GPL 3.0.
Stars: ✭ 43 (+104.76%)
Mutual labels:  fft

DOI

Disclaimer

This repository is distributed under an MIT license. In layman's term, you are free to do what you want with it. We just kindly request you to cite our papers that form the basis for this repository, and encourage you to be equally open with your code.

(c) Tom de Geus ([email protected]), Jaroslav Vondřejc, 2016

Contents

Introduction

This repository is primarily meant for those researchers who want to dive into the FFT-based micro-mechanical solver. It contains several small, single file, Python scripts which should lower the learning curve (see Ref. [1], which was written with this particular aim). These examples are formulated both in small strain (with linear and non-linear elastic, elasto-plastic, elasto-visco-plastic constitutive models; accompanying [2]), and finite strain (with hyper-elastic and elasto-plastic constitutive models; accompanying [1]). The examples only depend on standard Python and its scientific libraries NumPy and SciPy, which are freely available for all operating systems and are widely used. No custom software or libraries are used, i.e. there are no hidden layers of complexity.

Since different approaches exists for this type of numerical method, and since there are many styles and programming languages, anyone is invited to contribute by uploading similar small, preferably single file, examples for different materials, in different programming languages, or featuring different approaches.

Examples

The examples are divided in three categories:

  • Basic methodology. These examples focus on accessibility while retaining some computational efficiency. Great to get started.

  • Different materials models. These examples focus on different constitutive relations (which are completely uncoupled from the FFT-solver). At the same time, they are implemented more general and more efficiently than the examples that present the basic methodology.

  • Applications. These examples show just how powerful the FFT-solver can be, even with the very simple Python code. Also, they introduce the concept of 2-D plane strain.

Basic methodology

Different materials models

Applications

GPU support

References

[1]: T.W.J. de Geus, J. Vondřejc, J. Zeman, R.H.J. Peerlings, M.G.D. Geers. Finite strain FFT-based non-linear solvers made simple. Computer Methods in Applied Mechanics and Engineering, 2017, 318:412–430. doi: 10.1016/j.cma.2016.12.032, arXiv: 1603.08893

[2]: J. Zeman, T.W.J. de Geus, J. Vondřejc, R.H.J. Peerlings, M.G.D. Geers. A finite element perspective on nonlinear FFT-based micromechanical simulations. International Journal for Numerical Methods in Engineering, 2017, 111(10):903–926. doi: 10.1002/nme.5481, arXiv: 1601.05970

[3]: A. Henkes, I. Caylak, R. Mahnken. "A deep learning driven uncertain full‐field homogenization method." PAMM 20.1 (2021): e202000180. doi: 10.1002/pamm.202000180

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].