# Tag Info

9

The finite element method is actually quite widely used in fluid flow problems, for example for the Stokes and Navier-Stokes equations. The delineation between the methods is more along the following line: The finite element method is very well suited for second order (in space) differential equations. That has something to do with the fact that trial and ...

8

There are two main ways to write stress/strain tensors as 6 components vectors: Voigt notation, that is the most common; and Mandel-Kelvin notation, that has the advantage of writing stress and strains in the same way, so their rotations are done via the same $6\times 6$ matrices. A reference that I consider good for Voigt's notation is Auld's book (Vol. ...

7

Nick Alger gives a nice explanation. Here is another one, possibly slightly simpler because it avoids the "should stay roughly the same" part. Let's say you want to compute the derivative of any matrix function $X=X(C)$ with regard to entry $C_{ij}$: $$\frac{\partial X}{\partial C_{ij}}.$$ In other words, you ask how the matrix $X$ changes as you change ...

6

To calculate the reaction forces at a node, Abaqus (or any structural FE code) simply sums the internal forces for all elements attached to that node. The reaction forces are the negative of that sum. For an Abaqus user element, the internal forces for the element are returned from subroutine UEL in the RHS array. The returned stiffness matrix (Jacobian), ...

6

In short, no. Neumann boundary conditions should be specified in terms of traction. This is clear when you move from a strong-form statement of the boundary value problem to a weak-form. Strong form: \begin{align} div(\sigma(\mathbf{u})) + \mathbf{b} &= \mathbf{0} &&\forall \mathbf{x} \in \Omega \\ \mathbf{u} &= \hat{\mathbf{u}}(\mathbf{x}) &...

6

Wave equations like this can be rewritten as a hyperbolic system of first-order conservation laws: $$q_t + \nabla \cdot F(q) = 0.$$ The stable time step for any explicit numerical discretization depends on the CFL number, which is proportional to the maximum wave speed appearing in the problem. That speed can be found by computing the eigenvalues of the ...

6

The standard, displacement formulation quadrilateral is notoriously bad at representing bending behavior, especially with only one element through the thickness of the beam. This is often referred to as "shear locking", so named because when the element shape functions attempt to represent pure bending of the beam, they also produce large, non-physical in-...

6

All of the major finite element libraries (such as libMesh; FEniCS; or the project I run, deal.II) provide you with ready access to the system matrix and or any other matrices you need. They typically also have tutorials and examples from a wide variety of areas (e.g., structures, fluids, etc) that you can use to generate examples. Maybe a simpler first ...

6

The general idea comes from this example. Imagine a rigid pendulum of length $l_0$ hanging a mass $m_0$. The equation of motion can be derived from a minimum principle (Lagrangian). Denoting with $\theta$ to the angle which the pendulum forms with respect to the vertical direction we have: $$\mathcal{L}(\theta) = \int_{t_1}^{t_2}\left[\frac{1}{2}m_0l_0^2\... 6 The condition number for the stiffness matrix of any method (finite elements, finite volumes, finite differences) applied to a second order differential operator always grows as {\cal O}(h^{-2}) where the exponent equals the order of the differential operator. As a consequence, if you just make the mesh fine enough, you can make the condition number ... 5 It sounds as if you're running a time-dependent linear elasticity simulation, right? Most likely, you're running an "Explicit" time-stepping scheme, which means that all of your information at time t_{i+1} is computed entirely using information from time t_i (or t_{i-1}...). One consequence of such a scheme is that in order to be a stable time ... 5 The particular set of constraints you have chosen does not prevent a rigid body rotation about node 1. Thus the stiffness matrix is singular, as you have noted. One way to prevent this rigid body rotation is to set the y-displacement at node 2 to zero. You could also constrain the x-displacement at either node 3 or node 4 to prevent the rotation. One way ... 4 Specific answers to this question are probably time-limited. However, the following general approach (from the great Eric S. Raymond) works very well: Rule of Modularity: Write simple parts connected by clean interfaces. Rule of Clarity: Clarity is better than cleverness. Rule of Composition: Design programs to be connected to other programs. Rule of ... 4 I suggest you take a look at this site: http://shellbuckling.com/index.php Dave Bushnell has pretty much written the book on computational techniques for buckling analysis. There is a wealth of information on both classical and computational approaches to buckling analysis here. I would start with his survey paper: http://shellbuckling.com/papers/bosor4/... 4 The most commonly used explicit ODE solver in structural analysis is the central difference method. Because it is explicit, the solution becomes unstable if the time step is larger than a so-called critical time step. The calculation of this critical time step is straightforward and can be found in many references (e.g. page 808 in this text by Bathe ) and ... 4 You need to know which equations you need to solve inc initial conditions. IMO, a disadvantage of click&result software is that it's not transparent to what you are actually solving. Why don't you try solving the equations using a ODE solver in Python (using SciPy) and visualize using Matplotlib? At least you will have exact control over what you are ... 4 The traction is defined as$$ \mathbf{t} = \mathbf{n} \cdot \boldsymbol{\sigma} $$In terms of components, the zero-traction condition is$$ t_j = \sum_i n_i \sigma_{ij} = 0 $$From the above you can see that the stress components don't necessarily have to be zero for the traction to be zero. For a linear elastic material,$$ \boldsymbol{\sigma} = \...

4

The primary problem is that the CST approximation has a different displacement response depending on the orientation of mesh elements relative to the applied element loading (you're only allowed to applied forces on the nodes of triangles, so distributed loads must be approximated). You can see the effect of this by looking at only a single triangle ...

4

The reason that this particular mesh does not give the correct, uniform displacement solution to this problem is that it is "non-conforming." Specifically, at the intersection of the two cubes in the model, the two element edges that cross that face don't align with each other but instead cross each other. A typical face in a non-conforming mesh ...

4

You already know that at least theoretically, unconstrained matrices have a null space and consequently eigenvalues that are equal to zero. But, in practice, this is a meaningless condition because it can not be checked in an efficient way for large problems. The question you specifically ask is how you can detect whether constraints have been applied, and ...

4

Use of Lagrange multipliers produces a saddle-point problem, $$\begin{pmatrix} A & B^T \\ B & 0 \end{pmatrix} \begin{pmatrix} u \\ \lambda \end{pmatrix} = \begin{pmatrix} b \\ 0 \end{pmatrix}$$ As you've noticed, many preconditioners break down for this sort of system. One can use direct solvers that support pivoting, but if you want iterative ...

4

So so many places you have to rewrite. The whole mesh handling (accessing faces and edges from cells, neighbors from cells, ...). Shape functions. Dealing with the question of how the normal vector of a face when seen from one cell matches that on a neighboring cell. You will also likely encounter that 3d problems are always much larger and that solvers, ...

3

Once the solution of the problem is known, i.e. you know displacement vector, to calculate reaction/internal forces an integral is evaluated \mathbf{f}^\textrm{int} = \sum_{e=1}^{n_e} \int_\Omega \mathbf{B}^\textrm{T}({\boldsymbol\sigma}(\boldsymbol\varepsilon)) \textrm{d}\Omega = \sum_{i=1}^{n_e} \sum_{i=1}^{n_g} j_i w_i \left( \mathbf{...

3

In general, in the linearized theory of elasticity, it is only the displacement gradients that need to be small compared to unity. The displacements don't need to be small. (Note that when we say displacements are small, we usually mean displacements nondimensionalized with some quantity such as the characteristic length of the structure. The length of a ...

3

It is a matter of boundary conditions on the longitudinal faces. As you noted, the axial stress and strain for a linear isotropic material will satisfy the following relation: $$\sigma_{xx} = \lambda(e_x + e_y + e_z) + 2\mu e_x.$$ If you assume zero transverse strains (for example in the case of sliding contact boundary ...

3

It depends on the control which you have, if your control function is linear, for example crack mouth opening control, it will work with zero initial step. For spherical control you need kick-start analysis. The equilibrium equation is arguments with control equation as follows, \left\{ \begin{array}[l] \mathbf{r}(\mathbf{x},\lambda) = \...

3

The approach you are describing distributes discrete damping (not stiffness) elements along the boundary of an elastic region to approximately absorb the stress waves that hit the boundary instead of having them reflect back into the region. The classic reference for the approach is Lysmer and Kuhlemeyer. This approach is used in the ABAQUS FEA code and is ...

3

For this problem you have mixed boundary conditions. Then, you really have 8 boundary conditions for the problem that you present in your sketch. Although, 4 of them are not explicitly written. These are: Top side: Non-homogeneous Neumann BC (normal traction): $\sigma_n=C$ Homogeneous Neumann BC (tangent traction): $\sigma_t = 0$ Left side: Homogeneous ...

3

You can model a whip as a solid object (solids or beams) in FEA. You'll need a package that does dynamic(transient) response with nonlinear large displacements. The latter is important because the direction of the force would probably change as the whip bends. For a list of packages showing which support these features, see http://feacompare.com

3

if you need a program with 3D capabilities I would suggest Elmer, that provides a graphical user interface and is easy to use. If 2D capabilities are enough, I would suggest Agros that has a really nice GUI (better than most of commercial software) and its use is intuitive. According to your description you can model your problem as a set of beams, and this ...

Only top voted, non community-wiki answers of a minimum length are eligible