volScalarField rho ( IOobject ( "rho", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE ), thermo.rho() ); rho.oldTime(); Info<< "\nReading field U\n" << endl; volVectorField U ( IOobject ( "U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ); # include "compressibleCreatePhi.H" Info<< "Creating turbulence model\n" << endl; autoPtr turbulence ( compressible::RASModel::New ( rho, U, phi, thermo ) ); // Create MRF zones MRFZones mrfZones(mesh); mrfZones.correctBoundaryVelocity(U); // Create relative velocity volVectorField Urel ( IOobject ( "Urel", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE ), U ); mrfZones.relativeVelocity(Urel); // Create rotational velocity (= omega x r) volVectorField Urot ( "Urot", U - Urel ); // Create rothalpy, in two steps to preserve boundary conditions volScalarField i ( IOobject ( "i", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ); i == h - 0.5*(magSqr(Urot) - magSqr(Urel));