Users:General FEM Analysis/Analyses Reference/Dynamic Analysis

From Carat++ Public Wiki
(Difference between revisions)
Jump to: navigation, search
Line 47: Line 47:
 
!Description
 
!Description
 
|-
 
|-
!PC-ANALYSIS       
+
}       
| ''int''                   
+
|Analysis with the number ''int'' the number have to be followed by : FOMFINDING                     
+
|-                     
+
!DOMAIN
+
|EL-DOMAIN ''int''
+
|Domain which should be calculated. The Parameter EL-DOMAIN should be defined in the Element Block of the Inputfile
+
|-}       
+
  
  
Line 75: Line 68:
 
=== Path Following Methods ===
 
=== Path Following Methods ===
 
The iterative solution of the nonlinear problem requires path following methods. The most simple path following method is a pure '''Load Control'''. Here the parameter ''lambda'' is increased according to the specified load curve. This allows nonlinear analysis for relatively robust nonlinear problems. But as soon as the structure shows instabilities the load control method usually does not not converge anymore. In this case the '''Arc Length''' method can be applied to compute the equilibrium path. This method controls the so called arc length which is defined as a combination from displacement increment and load increment. In general it is also possible to directly control a specified displacement. But actually this path control method is not available in Carat++. More information about path following methods can be found in the thesis of Reiner Reitinger<ref name="Rei94">Reitinger, R.: Stabilität und Optimierung imperfektionsempfindlicher Tragwerke, Dissertation, Bericht Nr. 17, Institut für Baustatik, Universität Stuttgart, 1994</ref> and Amphon Jarusjarungkiat.
 
The iterative solution of the nonlinear problem requires path following methods. The most simple path following method is a pure '''Load Control'''. Here the parameter ''lambda'' is increased according to the specified load curve. This allows nonlinear analysis for relatively robust nonlinear problems. But as soon as the structure shows instabilities the load control method usually does not not converge anymore. In this case the '''Arc Length''' method can be applied to compute the equilibrium path. This method controls the so called arc length which is defined as a combination from displacement increment and load increment. In general it is also possible to directly control a specified displacement. But actually this path control method is not available in Carat++. More information about path following methods can be found in the thesis of Reiner Reitinger<ref name="Rei94">Reitinger, R.: Stabilität und Optimierung imperfektionsempfindlicher Tragwerke, Dissertation, Bericht Nr. 17, Institut für Baustatik, Universität Stuttgart, 1994</ref> and Amphon Jarusjarungkiat.
 
=== Step Length Control ===
 
Actually there exist two methods for step length control in Carat++. The most simple method is the fixed step length which computes the whole load displacement path with a constant step length. This procedure is robust but inefficient because a large number of load steps has to be computed. Usually it is more efficient to apply adaptive step length methods. A very robust method was presented by Crisfield and Ramm, c.f. <ref name="Rei94" />. This method specifies the actual step length for the time step ''i'' by the operation ''StepLength_i'' = ''alpha'' * ''StepLength_i-1''. The parameter ''alpha'' is computed by ''(J_d / (J_i-1 * (Nmb_Restarts+1)))^p'' with: ''J_d'' = desired number of equilibrium iterations, ''J_i-1'' = equilibrium iterations of last time step and ''p'' equals the exponent.
 
  
 
<pre>
 
<pre>
Line 92: Line 82:
 
</pre>
 
</pre>
  
Thus, if the number of equilibrium iterations is larger than a desired value the step length is decreased for the next time step. If the number of equilibrium iterations is smaller than a desired value the step length is increased for the next time step. The exponent ''p'' can be used to manipulate the update speed. It should be used with care.
 
 
=== Simultaneous Eigenvalue Analysis ===
 
Reaching critical points of the load displacement path (limit points, bifurcation points, ...) requires special investigations. A simultaneous eigenvalue analysis solving the problem ('''K'''_t - ''eigenvalue'' * '''I''') '''phi''' = '''0''' allows for approximation of the load factor at the next critical point ''lambda''_k. Whenever a critical point is reached the above equations yields to a zero eigenvalue. Extrapolating the current load factor according to the eigenvalue allows for good approximations of the critical load.
 
 
=== Imperfect Designs ===
 
Many structures subjected to large compression loading are sensitive to geometrical imperfections. Unfortunately the shape of the imperfection is a priori unknown but mostly some information about tolerances exist. In the nonlinear analysis the imperfection shapes can be computed as sum of several  normalized eigenmodes. The final imperfection mode is then scaled by the specified tolerance. This operation can be expressed by d'''x'''_imp = tol * (sum_i '''phi'''_i). After computation of the imperfection mode, the geometry of the structure is modified and the nonlinear analysis starts with the imperfect geometry.
 
  
 
