- Apr 23, 2016
-
-
Henry Weller authored
This condition creates a zero-dimensional model of an enclosed volume of gas upstream of the inlet. The pressure that the boundary condition exerts on the inlet boundary is dependent on the thermodynamic state of the upstream volume. The upstream plenum density and temperature are time-stepped along with the rest of the simulation, and momentum is neglected. The plenum is supplied with a user specified mass flow and temperature. The result is a boundary condition which blends between a pressure inlet condition condition and a fixed mass flow. The smaller the plenum volume, the quicker the pressure responds to a deviation from the supply mass flow, and the closer the model approximates a fixed mass flow. As the plenum size increases, the model becomes more similar to a specified pressure. The expansion from the plenum to the inlet boundary is controlled by an area ratio and a discharge coefficient. The area ratio can be used to represent further acceleration between a sub-grid blockage such as fins. The discharge coefficient represents a fractional deviation from an ideal expansion process. This condition is useful for simulating unsteady internal flow problems for which both a mass flow boundary is unrealistic, and a pressure boundary is susceptible to flow reversal. It was developed for use in simulating confined combustion. tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance: helmholtz resonance tutorial case for plenum pressure boundary This development was contributed by Will Bainbridge
-
Henry Weller authored
Also added the new prghTotalHydrostaticPressure p_rgh BC which uses the hydrostatic pressure field as the reference state for the far-field which provides much more accurate entrainment is large open domains typical of many fire simulations. The hydrostatic field solution is controlled by the optional entries in the fvSolution.PIMPLE dictionary, e.g. hydrostaticInitialization yes; nHydrostaticCorrectors 5; and the solver must also be specified for the hydrostatic p_rgh field ph_rgh e.g. ph_rgh { $p_rgh; } Suitable boundary conditions for ph_rgh cannot always be derived from those for p_rgh and so the ph_rgh is read to provide them. To avoid accuracy issues with IO, restart and post-processing the p_rgh and ph_rgh the option to specify a suitable reference pressure is provided via the optional pRef file in the constant directory, e.g. dimensions [1 -1 -2 0 0 0 0]; value 101325; which is used in the relationship between p_rgh and p: p = p_rgh + rho*gh + pRef; Note that if pRef is specified all pressure BC specifications in the p_rgh and ph_rgh files are relative to the reference to avoid round-off errors. For examples of suitable BCs for p_rgh and ph_rgh for a range of fireFoam cases please study the tutorials in tutorials/combustion/fireFoam/les which have all been updated. Henry G. Weller CFD Direct Ltd.
-
Henry Weller authored
-
- Apr 22, 2016
-
-
Henry Weller authored
-
- Apr 21, 2016
-
-
Henry Weller authored
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2060
-
Henry Weller authored
Now the calculation of the 2nd-invariant is more efficient and accumulates less round-off error.
-
- Apr 19, 2016
-
-
Henry Weller authored
Now internal forces and restraints may be applied between bodies within the articulated structure.
-
Henry Weller authored
-
Henry Weller authored
The joint-space dynamics is solved on the master processor only and the resulting joint-state distributed to the slave processors on which the body-state is then updated. This guarantees consistency of the body position and orientation on all processors.
-
- Apr 18, 2016
-
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
rigidBodyDynamics/bodies/sphere: Added support for the centre of mass being offset from the centre of rotation
-
Henry Weller authored
Calculate the inertia from the lengths of the sides
-
- Apr 17, 2016
-
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
Particularly useful for lists of dictionaries.
-
Henry Weller authored
Patch provided by Bruno Santos Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2036
-
Henry Weller authored
See also http://www.openfoam.org/mantisbt/view.php?id=2036
-
- Apr 16, 2016
-
-
Henry Weller authored
Patch contributed by Bruno Santos Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2052
-
Henry Weller authored
-
Henry Weller authored
rigidBodyMeshMotion: displacementMotionSolver for the mesh-motion of multiple articulated rigid-bodies The motion of the bodies is integrated using the rigidBodyDynamics library with joints, restraints and external forces. The mesh-motion is interpolated using septernion averaging. This development is sponsored by Carnegie Wave Energy Ltd.
-
Henry Weller authored
-
Henry Weller authored
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.
-
Henry Weller authored
Patch contributed by Bruno Santos Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2055
-
- Apr 15, 2016
-
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
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.
-
- Apr 12, 2016
-
-
Henry Weller authored
-
Henry Weller authored
Replaced with 'unitQuaterion()' virtual function to indicate if the joint uses a unit quaternion to represent rotation.
-
Henry Weller authored
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.
-
Henry Weller authored
//- Return the unit quaternion (versor) from the given vector // (w = sqrt(1 - |sqr(v)|)) static inline quaternion unit(const vector& v);
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
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.
-
Henry Weller authored
“Error when reading ascii data. Possible mismatch of datasize with declaration.” Patch contributed by Karl Meredith, FMGlobal
-
- Apr 11, 2016
-
-
Henry Weller authored
This is a more convenient way of maintaining the state or multiple states (for higher-order integration), storing, retrieving and passing between processors.
-
Henry Weller authored
-
Henry Weller authored
Included for backward-compatibility with the 6-DoF solver but in the future will be re-implemented as a joint rather than body restraint and accumulated in tau (internal forces) rather than fx (external forces).
-
Henry Weller authored
-