Questions tagged [finite-element-method]

Usage of the Finite Element Method embedded in NDSolve and details on the implementation of the fem in mathematica.

This tag marks questions and answers about the usage of the finite element method in NDSolve, NDEigensystem, NIntegrate or InterpolatingFunctions. For an overview of the scope of the finite element capabilities in Mathematica see the page:

https://www.wolfram.com/language/core-areas/fem/

1486 questions
12
votes
2 answers

FEM - how should I impose periodic boundary conditions in pure space problems?

I have searched other threads, but I was not successful in finding an answer I could understand. Right to the point: how do I impose correctly periodic behavior on the edges of the rectangular region without knowing what the behavior is (using FEM…
Mauricio Fernández
  • 5,463
  • 21
  • 45
9
votes
3 answers

How can I use Mathematica to solve this kind of plane stress problem?

I want to solve the plane stress problem of the following stress boundary: Note that $\sigma_x=10$, etc. in the figure above represents the stress boundary condition rather than the displacement condition. I built a system of equations based on the…
9
votes
1 answer

How do I use low level FEM?

How do I simulate the following partial differential equation using Low level FEM in Mathematica? D[u[x,y], x] - D[u[x,y], y] = x Sin[x y] - y Sin[x y] The answer is Cos[x y] added) The region is [-1,1] for x and [-1,1] for y. The boundary…
Xminer
  • 1
  • 7
  • 15
8
votes
2 answers

How can I make a region for boundary conditions for a 3D geometry?

I sometimes work with pipes which can take up complicated positions in 3D geometries. Here is a minimum working example of what I am trying to do. Suppose I want to mesh and calculate vibration frequencies for this solid curved tube. R0 = 1; r =…
Hugh
  • 16,387
  • 3
  • 31
  • 83
7
votes
1 answer

Discrepancy with volume of two differently generated finite element meshes

Can anyone explain the following behavior? I create a mesh on a Disk in two different ways. First I do it in one step with ToElementMesh. Then, in two steps using ToBoundaryMesh followed by ToElementMesh. Why are the total areas so…
Will.Mo
  • 1,237
  • 6
  • 12
6
votes
1 answer

How can I create higher order triangle elements when using NDSolve`FEM?

I'm using the Finite Element Method to solve an elasticity problem and i need to use a more precise element such as a nine node triangle. For my surprise when I run the code : Needs["NDSolve`FEM`"] mesh = ToElementMesh[Disk[], MaxCellMeasure…
Stratus
  • 2,942
  • 12
  • 24
6
votes
1 answer

How to get the answer I expect with NDSolve

I have been struggling with FEM method in NDSolve. I get the test problem "working" however it does not match well with the exact solution. My original problem has angle dependence as well. I was wondering how I can improve this result. There are…
mathlete
  • 61
  • 1
5
votes
1 answer

FEM code working well in v.12.1, has warning in v.13, and not working in v.13.2.1

Let us consider sound in a glass. Numerical model has been described here. FEM code is given by << NDSolve`FEM`; L = 0.14; L1 = 0.01; del = 0.003; r1 = 0.085/2; r2 = 0.055/2; polygon = Polygon[{{0, 0, 0}, {r2 + del, 0, 0}, {r2 + del, 0, L1}, {r1…
Alex Trounev
  • 44,369
  • 3
  • 48
  • 106
5
votes
1 answer

FEM: does the term $\gamma$ in "The Coefficient Form of Partial Differential Equations" has to be an explicit list?

In the FEM documentation, "The Coefficient Form of Partial Differential Equations" is I am interested in its simplification to $$ \nabla \cdot (-c \nabla u + \gamma) = 0 $$ where $c$ should be a matrix and $\gamma$ should be a vector, see FEM…
Mauricio Fernández
  • 5,463
  • 21
  • 45
5
votes
2 answers

How to get the node id in a specific coordinate in a finite element mesh?

The following code generates a finite element mesh. Needs["NDSolve`FEM`"] order = 2; mesh = ToElementMesh[ImplicitRegion[300 < Sqrt[x x + y y], {x, y}], {{0, 1000}, {0, 1000}}, MaxCellMeasure -> 2000, "MaxBoundaryCellMeasure" -> 10,"MeshOrder" ->…
Stratus
  • 2,942
  • 12
  • 24
4
votes
1 answer

How to find the number of nodes in finite element model

I am using Mathematica version 10 to solve a 2-D elliptic equation by the finite element method. I created a finite element model with a very fine mesh. Would you please suggest me a command to show the total number of nodes in the model. This is…
4
votes
1 answer

Is it possible to specify a node in ToElementMesh?

I want to make the mesh created by ToElementMesh has a node at my specified position. For example, in the following code, I discretize a disk to element meshes with ToElementMesh, and I want to a point, say (0.2,0.3), is coincident with a node. I…
Ice0cean
  • 813
  • 4
  • 11
4
votes
1 answer

Refinement problems

I have a hole in an infinite plate and a code that generates a finite element mesh of it. I need more elements concentrated near the hole, because the solution varies more at this region. The issue here is that in Mesh 1 is missing some elements…
Stratus
  • 2,942
  • 12
  • 24
3
votes
1 answer

Derivative on uneven grid using interpolate

I have a following problem: I have an uneven 2D grid of points with unknown function value. Let's take some nasty region: region = ImplicitRegion[x^2 + y^2 - (1/2)^2 >= 0, {{x, -1, 1}, {y, -1, 1}}]; ToElementMesh will create an approximate mesh of…
user16320
  • 2,396
  • 15
  • 25
3
votes
0 answers

FEM in Mathematica and AceGen

I just wanted to ask, if anybody has already worked with AceGen AceGen, Wolfram Research AceGen, Homepage and knows what clear advantages AceGen has compared to the new FEM in Mathematica 10 (besides creating code in C, FORTRAN or MATLAB and…
Mauricio Fernández
  • 5,463
  • 21
  • 45
1
2 3