CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Parcels minimum temperature in reactingParcelFoam (https://www.cfd-online.com/Forums/openfoam-solving/244121-parcels-minimum-temperature-reactingparcelfoam.html)

Alczem July 22, 2022 11:55

Parcels minimum temperature in reactingParcelFoam
 
Hello everybody !


I am currently working on a simulation involving liquid nitrogen being sprayed around in a methane (gaseous) pipe for cooling purposes.



reactingParcelFoam seems to be a good choice, and initial tests with modified tutorials work really well. But once I introduce liquid N2 and methane at low temperatures (around 90K), the solver can't run and tells me:



Pressure below triple point pressure: p = 9912.195865 < Pt = 12517.39172


I also noticed that my nitrogen particles were stuck at 200K although they are supposed to be at 81K. So I suspect that OpenFoam won't work at temperatures lower than 200K for stability reasons?


The solver runs ok when I disable the parcels injection.



Here are some files :


Cloud properties


Code:

solution
{
    active          yes;
    coupled        true;
    transient      yes;
    cellValueSourceCorrection on;
    maxCo          0.05;

    sourceTerms
    {
        schemes
        {
            rho            explicit 1;
            U              explicit 1;
            Yi              explicit 1;
            h              explicit 1;
            radiation      explicit 1;
        }
    }

    interpolationSchemes
    {
        rho            cell;
        U              cellPoint;
        thermo:mu      cell;
        T              cell;
        Cp              cell;
        kappa          cell;
        p              cell;
    }

    integrationSchemes
    {
        U              Euler;
        T              analytical;
    }
}


constantProperties
{
    //rho0            1000;
    rhoMin            10;
    rhoMax            2000;
    T0              81;
    Cp0            2055;
    Tmin            50;
    //Tmax            150;

    constantVolume  false;
    minParticleMass 1e-20;
   
    //volumeUpdateMethod updateRhoAndVol;
   
}


subModels
{
    particleForces
    {
        sphereDrag;
        gravity;
    }

    injectionModels
    {
       
        model1
        {
            type            coneInjection;
            //patch            inlet_liquide;
            SOI 0.001;
            massTotal 0.0036; //was 6.0e-6
            parcelBasisType mass;
            injectionMethod disc;
            flowType flowRateAndDischarge; //utile?
            //outerDiameter 1e-3; //was 1.9e-4;
            //innerDiameter 0;
            duration 1; //was 1.25e-3;
            //position ( 0 0.4995 0 );
            //direction ( 0 -1 0 );

            positionAxis //added
            ( //added
            (( -0.029 0 0 ) ( -1 0 0 )) //added
            ); //added

            parcelsPerInjector 10000; //added
            //parcelsPerSecond 10000; //modified was 10000000
            flowRateProfile constant 1;

            Cd constant 0.8; //was 0.9

            Umag constant 3; //added

            thetaInner constant 0.0;
            thetaOuter constant 20.0;
           
            sizeDistribution
            {
                type        fixedValue;
                fixedValueDistribution
                {
                    value        0.00002;
                }
            }

        }
    }

    dispersionModel none;

    patchInteractionModel localInteraction;

    heatTransferModel RanzMarshall;

    compositionModel singleMixtureFraction;

    phaseChangeModel liquidEvaporation;

    devolatilisationModel none;

    surfaceReactionModel none;

    stochasticCollisionModel none;

    surfaceFilmModel none;

    radiation      off;

    localInteractionCoeffs
    {
        patches
        (
            "(walls|cyc.*)"
            {
                type        rebound;
            }

            "(inlet_liquide|inlet_gaz|outlet)"
            {
                type escape;
            }
        );

        writeToFile    yes;
    }

    RanzMarshallCoeffs
    {
        BirdCorrection  true;
    }

    singleMixtureFractionCoeffs
    {
        phases
        (
            gas
            {
                //O2        0.21;
                //N2        0.79;
            }
            liquid
            {
                N2        1;
            }
            solid
            {
            }
        );
        YGasTot0        0;
        YLiquidTot0    1;
        YSolidTot0      0;
    }

    liquidEvaporationCoeffs
    {
        enthalpyTransfer enthalpyDifference;

        activeLiquids  ( N2 );
    }
}


cloudFunctions
{
}

thermophysicalProperties


Code:

thermoType
{
    type            heRhoThermo;
    mixture        reactingMixture;
    transport      polynomial;
    thermo          hPolynomial;
    energy          sensibleEnthalpy;
    equationOfState icoPolynomial;
    specie          specie;
}


chemistryReader foamChemistryReader;

foamChemistryFile "<constant>/foam.inp";

foamChemistryThermoFile "<constant>/thermo.incompressiblePoly";

liquids
{
    N2;
}

//dpdt    off;
//pRef    101325;

solids
{}

inertSpecie    CH4;


Thanks for any help you might provide :)

