playground:tempjim
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
playground:tempjim [2014/08/27 18:09] – jim_brouzoulis | playground:tempjim [2014/08/28 21:53] (current) – jim_brouzoulis | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | \( | ||
+ | | ||
+ | \) | ||
+ | $$\b{a}_{\rm{i}} \rm{b} b$$ | ||
+ | |||
====== Implementation of a linear plane stress triangle ====== | ====== Implementation of a linear plane stress triangle ====== | ||
This tutorial will describe the implementation of a standard plane stress triangle with linear approximation of the displacement field. | This tutorial will describe the implementation of a standard plane stress triangle with linear approximation of the displacement field. | ||
+ | For quasi-static problems the following set of equations needs to be solved | ||
+ | $$\mathbf{f}_{\mathrm{int}} = \mathbf{f}_{\mathrm{ext}}$$ | ||
+ | with the internal and external force vectors respectively | ||
+ | $$\b{f}_{\rm{int}} = \int_V \b{B}^{\rm{T}} \b{\sigma} \ \rm{d}V $$ | ||
- | Each element, in the structural module (SM) needs to compute the following quantities: | + | $$\b{f}_{\rm{ext}} = \int_V \b{N}^{\rm{T}} \b{b} \ \rm{d}V |
+ | + \int_{\Gamma} \b{N}^{\rm{T}} \b{t} \ \rm{d}\Gamma $$ | ||
- | Internal load vector | + | The default solution procedure for solving the equations are a Newton-Rapshon scheme and for this the tangent |
- | $$\mathbf{f}_{\mathrm{int}} = \int_V \mathbf{B}^{\mathrm{T}} \mathbf{\sigma} \ \mathrm{d}V $$ | + | computed as |
- | + | ||
- | External load vector | + | |
- | $$\mathbf{f}_{\mathrm{ext}} = \int_V \mathbf{N}^{\mathrm{T}} \mathbf{b} \ \mathrm{d}V | + | |
- | + \int_{\Gamma} \mathbf{N}^{\mathrm{T}} \mathbf{t} \ \mathrm{d}\Gamma $$ | + | |
- | + | ||
- | Tangent | + | |
$$\mathbf{K} = \int_V \mathbf{B}^{\mathrm{T}} \mathbf{D} \mathbf{B} \ \mathrm{d}V $$ | $$\mathbf{K} = \int_V \mathbf{B}^{\mathrm{T}} \mathbf{D} \mathbf{B} \ \mathrm{d}V $$ | ||
- | + | Since the FE equations for all standard continuum elements (2D plane stress/ | |
- | Since the FE equations for all standard continuum elements (2D plane stress/ | + | of the element implementations are placed in the base class '' |
- | of the element implementations are placed in the base class '' | + | For example, this base class implements |
- | + | The main question that arises is then: what must a new element implement? In short it is everything that is element specific, such as | |
- | This class implements the integration over the volume | + | the following: |
* \(\mathbf{N}\) and \(\mathbf{B}\) matrices | * \(\mathbf{N}\) and \(\mathbf{B}\) matrices | ||
- | | + | * These depends on the number of nodes and the number o dofs stored in each node. |
+ | | ||
+ | * This defines what type of integration alogorithm | ||
+ | * if there should be several algorithms to support reduced integration for example. | ||
* Compute the differential volume element \(\Delta V \) and \(\Delta \Gamma \) | * Compute the differential volume element \(\Delta V \) and \(\Delta \Gamma \) | ||
Line 82: | Line 89: | ||
$$ | $$ | ||
- | From this matrix | + | From these derivatives |
$$\mathbf{B} | $$\mathbf{B} | ||
= \begin{pmatrix} | = \begin{pmatrix} | ||
Line 135: | Line 142: | ||
virtual int testElementExtension(ElementExtension ext) { return ( ( ext == Element_EdgeLoadSupport ) ? 1 : 0 ); } | virtual int testElementExtension(ElementExtension ext) { return ( ( ext == Element_EdgeLoadSupport ) ? 1 : 0 ); } | ||
</ | </ | ||
+ | |||
+ | <file - BasicElement.C> | ||
+ | </ | ||
+ | |||
+ | <file - BasicElement.h> | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Problem representation - Engineering model ===== | ||
+ | |||
+ | The concept " | ||
+ | consideration. It represents the type of analysis to be performed (e.g. static structural, transient heat flow, etc.). | ||
+ | The base class '' | ||
+ | characteristic components and services for starting the solution step and | ||
+ | its termination. Derived classes ``know'' | ||
+ | equation and the physical meaning of particular components. | ||
+ | They are responsible for forming the governing equation for each solution | ||
+ | step, usually by summing contributions from particular elements and | ||
+ | nodes.ecific load type dependent | ||
+ | services and implement all necessary services. | ||
playground/tempjim.1409155770.txt.gz · Last modified: 2014/08/27 18:09 by jim_brouzoulis