== Input Parameters ==
 
== Input Parameters ==
Line 104: Line 87:
 
=== Parameter Description ===
 
=== Parameter Description ===
  
{| border="1" cellpadding="3" cellspacing="0"
 
|colspan="3" style="background:#efefef;"| Compulsory Parameters
 
|-
 
!Parameter
 
!Values, Default(*)
 
!Description
 
|-
 
!PC-ANALYSIS
 
|''int'' : STA_GEO_NONLIN
 
|Keyword of nonlinear analysis with analysis ID
 
|-
 
!PATHCONTROL
 
|FORCE or ARCLENGTH or DISPLACEMENT
 
|Definition of path control method. (DISPLACEMENT is actually not available.)
 
|-
 
!SOLVER
 
|PC-SOLVER ''int''
 
|Linking to a linear solver (direct or iterative)
 
|-
 
!OUTPUT
 
|PC-OUT ''int''
 
|Linking to output objects (specifies the type of output format, e.g. GiD)
 
|-
 
!COMPCASE
 
|LD-COM ''int''
 
|Linking to computation case object which specify the boundary conditions (loading and supports). Only a single computation case is allowed.
 
|-
 
!DOMAIN
 
|EL-DOMAIN ''int''
 
|Linking to the domain the analysis should work on
 
|-
 
!NUM_STEP
 
|''int''
 
|Number of time steps that have to be calculated
 
|-
 
!MAX_ITER_EQUILIBRIUM
 
|''int''
 
|Maximum number of equilibrium iterations that are allowed. 
 
|-
 
!EQUILIBRIUM_ACCURACY
 
|''float''
 
|Equilibrium accuracy that has to be reached for convergence. The convergence is checked with the L2 norm of the incremental displacements.
 
|-
 
!CURVE
 
|LD-CURVE ''int''
 
|Linking to the load curve.
 
|-
 
|colspan="3" style="background:#efefef;"| Optional Parameters
 
|-
 
!TRACED_NODE
 
|''int''
 
|Node ID of traced node. Used for screen and log file output.
 
|-
 
!TRACED_NODAL_DOF
 
|''dof type''
 
|DOF type of node TRACED_NODE that has to be traced (DISP_X, DISP_Y, DISP_Z, ...).
 
|-
 
!STEP_LENGTH_CONTROL
 
|FIXED or CRISFIELD_RAMM
 
|Type of step length control algorithm (for ARCLENGTH method). FIXED specifies a constant step size where the desired step size is defined by the parameter STEP_LENGTH_CONTROL_REALS. CRISFIELD_RAMM specifies an adaptive method according to Crisfield and Ramm, c.f. <ref name="Rei94" />. In this case the parameter  STEP_LENGTH_CONTROL_INTS = ''int'' specifies the number of restarts that are allowed. The other necessary parameters are specified by STEP_LENGTH_CONTROL_REALS. See the example below. 
 
|-
 
!STEP_LENGTH_CONTROL_REALS
 
|''float'', ''float'', ...
 
|respective number of floats for step length control algorithm
 
|-
 
!STEP_LENGTH_CONTROL_INTS
 
|''int'', ''int'', ...
 
|respective number of integers for step length control algorithm
 
|-
 
!SIMULTANEOUS_EIGENVALUE_ANALYSIS
 
|1 or 0
 
|flag to specify if a simultaneous eigenvalue analysis should be performed, 0 - no eigenvalue analysis, 1 - perform eigenvalue analysis. This flag requires definition of parameter EIGEN_SOLVER.
 
|-
 
!EIGEN_SOLVER
 
|PC-SOLVER ''int''
 
|Linking to an eigenvalue solver
 
|-
 
!IMPERFECTION_MODES
 
|''int'', ''int'', ''int'', ...
 
|specifies which eigen modes should be summarized to the imperfection mode. Computation of imperfect design requires definition of parameter EIGEN_SOLVER.
 
|-
 
!IMPERFECTION_SIZE
 
|''float''
 
|specifies the size of the imperfection mode.
 
|}
 
  
  
 
=== Example of a Complete Input Block ===
 
=== Example of a Complete Input Block ===

Revision as of 09:12, 7 September 2010


Contents

General Description