Alczem July 25, 2022 10:20

Hey again,


I figured out my mistake.


In the constantProperties of the reactingCloudProperties file, we can add the field TMin (I had tried several variants such as tMin, TLow, Tlow etc but with no avail :D).


So the subdictionary looks like this:


Code:

constantProperties
{
    //rho0            790;
    //rhoMin            10;
    //rhoMax            2000;
    T0              81;
    Cp0            2600;
    TMin            50;
    TMax            150;

    constantVolume  false;
    //minParticleMass 1e-20;
   
    volumeUpdateMethod constantRho;
   
}

I am running into other issues: the temperature of my particles getting colder than their initial temperature, even with the hotter gas they encounter.


Since I enabled the liquidEvaporation model, I think it has to do with the phase change, but it still seems suspicious to me that cold particles in a hotter gas get colder just due to the phase change.


Maybe someone more qualified in thermodynamics can point me in the right direction? Thanks!

Alczem August 2, 2022 05:35

I would like to bump this thread as I have not solved all my issues :)


To sum up, I am spraying liquid nitrogen droplets (at around 81 kelvins) in a pipe full of gaseous methane (at 95 kelvins).


I would expect the droplets to heat up and evaporate while the methane cools down. But although the methane cools down, the droplets drop in temperature around 62-64K (remember, I override the TMin limit).


My thermophysicalProperties look like this :


Code:

thermoType
{
    type            heRhoThermo;
    mixture        multiComponentMixture;
    transport      const;
    thermo          hConst;
    equationOfState rhoConst;
    specie          specie;
    energy          sensibleEnthalpy;
}


N2
{
  specie
    {
        molWeight  28;
    }
    equationOfState
    {
        rho        800;
    }
    thermodynamics
    {
        Cp          2000;
        Hf          0;
    }
    transport
    {
        mu          1.5e-4;
        Pr          3.5;
    }
}


CH4
{
  specie
    {
        molWeight  16;
    }
    equationOfState
    {
        rho        2.6;
    }
    thermodynamics
    {
        Cp          2260;
        Hf          0;
    }
    transport
    {
        mu          4.5e-6;
        Pr          0.75;
    }
}


inertSpecie        CH4;

liquids
{
    N2;
}

solids
{
}

I used a constant model to avoir weird behaviors related to decimals etc.



What am I missing here? Thanks for any help you might provide :)

Alczem August 3, 2022 11:37

Hi again! Last post since I think I figured out why my particles act this way, I will stop spamming :D




So I conducted more tests with different concentrations of gaseous methane + gaseous nitrogen at the inlet, in addition to the liquid nitrogen being sprayed inside the pipe.


  • When there is 80% N2 + 20% CH4 at the inlet, the droplets temperature increases slightly after they are injected (around +2K), and the N2 concentration overall increases slightly.
  • With 100% CH4, this is the starting case, where my droplets fall at 63.15K although they are injected at 81K.


Considering these two cases, I think I missed the fact that the droplets temperature change also depends on the relative concentration of the gaseous N2 already present. The two mechanisms involved in the heat transfer are evaporation and convection.



When the "relative humidity" in N2 is low, the heat loss by evaporation overtakes the heat gain happening through convection and the droplet temperature falls. In my case, the droplet temperature falls to 63.15K which is the triple point for N2, so my droplets go through sublimation basically. But when there is already a significant concentration of N2 in the gaseous phase, the evaporation is less prevalent, and the heat balance becomes positive thanks to convection, thus the temperature rises.



Anyways, it seems like basic thermodynamics but it got me really confused :D I am not certain about this, so if anyone can confirm or correct me, that would be great, cheers!


All times are GMT -4. The time now is 13:50.