/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  7
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volVectorField;
    location    "0";
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

/*
No. Property 	SI unit 
1 	Mass 		kilogram (kg)
2 	Length 		metre (m)
3 	Time 		second (s)
4 	Temperature Kelvin (K) 
5 	Quantity 	kilogram-mole (kgmol) 
6 	Current 	ampere (A)
7 	Luminous 	intensity candela (cd)
*/

dimensions      [0 1 -1 0 0 0 0];

boundaryField
{
    inlet
    {
		type cylindricalInletVelocity;
		axis (0 1 0); // axis of rotation
		origin (-R_orbit 0 0); // axial center of raceway
		radialVelocity 0.0; // V_r
		axialVelocity 0.0; // V_z
		rpm -v_ref/R_Orb * 30/pi; // rotational speed of balancer raceway
		value uniform (0 0 0); // not necessary, but openFoam results in an error without it 
    }
    outlet
    {
        type            zeroGradient;
    }
    cavitywalls
    {
		type            rotatingWallVelocity;
		origin          (-R_orbit 0 0); // axial center of raceway
        axis            (0 1 0);
        omega           -v_ref/R_Orb;  // angular frequency of balancer raceway
    }
    ballsurface
    {
		type            rotatingWallVelocity;
		origin          (0 0 0);
        axis            (0 1 0);
        omega           -v_ref/R_Orb * (R_Orb*2/d_b +1);  // angular frequency of the sphere
    }
    ySymmetry
    {
        type            symmetryPlane;
    }
}


internalField   uniform (0 0 0);

// ************************************************************************* //
