Commit Graph

5046 Commits

Author SHA1 Message Date
7572c99c79 GIT: Resolve conflict 2016-06-10 16:05:48 +01:00
ac6f01ed7a Merge branch 'feature-MPPICInterFoam' into 'develop'
Feature mppic inter foam

New MPPICInterFoam solver. Add MPPIC cloud to a VOF approach. Particles volume are considered into transport Eq fluxes.
    Solves for 2 incompressible, isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach.
    The momentum and other fluid properties are of the "mixture" and a single
    momentum equation is solved.

Solver:
/applications/solvers/multiphase/MPPICInterFoam
Tutorial:
/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka

See merge request !41
2016-06-08 14:04:49 +01:00
f9e10f1a95 Merge branch 'feature-interCondensatingEvaporatingFoam' into 'develop'
ENH: Adding interCondensingEvaporatingFoam and tutorial

    Solver for 2 incompressible, isothermal immiscible fluids using a VOF
    (volume of fluid) phase-fraction based interface capturing approach.
    The momentum and other fluid properties are of the "mixture" and a single
    momentum equation is solved.

Solver:
   /applications/solvers/multiphase/interCondensingEvaporatingFoam
Tutorial:
  /tutorials/multiphase/interCondensingEvaporatingFoam/condensatingVessel


