Commit Graph

16 Commits

Author SHA1 Message Date
Henry Weller
f4202d9ee6 sixDoFSolver: Run-time selectable solver (integrator) for sixDoFRigidBodyMotion
The built-in explicit symplectic integrator has been replaced by a
general framework supporting run-time selectable integrators.  Currently
the explicit symplectic, implicit Crank-Nicolson and implicit Newmark
methods are provided, all of which are 2nd-order in time:

Symplectic 2nd-order explicit time-integrator for 6DoF solid-body motion:

    Reference:
        Dullweber, A., Leimkuhler, B., & McLachlan, R. (1997).
        Symplectic splitting methods for rigid body molecular dynamics.
        The Journal of chemical physics, 107(15), 5840-5851.

    Can only be used for explicit integration of the motion of the body,
    i.e. may only be called once per time-step, no outer-correctors may be
    applied.  For implicit integration with outer-correctors choose either
    CrankNicolson or Newmark schemes.

    Example specification in dynamicMeshDict:
    solver
    {
        type    symplectic;
    }

Newmark 2nd-order time-integrator for 6DoF solid-body motion:

    Reference:
        Newmark, N. M. (1959).
        A method of computation for structural dynamics.
        Journal of the Engineering Mechanics Division, 85(3), 67-94.

    Example specification in dynamicMeshDict:
    solver
    {
        type    Newmark;
        gamma   0.5;    // Velocity integration coefficient
        beta    0.25;   // Position integration coefficient
    }

Crank-Nicolson 2nd-order time-integrator for 6DoF solid-body motion:

    The off-centering coefficients for acceleration (velocity integration) and
    velocity (position/orientation integration) may be specified but default
    values of 0.5 for each are used if they are not specified.  With the default
    off-centering this scheme is equivalent to the Newmark scheme with default
    coefficients.

    Example specification in dynamicMeshDict:
    solver
    {
        type    CrankNicolson;
        aoc     0.5;    // Acceleration off-centering coefficient
        voc     0.5;    // Velocity off-centering coefficient
    }

Both the Newmark and Crank-Nicolson are proving more robust and reliable
than the symplectic method for solving complex coupled problems and the
tutorial cases have been updated to utilize this.

In this new framework it would be straight forward to add other methods
should the need arise.

Henry G. Weller
CFD Direct
2015-10-19 14:03:46 +01:00
Henry
74ff779618 tutorials/multiphase/interDyMFoam/ras/floatingObject: Update to demonstrate MULES with Crank-Nicolson 2015-02-22 12:53:34 +00:00
OpenFOAM-admin
9fb26d59d3 GIT: Repo update 2014-12-11 08:35:10 +00:00
Henry
d49889402f sixDoFRigidBodyMotion: Add support to specify the centre for rotation independent of the centre of mass
via the point, line or plane constraints.
2014-05-16 15:35:11 +01:00
OpenFOAM-admin
fbb3ddf2c4 Updated for release 2.3.0 2014-02-17 10:21:46 +00:00
Henry
76ae0daa28 sixDoFRigidBodyMotion/sixDoFRigidBodyMotionSolver: Support restart by caching state in the uniform directory
sixDoFRigidBodyMotionSolver: use point-edge rather than face-cell wave to calculate point distance to surface.
2013-12-10 14:07:27 +00:00
Henry
a09d30dc90 interDyMFoam/ras/floatingObject: apply sixDoFRigidBodyMotion solver
Keep original case as floatingObjectOld
2013-12-08 22:03:56 +00:00
Henry
5ffda9b52b sixDoFRigidBodyMotion: Created separate library
Added sixDoFRigidBodyMotionSolver using septernion interpolation for mesh-morphing
2013-12-08 21:59:40 +00:00
mattijs
bfbfa8f4a5 ENH: motionSolvers: dynamicMeshDict new syntax 2012-08-31 16:51:26 +01:00
Henry
c2dd153a14 Copyright transfered to the OpenFOAM Foundation 2011-08-14 12:17:30 +01:00
OpenFOAM-admin
c720299876 ENH: Reverted back to version dev 2011-06-17 10:08:20 +01:00
andy
29c485361a STYLE: renamed version 2.0 -> 2.0.0 2011-06-08 16:31:07 +01:00
andy
d2d91bb84f STYLE: Updated tutorial headers to version 2.0 2011-06-07 11:18:46 +01:00
henry
ccfb6e32a6 Corrected headers. 2010-06-23 16:54:54 +01:00
Mark Olesen
895a077cb1 STYLE: fixup some dictionary headers 2010-05-18 11:38:07 +02:00
graham
f14d76738b Adding floatingObject tutorial case. 2009-10-19 15:58:40 +01:00