Skip to content
Snippets Groups Projects
createFields.H 2.49 KiB
Newer Older
  • Learn to ignore specific revisions
  • Henry's avatar
    Henry committed
        Info<< "Reading thermophysical properties\n" << endl;
    
        Info<< "Reading field T\n" << endl;
        volScalarField T
        (
            IOobject
            (
                "T",
                runTime.timeName(),
                mesh,
                IOobject::MUST_READ,
                IOobject::AUTO_WRITE
            ),
            mesh
        );
    
        Info<< "Reading field p_rgh\n" << endl;
        volScalarField p_rgh
        (
            IOobject
            (
                "p_rgh",
                runTime.timeName(),
                mesh,
                IOobject::MUST_READ,
                IOobject::AUTO_WRITE
            ),
            mesh
        );
    
        Info<< "Reading field U\n" << endl;
        volVectorField U
        (
            IOobject
            (
                "U",
                runTime.timeName(),
                mesh,
                IOobject::MUST_READ,
                IOobject::AUTO_WRITE
            ),
            mesh
        );
    
        #include "createPhi.H"
    
        #include "readTransportProperties.H"
    
        Info<< "Creating turbulence model\n" << endl;
        autoPtr<incompressible::RASModel> turbulence
        (
            incompressible::RASModel::New(U, phi, laminarTransport)
        );
    
        // Kinematic density for buoyancy force
        volScalarField rhok
        (
            IOobject
            (
                "rhok",
                runTime.timeName(),
                mesh
            ),
            1.0 - beta*(T - TRef)
        );
    
        // kinematic turbulent thermal thermal conductivity m2/s
        Info<< "Reading field alphat\n" << endl;
        volScalarField alphat
        (
            IOobject
            (
                "alphat",
                runTime.timeName(),
                mesh,
                IOobject::MUST_READ,
                IOobject::AUTO_WRITE
            ),
            mesh
        );
    
    
    
        #include "readGravitationalAcceleration.H"
        #include "readhRef.H"
    
    
    Henry's avatar
    Henry committed
        Info<< "Calculating field g.h\n" << endl;
    
        dimensionedScalar ghRef(g & (cmptMag(g.value())/mag(g.value()))*hRef);
        volScalarField gh("gh", (g & mesh.C()) - ghRef);
        surfaceScalarField ghf("ghf", (g & mesh.Cf()) - ghRef);
    
    
    Henry's avatar
    Henry committed
    
        volScalarField p
        (
            IOobject
            (
                "p",
                runTime.timeName(),
                mesh,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
            p_rgh + rhok*gh
        );
    
        label pRefCell = 0;
        scalar pRefValue = 0.0;
        setRefCell
        (
            p,
            p_rgh,
    
    Henry's avatar
    Henry committed
            pRefCell,
            pRefValue
        );
    
        if (p_rgh.needReference())
        {
            p += dimensionedScalar
            (
                "p",
                p.dimensions(),
                pRefValue - getRefCellValue(p, pRefCell)
            );
        }