See merge request !43
2016-06-08 14:00:39 +01:00
1452cc0827 BUG: ensight writers not catching special reserved characters (fixes #122)
- most notably the '%' which is used as a separator in places
  caused problems.

EHN: only use valid ensight file/variable names for writers

- fixed:   foamToEnsightParts, ensightSurfaceWriter
- pending: foamToEnsight

BUG: no geometry written for foamToEnsightParts with moving mesh (fixes #142)

- an incorrect path was causing the issue
2016-06-07 17:16:09 +01:00
af648d7c89 Changing header in tutorial files and updating pEq.H 2016-06-03 09:31:56 -07:00
e1f2329222 STY: Updating function in pEq, ErrorInFunction and tutorial web site name 2016-06-03 09:16:34 -07:00
00d4761aa8 MPPICInterFoam and tutorial 2016-06-01 11:08:06 -07:00
d141b3c9b5 ENH: Adding interCondensingEvaporatingFoam and tutorial 2016-05-31 14:41:47 -07:00
5d29b49811 BUG: UOPstream indexes out of bounds after whitespace stripping (fixes #134)
- only affects transfer of C-style string with a single character
  remaining after whitespace stripping. Test added into Test-parallel.

- Note some idiosyncrasies in the behaviour:

      send                   |    receives
    -------------------------+-------------------------
        string("a b c")      |    string "a b c"
        string("a")          |    string "a"
        "a b c"              |    word   "abc"
        'd'                  |    char   'd'
        "d"                  |    char   'd'
        "d   "               |    char   'd'
2016-06-02 09:45:04 +02:00
2a07e34fb0 ENH: vtkSurfaceWriter: user-specifiable precision.
Partly solves #65. Ensight writer is fixed but all the other ones probably
need doing as well.
2016-06-01 17:43:14 +01:00
8a7880af2e BUG: ensightBinaryStream: avoid overflow. Fixes #132 2016-06-01 14:44:30 +01:00
42519734c7 ENH: snappyHexMeshDict: improved comment 2016-06-01 12:52:09 +01:00
c91712fbc3 ENH: foamHelp solver - added option to read solver type from the system/controlDict. Fixes #37 2016-04-29 16:05:47 +01:00
158a925235 ENH: Updated xxx::zero->Zero 2016-04-28 14:17:06 +01:00
90ee8d433f ENH: Integration updates 2016-04-26 14:34:27 +01:00
b9313ef2fe ENH: Consistency updates after Foundation merge and code tidying 2016-04-25 16:46:56 +01:00
fd9d801e2d GIT: Initial commit after latest foundation merge 2016-04-25 11:40:48 +01:00
69ae5a9a78 GIT: Resolve merge conflict 2016-04-22 13:31:37 +01:00
5f13806591 Updated headers 2016-04-21 21:07:28 +01:00
0aaf154100 utilities/mesh/manipulation: Rationalized "End" message 2016-04-21 21:06:45 +01:00
d57464a99d transformPoints: Added "End" message
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2059
2016-04-21 21:05:47 +01:00
9b3009e25f Merge branch 'master' of develop.openfoam.com:Development/OpenFOAM-plus 2016-04-21 13:03:10 +01:00
b846422eec ENH: Updates to applyBoundaryLayer utility
Old:
- Previous versions created k and epsilon fields by default, and
  then processed omega and nuTilda fields if present.
- Depending on the choice of turbulence model, not all of these fields
  would be used, and could lead to errors when running some utilities
  due to erroneous values.
- If the omega field did not exist, it would be derived from the epsilon
  field, and also inherit the epsilon boundary conditions (wall
  functions)

New:
- This version will only update fields that already exist on file, i.e.
  will not generate any new fields, and will preserve the boundary
  conditions
2016-04-21 12:46:23 +01:00
49ddb1d1a8 ENH: changeDictionary: do not allow adding to boundary file (as a special case).
Fixes #103
2016-04-20 11:01:48 +01:00
e47179a70d applications/test/rigidBodyDynamics/pendulumAndSpring: Another slightly more complex test 2016-04-17 15:47:03 +01:00
8c6fa81eba vector::zero -> Zero 2016-04-16 18:34:41 +01:00
75c7b7b239 quaternion/septernion: Added multi- quaternion/septernion averaging
Using method based on
http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20070017872.pdf
but simplified for the case where the quaternions are similar.
2016-04-16 15:59:05 +01:00
23a8779379 septernion: Changed definition of the forward transformation for consistency with spatialTransform
inline Foam::vector Foam::septernion::transformPoint(const vector& v) const
{
    return r().transform(v - t());
}

Now there is a 1:1 correspondence between septernion and
spatialTransform and a septernion constructor from spatialTransform
provided.

Additionally "septernion::transform" has been renamed
"septernion::transformPoint" to clarify that it transforms coordinate
points rather than displacements or other relative vectors.
2016-04-15 11:27:18 +01:00
e0e7c58b49 ENH: Adding zeroGradient BC's for k and epsilon in the DES/LES framework. 2016-04-12 15:02:31 -07:00
a0170df6c1 rigidBodyDynamics: Removed quaternion counter and index: 'nw', 'wIndex'
Replaced with 'unitQuaterion()' virtual function to indicate if the
joint uses a unit quaternion to represent rotation.
2016-04-12 22:17:52 +01:00
315a1baad3 rigidBodyDynamics: Simplify handling of quaternions by maintaining a unit quaternion in the joint state field 'q'
'w' is now obtained from 'v' using the relation w = sqrt(1 - |sqr(v)|)
and 'v' is stored in the joint state field 'q' and integrated in the
usual manner but corrected using quaternion transformations.
2016-04-12 21:44:34 +01:00
5e6bdeea57 applications/test/rigidBodyDynamics/sphericalJoint: Test for the quaternion-based spherical joint 2016-04-12 16:37:52 +01:00
985506be28 applications/test/rigidBodyDynamics/spring: Updated comment 2016-04-12 16:37:26 +01:00
948add3e10 applications/test/rigidBodyDynamics/spring: Correct typo 2016-04-12 16:16:30 +01:00
f51dfc37f2 rigidBodyDynamics: Simplified the interface to the solvers 2016-04-12 12:57:31 +01:00
2870be400e rigidBodyDynamics/rigidBodySolvers: Added run-time selectable solvers to integrate the rigid-body motion
Currently supported solvers: symplectic, Newmark, CrankNicolson

The symplectic solver should only be used if iteration over the forces
and body-motion is not required.  Newmark and CrankNicolson both require
iteration to provide 2nd-order behavior.

See applications/test/rigidBodyDynamics/spring for an example of the
application of the Newmark solver.

This development is sponsored by Carnegie Wave Energy Ltd.
2016-04-12 11:33:20 +01:00
33be0fa564 rigidBodyDynamics/rigidBodyModelState: New class to hold the motion state of the rigid-body model
This is a more convenient way of maintaining the state or multiple
states (for higher-order integration), storing, retrieving and passing
between processors.
2016-04-11 19:01:16 +01:00
16868a2b7b ENH: Provides support for laminar models for hoSimpleFoam 2016-04-11 10:54:59 -07:00
be567300c3 rigidBodyDynamics/restraints: Complete dictionary IO 2016-04-11 11:45:51 +01:00
1f51c8a89d rigidBodyDynamics: Added support for restraints and a linear spring with damper
applications/test/rigidBodyDynamics/spring: Test of the linear spring with damper restraint
Damped simple harmonic motion of a weight on a spring is simulated and
the results compared with analytical solution

    Test-spring
    gnuplot spring.gnuplot
    evince spring.eps

This development is sponsored by Carnegie Wave Energy Ltd.
2016-04-10 23:12:07 +01:00
01d503b1c0 applications/test/rigidBodyDynamics/pendulum: Cleanup 2016-04-10 23:07:23 +01:00
8ca752eb79 applications/test/rigidBodyDynamics/pendulum/pendulum: Corrected joint type 2016-04-08 18:03:51 +01:00
9ffaed8fd8 rigidBodyDynamics/bodies/jointBody: Special body to support elements of composite joints 2016-04-08 17:16:01 +01:00
8b6fe62f88 rigidBodyModel: Added operator<<(Ostream&, const rigidBodyModel&) 2016-04-08 17:02:02 +01:00
93f2f0d41a rigidBodyDynamics: Simplified the IO of bodies 2016-04-08 16:56:48 +01:00
77ed073bdb rigidBodyDynamics/bodies: Complete set of clone functions to support copy construction and assignment 2016-04-07 23:04:17 +01:00
0c7ce8938b rigidBodyDynamics: Added dictionary-based IO of the rigidBodyModel 2016-04-07 21:47:08 +01:00
77b03e2e0c Specialized dotInterpolate for the efficient calculation of flux fields
e.g. (fvc::interpolate(HbyA) & mesh.Sf()) -> fvc::flux(HbyA)

This removes the need to create an intermediate face-vector field when
computing fluxes which is more efficient, reduces the peak storage and
improved cache coherency in addition to providing a simpler and cleaner
API.
2016-04-06 20:20:53 +01:00
343136e6cc applications/test/rigidBodyDynamics/pendulum: Simplified using sphere constructor and body lookup by name 2016-04-04 17:08:20 +01:00
6d9c7112c3 Updated header 2016-04-04 13:53:51 +01:00