The dynamic analysis is used to analyze the time-dependent or transient behavior of structures. There exist various analysis types with different time integration algorithms and geometric linear and nonlinear formulations to cover small and large structural displacements.

Discretization in Space

The unknown variables used to describe the transient behavior of a structure are the displacement d, the velocity v and the acceleration a. The discretization in space by the Finite Element Method (FEM) leads to the general form of the linear equation of motion:

M a(t)+C v(t)+K d(t)=f(t)

with M as the mass matrix, C as the damping matrix, K as the linear stiffness matrix and f as the external and time-dependent force vector. It has to be noted, that the unknown variables are time-dependent.

Discretization in Time

For the discretization in time a time integration algorithm is used. The discretization is done in two steps. First, the examined time period t=[t0, ttot] is subdivided into discrete intervalls [tn, tn+1] and corresponding time steps Δtn=tn+1-tn. Seccond, for the progress of the variables within a timestep certain assumptions are made, depending on the choosen time integration algorithm. The solution is then only computed at discrete times. In Carat++ implicit time integration algorithms are used, which satisfy dynamic equilibrium at time n+1. Now, the system has the form:

M an+1+C vn+1+K dn+1=fn+1

This is an equation system with ndof equations, but 3 x ndof unknowns.

Linear Equation System

The chosen time integration algorithm allows a reduction to ndof equations, so it makes the system solvable. The acceleration and velocity can be formulated depending on the displacements only, so the main variable is the displacement. Using e.g. the Newmark-beta method leads to the following linear equation system:

(1/βΔt2 M + γ/2Δt C + K) dn+1=fn+1 + M(1/βΔt2dn + 1/βΔt vn + ...) +C(-vn- (1-γ)Δt an+...)

This system is solved in every timestep. All terms on the right hand side are already known and the system can be solved for the unknown displacements dn+1. After this, the corresponding velocity and acceleration are determined by backsubstitution.

Time Integration Methods

There are currently two time integration methods implemented:

  • Newmark-beta method,
  • Generalized-alpha method.

The Newmark-beta method uses two control parameters, β and γ. The choice of these parameters influences the accuracy and stability of the algorithm. Accuracy of 2nd order is given for β=0.25 and γ=0.5. Dissipation of higher frequencies is reached for γ≥0.5, but the accuracy is diminished to 1st order. Unconditional stability is guaranteed for a combination that ensures 2β≥γ≥0.5.

The Generalized-alpha method is based on the Newmark-beta method, but the equilibrium condition is formulated between two timesteps by linear blending. It uses four control parameters, β and γ from the Newmark-beta method and additionally the two linear shift-parameters αm and αf. The advantage of the Generalized-alpha method is to ensure 2nd order accuracy with controllable damping of higher frequency modes. The control parameters depend on the wanted damping of the higher frequencies, which is described by the spectral radius ρ. For ρ=1.0 no damping occurs, for ρ<1.0 higher frequencies are damped.


}

Geometric Linearity and Nonlinearity

Rayleigh Damping

Initial Load

Restart Functionaliy

Path Following Methods

The iterative solution of the nonlinear problem requires path following methods. The most simple path following method is a pure Load Control. Here the parameter lambda is increased according to the specified load curve. This allows nonlinear analysis for relatively robust nonlinear problems. But as soon as the structure shows instabilities the load control method usually does not not converge anymore. In this case the Arc Length method can be applied to compute the equilibrium path. This method controls the so called arc length which is defined as a combination from displacement increment and load increment. In general it is also possible to directly control a specified displacement. But actually this path control method is not available in Carat++. More information about path following methods can be found in the thesis of Reiner Reitinger[1] and Amphon Jarusjarungkiat.

Example:  Actual iteration step:                                   i
          Number of desired equilibrium iterations:                J_d = 8.
          Number of equilibrium iterations in the last time step:  J_i-1 = 12.
          Number of restarts:                                      Nmb_Restarts = 0.
          Exponent:                                                p=1.0.
          Step length of last step:                                StepLength_i-1 = 0.2.

          alpha = ( 8 / (12*(0+1)))^(1.0) = (8 / 12)^(1.0) = 2/3.
          StepLength_i = 2/3 * 0.2 = 0.1333. 


Input Parameters

Parameter Description

Example of a Complete Input Block

Parameter Combination for Generalized-Alpha Method
Parameter Values Description

Cite error: <ref> tags exist, but no <references/> tag was found



Whos here now:   Members 0   Guests 0   Bots & Crawlers 1
 
Personal tools
Content for Developers