doc:user:integration:scheme:dynimpl
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| doc:user:integration:scheme:dynimpl [2015/10/09 16:48] – [Data set] wautelet | doc:user:integration:scheme:dynimpl [2017/06/16 10:28] (current) – papeleux | ||
|---|---|---|---|
| Line 71: | Line 71: | ||
| + | ==== Damped Alpha-Generalized family ==== | ||
| + | Adding damping forces to the Alpha-Generalized time integration scheme family allow user to dissipate energy in a regulated way. According to the reference below, damping forces can be balanced between previous and current time as others (internal or external) forces through $\alpha_F$ parameter. The global system is then written by : | ||
| + | |||
| + | $$(1-\alpha_M) \boldsymbol{F}^{\text{inert}}(t^{n+1}) + \alpha_M \boldsymbol{F}^{\text{inert}}(t^n) + (1-\alpha_F) \boldsymbol{F}^{\text{damp}}(t^{n+1}) + \alpha_F \boldsymbol{F}^{\text{damp}}(t^n)$$ | ||
| + | $$+ (1-\alpha_F) \boldsymbol{F}^{\text{int}}(t^{n+1}) + \alpha_F \boldsymbol{F}^{\text{int}}(t^n) | ||
| + | = (1-\alpha_F) \boldsymbol{F}^{\text{ext}}(t^{n+1}) + \alpha_F \boldsymbol{F}^{\text{ext}}(t^n)$$ | ||
| + | |||
| + | where the damping forces are computed proportional to velocities : | ||
| + | $$ \boldsymbol{F}^{\text{damp}} = \boldsymbol{C} * v $$ | ||
| + | |||
| + | According to ref2 (chapter 3), an easy way to build a diagonal damping matrix is to compute a ponderated sum of the mass and stiffness matrices : | ||
| + | $$\boldsymbol{C} = a_k \boldsymbol{K} + a_m \boldsymbol{M}$$ | ||
| + | |||
| + | The modal damping factor corresponding to each eigen pulsation $\omega_{0r} = 2 \pi \phi$: | ||
| + | $$\epsilon_r=\frac{1}{2}(a_k \omega_{0r} + \frac{a_m}{\omega_{0r}} )$$ | ||
| + | |||
| + | telling us that the mass damping factor $a_m$ will induice damping on lowest eigen frequencies and that the stiff damping factor $a_k$ will induce damping on the higher eigen frequencies. | ||
| + | |||
| + | < | ||
| + | ref 1 : "The analysis of the Generalized-$\alpha$ method for non linear dynamic problems" | ||
| + | S.Erlicher, L.Bonaventura, | ||
| + | ref 2 : " | ||
| + | | ||
| + | </ | ||
| + | === Parameters to the scheme === | ||
| + | * Name of the scheme : '' | ||
| + | * Parameters : | ||
| + | * AlphaGeneralizedTimeIntegration parameters has to be defined as usual | ||
| + | * update of the damping matrix managed through '' | ||
| + | * DMUINIT : Damping matrix computed on initial configuration only | ||
| + | * DMUPERSTAGE : Damping matrix computed at each stage change | ||
| + | * DMUPERSTEP : Damping matrix computed at the beginning of each time step (base on previous equilibrated solution to avoid need of stiffness computation) | ||
| + | * Mass Damping Factor and Stiffness Damping Factor are defined though the [[doc: | ||
| + | | ||
| ==== Generalized Midpoint Rule ==== | ==== Generalized Midpoint Rule ==== | ||
| - | The equilibrium | + | The equilibrium |
| $$\boldsymbol{F}^{\text{inert}}(t^{n+\theta}) + \boldsymbol{F}^{\text{int}}(t^{n+\theta})= \boldsymbol{F}^{\text{ext}}(t^{n+\theta})$$ | $$\boldsymbol{F}^{\text{inert}}(t^{n+\theta}) + \boldsymbol{F}^{\text{int}}(t^{n+\theta})= \boldsymbol{F}^{\text{ext}}(t^{n+\theta})$$ | ||
| Line 119: | Line 153: | ||
| === Management of conservative algorithm === | === Management of conservative algorithm === | ||
| - | Parameters are set using functions associated | + | It is **mandatory** |
| + | < | ||
| caf = ConsistentAlgorithmFunctions(metafor) | caf = ConsistentAlgorithmFunctions(metafor) | ||
| caf.setDissipationParameter(diss) | caf.setDissipationParameter(diss) | ||
| caf.setConservingContactMethod(consContactMeth) | caf.setConservingContactMethod(consContactMeth) | ||
| + | </ | ||
| where | where | ||
| Line 150: | Line 184: | ||
| ===== Data set ===== | ===== Data set ===== | ||
| - | === Defining material density === | + | ==== Defining material density |
| For the domain '' | For the domain '' | ||
| Line 156: | Line 190: | ||
| matset[no].put(MASS_DENSITY, | matset[no].put(MASS_DENSITY, | ||
| - | === Defining initial velocites === | + | ==== Defining initial velocites |
| metafor.getInitialConditionSet().define(numero, | metafor.getInitialConditionSet().define(numero, | ||
| - | === Choosing the algorithm === | + | ==== Choosing the algorithm |
| - | Old Metafor Version <= 2422 | + | === Old Metafor Version <= 2422 === |
| ^ Scheme | ^ Scheme | ||
| Line 173: | Line 207: | ||
| (see [[doc: | (see [[doc: | ||
| - | ==== New Metafor Version > 2422 ==== | + | === New Metafor Version > 2422 === |
| - | === Central Difference === | + | == Consistent Time Integration (EMCA or EDMC) == |
| < | < | ||
| - | ti = CentralDifferenceTimeIntegration(metafor) | + | ti = ConsistentTimeIntegration(metafor) |
| metafor.setTimeIntegration(ti) | metafor.setTimeIntegration(ti) | ||
| </ | </ | ||
| - | === Chung Hulbert === | + | == Generalized Midpoint Rule == |
| < | < | ||
| - | ti = ChExplicitTimeIntegration(metafor) | + | ti = MpgTimeIntegration(metafor) |
| - | ti.setRhoB(_rhoB) | + | ti.setTheta(_theta) |
| metafor.setTimeIntegration(ti) | metafor.setTimeIntegration(ti) | ||
| </ | </ | ||
| - | The parameter "_rhoB" is the spectral radius at bifurcation point ([0, 1]). The default value is 0.8182. | + | The parameter "_theta" is defined above. The default value is 1.1. |
| - | === Tchamwa === | + | == Alpha Generalized Family |
| < | < | ||
| - | ti = TchamwaTimeIntegration(metafor) | + | ti = AlphaGeneralizedTimeIntegration(metafor) |
| - | ti.setRhoB(_rhoB) | + | ti.setAlphaM(_AlphaM) |
| + | ti.setAlphaF(_AlphaF) | ||
| + | ti.setBeta0(_Beta0) | ||
| + | ti.setGamma0(_Gamma0) | ||
| metafor.setTimeIntegration(ti) | metafor.setTimeIntegration(ti) | ||
| </ | </ | ||
| - | The parameter | + | The parameters |
| Useful parameters : see [[quasistatique|quasi-statique]]. | Useful parameters : see [[quasistatique|quasi-statique]]. | ||
doc/user/integration/scheme/dynimpl.1444402103.txt.gz · Last modified: (external edit)
