doc:user:integration:scheme:dynexpl
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
doc:user:integration:scheme:dynexpl [2013/07/12 15:23] – created joris | doc:user:integration:scheme:dynexpl [2022/12/21 11:35] (current) – [New Metafor Version > 2422] boman | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Explicit dynamic integration schemes ====== | ||
+ | ===== Description ===== | ||
+ | |||
+ | The equilibrium equation between internal forces Fint, inertial forces Ma (where M is the diagonalized mass matrix and a the acceleration) and external forces Fext : | ||
+ | |||
+ | Ma+Fint=Fext | ||
+ | |||
+ | |||
+ | ==== Central difference method ==== | ||
+ | |||
+ | Relations between displacements x, velocities v and accelerations a are: | ||
+ | |||
+ | v(tn+1/2)=v(tn−1/2)+(tn+1−tn)a(tn) \\ | ||
+ | x(tn+1)=x(tn)+(tn+1−tn)v(tn+1/2) | ||
+ | |||
+ | The equilibrium equation becomes : | ||
+ | |||
+ | a(tn+1)=(Fext(tn+1)−Fint(tn+1))/M | ||
+ | |||
+ | This scheme is conditionally stable (time step limited) and non dissipative. | ||
+ | |||
+ | ==== Alpha-generalized scheme ==== | ||
+ | |||
+ | Same relations as in the implicit [[dynimpl|alpha-generalized]] scheme, but with the parameter used to weight internal and external forces equal to 1, leading to : | ||
+ | |||
+ | (1−αM)a(tn+1)+αMa(tn)=Fext(tn)−Fint(tn)M | ||
+ | |||
+ | Relations between displacements x, velocities v and accelerations a are: | ||
+ | |||
+ | x(tn+1)=x(tn)+(tn+1−tn)v(tn)+(tn+1−tn)2((0.5−β)a(tn)+βa(tn+1)) | ||
+ | v(tn+1)=v(tn)+(tn+1−tn)(1−γ)a(tn)+γa(tn+1) | ||
+ | |||
+ | Specific values leading to an optimal numerical dissipation are given as function of the spectral radius ρβ ('' | ||
+ | |||
+ | αM=(2ρβ−1)/(1+ρβ)\\ | ||
+ | γ=3/2−αM\\ | ||
+ | β=5−3ρβ(1+ρβ)2(2−ρβ) | ||
+ | |||
+ | Conditionally stable. | ||
+ | |||
+ | ==== Tchamwa Scheme ==== | ||
+ | |||
+ | |||
+ | |||
+ | Explicit algorithm where numerical dissipation is monitored by the parameter ϕ. | ||
+ | |||
+ | Equilibrium computed with | ||
+ | |||
+ | a(tn+1)=Fext(tn+1)−Fint(tn+1)M | ||
+ | |||
+ | Relations between displacements x, velocities v and accelerations a are: | ||
+ | |||
+ | x(tn+1)=x(tn)+(tn+1−tn)v(tn)+ϕ(tn+1−tn)2a(tn)\\ | ||
+ | v(tn+1)=v(tn)+(tn+1−tn)a(tn) | ||
+ | |||
+ | Stability guaranteed for ϕ≥1 and high frequencies killed over a single time step for \phi = 2$. the scheme is of : | ||
+ | * second order for ϕ=1 (no numerical dissipation) | ||
+ | * first order for ϕ>1 (numerical dissipation) | ||
+ | |||
+ | Relation between ϕ and spectral radius for the bifurcation ρβ (user parameter '' | ||
+ | * ϕ=2(1−ρ1/2β)(1−ρβ) if ρβ<1 | ||
+ | * ϕ=1 if ρβ=1 | ||
+ | |||
+ | ===== Input file ===== | ||
+ | |||
+ | See [[dynimpl|dynamic implicit]] scheme for definition of density and initial velocities. | ||
+ | |||
+ | ==== Old Metafor Version <= 2422 ==== | ||
+ | |||
+ | === Choosing the algorithm === | ||
+ | |||
+ | ^ | ||
+ | | Certered difference | ||
+ | | Chung Hulbert | ||
+ | | Tchamwa | ||
+ | |||
+ | (see [[doc: | ||
+ | |||
+ | ==== New Metafor Version > 2422 ==== | ||
+ | |||
+ | === Centered Difference === | ||
+ | |||
+ | < | ||
+ | ti = CentralDifferenceTimeIntegration(metafor) | ||
+ | metafor.setTimeIntegration(ti) | ||
+ | </ | ||
+ | |||
+ | === Chung Hulbert === | ||
+ | |||
+ | < | ||
+ | ti = ChExplicitTimeIntegration(metafor) | ||
+ | ti.setRhoB(_rhoB) | ||
+ | metafor.setTimeIntegration(ti) | ||
+ | </ | ||
+ | |||
+ | The parameter '' | ||
+ | |||
+ | === Tchamwa === | ||
+ | |||
+ | < | ||
+ | ti = TchamwaExplicitTimeIntegration(metafor) | ||
+ | ti.setRhoB(_rhoB) | ||
+ | metafor.setTimeIntegration(ti) | ||
+ | </ | ||
+ | |||
+ | The parameter '' | ||
+ | |||
+ | Other parameters : see [[quasistatique]] |