CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   Colliding Coal Cloud in coalCollidingChemistryFoam (https://www.cfd-online.com/Forums/openfoam-programming-development/158458-colliding-coal-cloud-coalcollidingchemistryfoam.html)

cmigueis August 25, 2015 15:54

Colliding Coal Cloud in coalCollidingChemistryFoam
 
Hello everyone!

My main goal for now is to be able to use coalChemistryFoam with colliding clouds. I don't have much knowledge in C++, and I've been using OpenFOAM for a few months now.

I saw this thread http://www.cfd-online.com/Forums/ope...dingcloud.html, and I downloaded the collidingCoalCombustion directory. I changed the name of the cloud to coalCollidingCloud and compiled the collidingCoalCombustion library with wmake lib. I got this message :

Code:

'/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib/libcollidingCoalCombustion.a' is up to date.
So I think the library is sucessfully compiled (Am I right?)

Then I copied the coalChemistryFoam directory to my home directory, changed its name to coalCollidingChemistryFoam and changed all the entries in the files to make reference to the new coalCollidingCloud, this is how the file are now (I supressed the beggining of the files, because I was running out of characters):

coalCollidingChemistryFoam.C
Code:

#include "fvCFD.H"
#include "turbulenceModel.H"
#include "basicThermoCloud.H"
#include "coalCollidingCloud.H"
#include "psiCombustionModel.H"
#include "fvIOoptionList.H"
#include "radiationModel.H"
#include "SLGThermo.H"
#include "pimpleControl.H"

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

int main(int argc, char *argv[])
{
    #include "setRootCase.H"

    #include "createTime.H"
    #include "createMesh.H"
    #include "readGravitationalAcceleration.H"
    #include "createFields.H"
    #include "createFvOptions.H"
    #include "createClouds.H"
    #include "createRadiationModel.H"
    #include "initContinuityErrs.H"
    #include "readTimeControls.H"
    #include "compressibleCourantNo.H"
    #include "setInitialDeltaT.H"

    pimpleControl pimple(mesh);

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

    Info<< "\nStarting time loop\n" << endl;

    while (runTime.run())
    {
        #include "readTimeControls.H"
        #include "compressibleCourantNo.H"
        #include "setDeltaT.H"

        runTime++;

        Info<< "Time = " << runTime.timeName() << nl << endl;

        rhoEffLagrangian = coalCollidingParcels.rhoEff() + limestoneParcels.rhoEff();
        pDyn = 0.5*rho*magSqr(U);

        coalCollidingParcels.evolve();

        limestoneParcels.evolve();

        #include "rhoEqn.H"

        // --- Pressure-velocity PIMPLE corrector loop
        while (pimple.loop())
        {
            #include "UEqn.H"
            #include "YEqn.H"
            #include "EEqn.H"

            // --- Pressure corrector loop
            while (pimple.correct())
            {
                #include "pEqn.H"
            }

            if (pimple.turbCorr())
            {
                turbulence->correct();
            }
        }

        rho = thermo.rho();

        runTime.write();

        Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
            << "  ClockTime = " << runTime.elapsedClockTime() << " s"
            << nl << endl;
    }

    Info<< "End\n" << endl;

    return(0);
}


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

createClouds.H
Code:

Info<< "\nConstructing coal colliding cloud" << endl;
coalCollidingCloud coalCollidingParcels
(
    "coalCloud1",
    rho,
    U,
    g,
    slgThermo
);

Info<< "\nConstructing limestone cloud" << endl;
basicThermoCloud limestoneParcels
(
    "limestoneCloud1",
    rho,
    U,
    g,
    slgThermo
);

createFields.H
Code:

Info<< "Creating combustion model\n" << endl;

    autoPtr<combustionModels::psiCombustionModel> combustion
    (
        combustionModels::psiCombustionModel::New(mesh)
    );

    psiReactionThermo& thermo = combustion->thermo();
    thermo.validate(args.executable(), "h", "e");

    SLGThermo slgThermo(mesh, thermo);

    basicMultiComponentMixture& composition = thermo.composition();
    PtrList<volScalarField>& Y = composition.Y();

    const word inertSpecie(thermo.lookup("inertSpecie"));

    if (!composition.contains(inertSpecie))
    {
        FatalErrorIn(args.executable())
            << "Specified inert specie '" << inertSpecie << "' not found in "
            << "species list. Available species:" << composition.species()
            << exit(FatalError);
    }

    volScalarField& p = thermo.p();
    const volScalarField& T = thermo.T();
    const volScalarField& psi = thermo.psi();

    multivariateSurfaceInterpolationScheme<scalar>::fieldTable fields;

    forAll(Y, i)
    {
        fields.add(Y[i]);
    }
    fields.add(thermo.he());

    volScalarField rho
    (
        IOobject
        (
            "rho",
            runTime.timeName(),
            mesh,
            IOobject::NO_READ,
            IOobject::AUTO_WRITE
        ),
        thermo.rho()
    );

    // lagrangian effective density field - used externally (optional)
    volScalarField rhoEffLagrangian
    (
        IOobject
        (
            "rhoEffLagrangian",
            runTime.timeName(),
            mesh,
            IOobject::NO_READ,
            IOobject::AUTO_WRITE
        ),
        mesh,
        dimensionedScalar("zero", dimDensity, 0.0)
    );

    // dynamic pressure field - used externally (optional)
    volScalarField pDyn
    (
        IOobject
        (
            "pDyn",
            runTime.timeName(),
            mesh,
            IOobject::NO_READ,
            IOobject::AUTO_WRITE
        ),
        mesh,
        dimensionedScalar("zero", dimPressure, 0.0)
    );


    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<compressible::turbulenceModel> turbulence
    (
        compressible::turbulenceModel::New
        (
            rho,
            U,
            phi,
            thermo
        )
    );

    // Set the turbulence into the combustion model
    combustion->setTurbulence(turbulence());

    Info<< "Creating field dpdt\n" << endl;
    volScalarField dpdt
    (
        IOobject
        (
            "dpdt",
            runTime.timeName(),
            mesh
        ),
        mesh,
        dimensionedScalar("dpdt", p.dimensions()/dimTime, 0)
    );

    Info<< "Creating field kinetic energy K\n" << endl;
    volScalarField K("K", 0.5*magSqr(U));

    volScalarField dQ
    (
        IOobject
        (
            "dQ",
            runTime.timeName(),
            mesh,
            IOobject::NO_READ,
            IOobject::AUTO_WRITE
        ),
        mesh,
        dimensionedScalar("dQ", dimEnergy/dimTime, 0.0)
    );

EEqn.H
Code:

{
    volScalarField& he = thermo.he();

    fvScalarMatrix EEqn
    (
        fvm::ddt(rho, he) + mvConvection->fvmDiv(phi, he)
      + fvc::ddt(rho, K) + fvc::div(phi, K)
      + (
            he.name() == "e"
          ? fvc::div
            (
                fvc::absolute(phi/fvc::interpolate(rho), U),
                p,
                "div(phiv,p)"
            )
          : -dpdt
        )
      - fvm::laplacian(turbulence->alphaEff(), he)
    ==
        combustion->Sh()
      + coalCollidingParcels.Sh(he)
      + limestoneParcels.Sh(he)
      + radiation->Sh(thermo)
      + fvOptions(rho, he)
    );

    EEqn.relax();

    fvOptions.constrain(EEqn);

    EEqn.solve();

    fvOptions.correct(he);

    thermo.correct();
    radiation->correct();

    Info<< "T gas min/max  = " << min(T).value() << ", "
        << max(T).value() << endl;
}

pEqn.H
Code:

rho = thermo.rho();

volScalarField rAU(1.0/UEqn.A());
surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU));

volVectorField HbyA("HbyA", U);
HbyA = rAU*UEqn.H();

if (pimple.transonic())
{
    surfaceScalarField phid
    (
        "phid",
        fvc::interpolate(psi)
      *(
            (fvc::interpolate(rho*HbyA) & mesh.Sf())
          + rhorAUf*fvc::ddtCorr(rho, U, phi)
        )/fvc::interpolate(rho)
    );

    fvOptions.makeRelative(fvc::interpolate(psi), phid);

    while (pimple.correctNonOrthogonal())
    {
        fvScalarMatrix pEqn
        (
            fvm::ddt(psi, p)
          + fvm::div(phid, p)
          - fvm::laplacian(rhorAUf, p)
        ==
            coalCollidingParcels.Srho()
          + fvOptions(psi, p, rho.name())
        );

        fvOptions.constrain(pEqn);

        pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));

        if (pimple.finalNonOrthogonalIter())
        {
            phi == pEqn.flux();
        }
    }
}
else
{
    surfaceScalarField phiHbyA
    (
        "phiHbyA",
        (
            (fvc::interpolate(rho*HbyA) & mesh.Sf())
          + rhorAUf*fvc::ddtCorr(rho, U, phi)
        )
    );

    fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);

    while (pimple.correctNonOrthogonal())
    {
        fvScalarMatrix pEqn
        (
            fvm::ddt(psi, p)
          + fvc::div(phiHbyA)
          - fvm::laplacian(rhorAUf, p)
        ==
            coalCollidingParcels.Srho()
          + fvOptions(psi, p, rho.name())
        );

        fvOptions.constrain(pEqn);

        pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));

        if (pimple.finalNonOrthogonalIter())
        {
            phi = phiHbyA + pEqn.flux();
        }
    }
}

#include "rhoEqn.H"
#include "compressibleContinuityErrs.H"

U = HbyA - rAU*fvc::grad(p);
U.correctBoundaryConditions();
fvOptions.correct(U);

K = 0.5*magSqr(U);

if (thermo.dpdt())
{
    dpdt = fvc::ddt(p);
}

rhoEqn.H
Code:

{
    fvScalarMatrix rhoEqn
    (
        fvm::ddt(rho)
      + fvc::div(phi)
      ==
        coalCollidingParcels.Srho(rho)
      + fvOptions(rho)
    );

    fvOptions.constrain(rhoEqn);

    rhoEqn.solve();

    fvOptions.correct(rho);
}

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

UEqn.H
Code:

    fvVectorMatrix UEqn
    (
        fvm::ddt(rho, U)
      + fvm::div(phi, U)
      + turbulence->divDevRhoReff(U)
    ==
        rho.dimensionedInternalField()*g
      + coalCollidingParcels.SU(U)
      + limestoneParcels.SU(U)
      + fvOptions(rho, U)
    );

    UEqn.relax();

    fvOptions.constrain(UEqn);

    if (pimple.momentumPredictor())
    {
        solve(UEqn == -fvc::grad(p));

        fvOptions.correct(U);
        K = 0.5*magSqr(U);
    }

YEqn.H
Code:

tmp<fv::convectionScheme<scalar> > mvConvection
(
    fv::convectionScheme<scalar>::New
    (
        mesh,
        fields,
        phi,
        mesh.divScheme("div(phi,Yi_h)")
    )
);


{
    combustion->correct();
    dQ = combustion->dQ();
    label inertIndex = -1;
    volScalarField Yt(0.0*Y[0]);

    forAll(Y, i)
    {
        if (Y[i].name() != inertSpecie)
        {
            volScalarField& Yi = Y[i];

            fvScalarMatrix YiEqn
            (
                fvm::ddt(rho, Yi)
              + mvConvection->fvmDiv(phi, Yi)
              - fvm::laplacian(turbulence->muEff(), Yi)
              ==
                coalCollidingParcels.SYi(i, Yi)
              + combustion->R(Yi)
              + fvOptions(rho, Yi)
            );

            YiEqn.relax();

            fvOptions.constrain(YiEqn);

            YiEqn.solve(mesh.solver("Yi"));

            fvOptions.correct(Yi);

            Yi.max(0.0);
            Yt += Yi;
        }
        else
        {
            inertIndex = i;
        }
    }

    Y[inertIndex] = scalar(1) - Yt;
    Y[inertIndex].max(0.0);
}

When i try to run wmake from the coalCollidingChemistryfoam directory, I got this (I'm not going to put the entire output, because of the characters space problem):

Code:

cesar@cesarnotebook:~/OpenFOAM/cesar-2.4.0/personalizado/coalCollidingChemistryFoam$ wmake
Making dependency list for source file coalCollidingChemistryFoam.C
SOURCE=coalCollidingChemistryFoam.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/lagrangian/basic/lnInclude -I/opt/openfoam240/src/lagrangian/intermediate/lnInclude -I/opt/openfoam240/src/lagrangian/coalCombustion/lnInclude -I/opt/openfoam240/src/lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/chemistryModel/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/ODE/lnInclude -I/opt/openfoam240/src/combustionModels/lnInclude -I/opt/openfoam240/applications/solvers/combustion/reactingFoam -I/opt/openfoam240/src/fvOptions/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/coalCollidingChemistryFoam.o
In file included from coalCollidingChemistryFoam.C:62:0:
/opt/openfoam240/src/finiteVolume/lnInclude/readTimeControls.H: In function ‘int main(int, char**)’:
/opt/openfoam240/src/finiteVolume/lnInclude/readTimeControls.H:38:8: warning: unused variable ‘maxDeltaT’ [-Wunused-variable]
 scalar maxDeltaT =
        ^
g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/lagrangian/basic/lnInclude -I/opt/openfoam240/src/lagrangian/intermediate/lnInclude -I/opt/openfoam240/src/lagrangian/coalCombustion/lnInclude -I/opt/openfoam240/src/lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/chemistryModel/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/ODE/lnInclude -I/opt/openfoam240/src/combustionModels/lnInclude -I/opt/openfoam240/applications/solvers/combustion/reactingFoam -I/opt/openfoam240/src/fvOptions/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPOpt/coalCollidingChemistryFoam.o -L/opt/openfoam240/platforms/linux64GccDPOpt/lib \
    -L/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib -lfiniteVolume -lmeshTools -lcompressibleTurbulenceModel -lcompressibleRASModels -lcompressibleLESModels -llagrangian -llagrangianIntermediate -llagrangianTurbulence -lcoalCombustion -lspecie -lfluidThermophysicalModels -lliquidProperties -lliquidMixtureProperties -lsolidProperties -lsolidMixtureProperties -lthermophysicalFunctions -lreactionThermophysicalModels -lSLGThermo -lchemistryModel -lradiationModels -lregionModels -lsurfaceFilmModels -lODE -lcombustionModels -lfvOptions -lsampling -lOpenFOAM -ldl  -lm -o /home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam
Make/linux64GccDPOpt/coalCollidingChemistryFoam.o: In function `Foam::IOPosition<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > >::type() const':
coalCollidingChemistryFoam.C:(.text._ZNK4Foam10IOPositionINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEE4typeEv[_ZNK4Foam10IOPositionINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEE4typeEv]+0x3): undefined reference to `Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > >::typeName'
Make/linux64GccDPOpt/coalCollidingChemistryFoam.o: In function `Foam::CloudFunctionObject<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::type() const':
.
.
.
.
coalCollidingChemistryFoam.C:(.text._ZN4Foam5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEE9initCloudEb[_ZN4Foam5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEE9initCloudEb]+0x4d): undefined reference to `Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > >::debug'
collect2: error: ld returned 1 exit status
/opt/openfoam240/wmake/Makefile:149: recipe for target '/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam' failed


I'm stucked in this error, and I don't know how to proceed. Can anybody help me? If is there anything else needed to solve the problem please tell me that I update the thread with the needed information.

Thanks in advance!

Regards from Brazil!

snak August 25, 2015 21:55

Quote:

Originally Posted by cmigueis (Post 561039)

Code:

'/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib/libcollidingCoalCombustion.a' is up to date.
So I think the library is sucessfully compiled (Am I right?)

Usually, a library is compiled with' wmake libso' and this creates libcollidingCoalCombustion.so. The name of your library after compilation is libcollidingCoalCombustin.a. The extension differs. Is this your intention?


The error message of your solver does not include the link to collidingCoalCombustion library. Do you modified files in Make directory?

cmigueis August 26, 2015 10:20

Hi Snak, thanks for your reply.

I compiled the library with wmake lib command. After reading your reply, I try to recompile the library. First using wclean and then the wmake libso command. When I use the wmake libso I got an error:

Code:

cesar@cesarnotebook:~/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion$ wclean
cesar@cesarnotebook:~/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion$ wmake libso
wmakeLnInclude: linking include files to ./lnInclude
Making dependency list for source file coalCollidingParcel/defineCoalCollidingParcel.C
Making dependency list for source file coalCollidingParcel/makeCoalCollidingParcelSubmodels.C
Making dependency list for source file coalCollidingParcel/makeCoalCollidingParcelSubmodelsAdded.C
SOURCE=coalCollidingParcel/defineCoalCollidingParcel.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I../lagrangian/basic/lnInclude -I../lagrangian/intermediate/lnInclude -I../lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/turbulenceModels -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/turbulenceModels/compressible/RAS/lnInclude -I/opt/openfoam240/src/turbulenceModels/LES/LESdeltas/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/LES/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/defineCoalCollidingParcel.o
SOURCE=coalCollidingParcel/makeCoalCollidingParcelSubmodels.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I../lagrangian/basic/lnInclude -I../lagrangian/intermediate/lnInclude -I../lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/turbulenceModels -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/turbulenceModels/compressible/RAS/lnInclude -I/opt/openfoam240/src/turbulenceModels/LES/LESdeltas/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/LES/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/makeCoalCollidingParcelSubmodels.o
SOURCE=coalCollidingParcel/makeCoalCollidingParcelSubmodelsAdded.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I../lagrangian/basic/lnInclude -I../lagrangian/intermediate/lnInclude -I../lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/turbulenceModels -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/turbulenceModels/compressible/RAS/lnInclude -I/opt/openfoam240/src/turbulenceModels/LES/LESdeltas/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/LES/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/makeCoalCollidingParcelSubmodelsAdded.o
/usr/bin/ld: cannot find -lbasicThermophysicalModels
collect2: error: ld returned 1 exit status
/opt/openfoam240/wmake/Makefile:172: recipe for target '/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib/libcollidingCoalCombustion.so' failed
make: *** [/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib/libcollidingCoalCombustion.so] Error 1

It seems to me that it can't find the basicThermophysicalModels library, right?

this is the library Make/options file:

Code:

EXE_INC = \
    -I../lagrangian/basic/lnInclude \
    -I../lagrangian/intermediate/lnInclude \
    -I../lagrangian/distributionModels/lnInclude \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I$(LIB_SRC)/meshTools/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
    -I$(LIB_SRC)/turbulenceModels \
    -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \
    -I$(LIB_SRC)/turbulenceModels/compressible/RAS/lnInclude \
    -I$(LIB_SRC)/turbulenceModels/LES/LESdeltas/lnInclude \
    -I$(LIB_SRC)/turbulenceModels/compressible/LES/lnInclude \
    -I$(LIB_SRC)/regionModels/regionModel/lnInclude \
    -I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
    -I$(LIB_SRC)/sampling/lnInclude

LIB_LIBS = \
    -L$(FOAM_USER_LIBBIN) \
    -lfiniteVolume \
    -lmeshTools \
    -llagrangian \
    -llagrangianIntermediate \
    -ldistributionModels \
    -lspecie \
    -lbasicThermophysicalModels \
    -lliquidProperties \
    -lliquidMixtureProperties \
    -lsolidProperties \
    -lsolidMixtureProperties \
    -lreactionThermophysicalModels \
    -lSLGThermo \
    -lcompressibleRASModels \
    -lcompressibleLESModels \
    -lregionModels \
    -lsurfaceFilmModels

and this is the Make/files file:

Code:

/* Coal parcel and sub-models */
coalCollidingParcel/defineCoalCollidingParcel.C
coalCollidingParcel/makeCoalCollidingParcelSubmodels.C
coalCollidingParcel/makeCoalCollidingParcelSubmodelsAdded.C

LIB = $(FOAM_USER_LIBBIN)/libcollidingCoalCombustion

UPDATE: If I remove the "-lbasicThermophysicalModels " line, the library is compiled without errors:

Code:

cesar@cesarnotebook:~/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion$ wmake libso
wmakeLnInclude: linking include files to ./lnInclude
Making dependency list for source file coalCollidingParcel/defineCoalCollidingParcel.C
Making dependency list for source file coalCollidingParcel/makeCoalCollidingParcelSubmodels.C
Making dependency list for source file coalCollidingParcel/makeCoalCollidingParcelSubmodelsAdded.C
SOURCE=coalCollidingParcel/defineCoalCollidingParcel.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I../lagrangian/basic/lnInclude -I../lagrangian/intermediate/lnInclude -I../lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/turbulenceModels -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/turbulenceModels/compressible/RAS/lnInclude -I/opt/openfoam240/src/turbulenceModels/LES/LESdeltas/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/LES/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/defineCoalCollidingParcel.o
SOURCE=coalCollidingParcel/makeCoalCollidingParcelSubmodels.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I../lagrangian/basic/lnInclude -I../lagrangian/intermediate/lnInclude -I../lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/turbulenceModels -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/turbulenceModels/compressible/RAS/lnInclude -I/opt/openfoam240/src/turbulenceModels/LES/LESdeltas/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/LES/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/makeCoalCollidingParcelSubmodels.o
SOURCE=coalCollidingParcel/makeCoalCollidingParcelSubmodelsAdded.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I../lagrangian/basic/lnInclude -I../lagrangian/intermediate/lnInclude -I../lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/turbulenceModels -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/turbulenceModels/compressible/RAS/lnInclude -I/opt/openfoam240/src/turbulenceModels/LES/LESdeltas/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/LES/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/makeCoalCollidingParcelSubmodelsAdded.o
'/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib/libcollidingCoalCombustion.so' is up to date.

Yes, I modified the files in the Make directory of the solver.

Make/files:

Code:

coalCollidingChemistryFoam.C

EXE = $(FOAM_USER_APPBIN)/coalCollidingChemistryFoam

and Make/options:

Code:

EXE_INC = \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I${LIB_SRC}/meshTools/lnInclude \
    -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \
    -I$(LIB_SRC)/lagrangian/basic/lnInclude \
    -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
    -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
    -I$(LIB_SRC)/regionModels/regionModel/lnInclude \
    -I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
    -I$(LIB_SRC)/ODE/lnInclude \
    -I$(LIB_SRC)/combustionModels/lnInclude \
    -I$(FOAM_SOLVERS)/combustion/reactingFoam \
    -I$(LIB_SRC)/fvOptions/lnInclude \
    -I$(LIB_SRC)/sampling/lnInclude \
    -I</home/cesar/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion/lnInclude>



EXE_LIBS = \
    -l<l/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib> \
    -lfiniteVolume \
    -lmeshTools \
    -lcompressibleTurbulenceModel \
    -lcompressibleRASModels \
    -lcompressibleLESModels \
    -llagrangian \
    -llagrangianIntermediate \
    -llagrangianTurbulence \
    -lcoalCombustion\
    -lspecie \
    -lfluidThermophysicalModels \
    -lliquidProperties \
    -lliquidMixtureProperties \
    -lsolidProperties \
    -lsolidMixtureProperties \
    -lthermophysicalFunctions \
    -lreactionThermophysicalModels \
    -lSLGThermo \
    -lchemistryModel \
    -lradiationModels \
    -lregionModels \
    -lsurfaceFilmModels \
    -lODE \
    -lcombustionModels \
    -lfvOptions \
    -lsampling

Thanks again for the help!

UPDATE II: If I try to compile the solver, after successfully compiled the library with the wmake libso command, I got this:

Code:

cesar@cesarnotebook:~/OpenFOAM/cesar-2.4.0/personalizado/coalCollidingChemistryFoam$ wmake
Making dependency list for source file coalCollidingChemistryFoam.C
.
.
.       
I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/chemistryModel/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/ODE/lnInclude -I/opt/openfoam240/src/combustionModels/lnInclude -I/opt/openfoam240/applications/solvers/combustion/reactingFoam -I/opt/openfoam240/src/fvOptions/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -I</home/cesar/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion/lnInclude> -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPOpt/coalCollidingChemistryFoam.o -L/opt/openfoam240/platforms/linux64GccDPOpt/lib \
    -l<l/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib> -lfiniteVolume -lmeshTools -lcompressibleTurbulenceModel -lcompressibleRASModels -lcompressibleLESModels -llagrangian -llagrangianIntermediate -llagrangianTurbulence -lcoalCombustion -lspecie -lfluidThermophysicalModels -lliquidProperties -lliquidMixtureProperties -lsolidProperties -lsolidMixtureProperties -lthermophysicalFunctions -lreactionThermophysicalModels -lSLGThermo -lchemistryModel -lradiationModels -lregionModels -lsurfaceFilmModels -lODE -lcombustionModels -lfvOptions -lsampling -lOpenFOAM -ldl  -lm -o /home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam
/bin/sh: 1: cannot open l/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib: No such file
/opt/openfoam240/wmake/Makefile:149: recipe for target '/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam' failed
make: *** [/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam] Error 2


cmigueis August 31, 2015 09:22

I fixed the previous mistake in the make/options file, I was using the wrong sintax to describe the path and the library file. It now looks like this:

Code:

EXE_INC = \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I${LIB_SRC}/meshTools/lnInclude \
    -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \
    -I$(LIB_SRC)/lagrangian/basic/lnInclude \
    -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
    -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
    -I$(LIB_SRC)/regionModels/regionModel/lnInclude \
    -I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
    -I$(LIB_SRC)/ODE/lnInclude \
    -I$(LIB_SRC)/combustionModels/lnInclude \
    -I$(FOAM_SOLVERS)/combustion/reactingFoam \
    -I$(LIB_SRC)/fvOptions/lnInclude \
    -I$(LIB_SRC)/sampling/lnInclude \
    -I$(WM_PROJECT_USER_DIR)/personalizado/collidingCoalCombustion/lnInclude



EXE_LIBS = \
    -L$(WM_PROJECT_USER_DIR)/platforms/linux64GccDPOpt/lib/ \
    -lcollidingCoalCombustion \
    -lfiniteVolume \
    -lmeshTools \
    -lcompressibleTurbulenceModel \
    -lcompressibleRASModels \
    -lcompressibleLESModels \
    -llagrangian \
    -llagrangianIntermediate \
    -llagrangianTurbulence \
    -lcoalCombustion\
    -lspecie \
    -lfluidThermophysicalModels \
    -lliquidProperties \
    -lliquidMixtureProperties \
    -lsolidProperties \
    -lsolidMixtureProperties \
    -lthermophysicalFunctions \
    -lreactionThermophysicalModels \
    -lSLGThermo \
    -lchemistryModel \
    -lradiationModels \
    -lregionModels \
    -lsurfaceFilmModels \
    -lODE \
    -lcombustionModels \
    -lfvOptions \
    -lsampling

Now I'm getting this output when i run WMAKE command:

Code:

cesar@cesarnotebook:~/OpenFOAM/cesar-2.4.0/personalizado/coalCollidingChemistryFoam$ wmake
Making dependency list for source file coalCollidingChemistryFoam.C
SOURCE=coalCollidingChemistryFoam.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/lagrangian/basic/lnInclude -I/opt/openfoam240/src/lagrangian/intermediate/lnInclude -I/opt/openfoam240/src/lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/chemistryModel/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/ODE/lnInclude -I/opt/openfoam240/src/combustionModels/lnInclude -I/opt/openfoam240/applications/solvers/combustion/reactingFoam -I/opt/openfoam240/src/fvOptions/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -I/home/cesar/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/coalCollidingChemistryFoam.o
In file included from coalCollidingChemistryFoam.C:62:0:
/opt/openfoam240/src/finiteVolume/lnInclude/readTimeControls.H: In function ‘int main(int, char**)’:
/opt/openfoam240/src/finiteVolume/lnInclude/readTimeControls.H:38:8: warning: unused variable ‘maxDeltaT’ [-Wunused-variable]
 scalar maxDeltaT =
        ^
g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I/opt/openfoam240/src/finiteVolume/lnInclude -I/opt/openfoam240/src/meshTools/lnInclude -I/opt/openfoam240/src/turbulenceModels/compressible/turbulenceModel -I/opt/openfoam240/src/lagrangian/basic/lnInclude -I/opt/openfoam240/src/lagrangian/intermediate/lnInclude -I/opt/openfoam240/src/lagrangian/distributionModels/lnInclude -I/opt/openfoam240/src/thermophysicalModels/specie/lnInclude -I/opt/openfoam240/src/thermophysicalModels/basic/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/opt/openfoam240/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/opt/openfoam240/src/thermophysicalModels/reactionThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/SLGThermo/lnInclude -I/opt/openfoam240/src/thermophysicalModels/chemistryModel/lnInclude -I/opt/openfoam240/src/thermophysicalModels/radiationModels/lnInclude -I/opt/openfoam240/src/regionModels/regionModel/lnInclude -I/opt/openfoam240/src/regionModels/surfaceFilmModels/lnInclude -I/opt/openfoam240/src/ODE/lnInclude -I/opt/openfoam240/src/combustionModels/lnInclude -I/opt/openfoam240/applications/solvers/combustion/reactingFoam -I/opt/openfoam240/src/fvOptions/lnInclude -I/opt/openfoam240/src/sampling/lnInclude -I/home/cesar/OpenFOAM/cesar-2.4.0/personalizado/collidingCoalCombustion/lnInclude -IlnInclude -I. -I/opt/openfoam240/src/OpenFOAM/lnInclude -I/opt/openfoam240/src/OSspecific/POSIX/lnInclude  -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPOpt/coalCollidingChemistryFoam.o -L/opt/openfoam240/platforms/linux64GccDPOpt/lib \
    -L/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/lib/ -lcollidingCoalCombustion -lfiniteVolume -lmeshTools -lcompressibleTurbulenceModel -lcompressibleRASModels -lcompressibleLESModels -llagrangian -llagrangianIntermediate -llagrangianTurbulence -lcoalCombustion -lspecie -lfluidThermophysicalModels -lliquidProperties -lliquidMixtureProperties -lsolidProperties -lsolidMixtureProperties -lthermophysicalFunctions -lreactionThermophysicalModels -lSLGThermo -lchemistryModel -lradiationModels -lregionModels -lsurfaceFilmModels -lODE -lcombustionModels -lfvOptions -lsampling -lOpenFOAM -ldl  -lm -o /home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam
Make/linux64GccDPOpt/coalCollidingChemistryFoam.o: In function `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::type() const':
coalCollidingChemistryFoam.C:(.text._ZNK4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE4typeEv[_ZNK4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE4typeEv]+0x3): undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::typeName'
Make/linux64GccDPOpt/coalCollidingChemistryFoam.o: In function `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::New(Foam::dictionary const&, Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > >&)':
coalCollidingChemistryFoam.C:(.text._ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_[_ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_]+0xa9): undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::dictionaryConstructorTablePtr_'
coalCollidingChemistryFoam.C:(.text._ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_[_ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_]+0x23b): undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::dictionaryConstructorTablePtr_'
collect2: error: ld returned 1 exit status
/opt/openfoam240/wmake/Makefile:149: recipe for target '/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam' failed
make: *** [/home/cesar/OpenFOAM/cesar-2.4.0/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam] Error 1

What does this 'recipe for target (...) failed' means?
Can anyone please help me in this?

Thanks in advance!

cmigueis September 23, 2015 10:17

any help would be appreciated
 
Hello everybody!

Just to summarize my problem:

1- I've sucessfully compiled the collidingCoalCombustion library, that turns the default coalCloud into kinematicCloud, so the interparticle collisions are computed.

2- I've created a new solver called coalCollidingChemistryFoam, which is suposed to use the collidingCoalCombustion library, and the new coalCloud.

2.1- the make/files is like this:
Code:

coalCollidingChemistryFoam.C

    EXE = $(FOAM_USER_APPBIN)/coalCollidingChemistryFoam

2.2- the make/options is like this:
Code:

EXE_INC = \
    -I$(LIB_SRC)/finiteVolume/lnInclude \
    -I${LIB_SRC}/meshTools/lnInclude \
    -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \
    -I$(LIB_SRC)/lagrangian/basic/lnInclude \
    -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
    -I$(WM_PROJECT_USER_DIR)/personalizado/collidingCoalCombustion/lnInclude \
    -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
    -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
    -I$(LIB_SRC)/regionModels/regionModel/lnInclude \
    -I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
    -I$(LIB_SRC)/ODE/lnInclude \
    -I$(LIB_SRC)/combustionModels/lnInclude \
    -I$(FOAM_SOLVERS)/combustion/reactingFoam \
    -I$(LIB_SRC)/fvOptions/lnInclude \
    -I$(LIB_SRC)/sampling/lnInclude



EXE_LIBS = \
    -L$(FOAM_USER_LIBBIN) \
    -lfiniteVolume \
    -lmeshTools \
    -lcompressibleTurbulenceModel \
    -lcompressibleRASModels \
    -lcompressibleLESModels \
    -llagrangian \
    -llagrangianIntermediate \
    -llagrangianTurbulence \
    -lcollidingCoalCombustion\
    -lspecie \
    -lfluidThermophysicalModels \
    -lliquidProperties \
    -lliquidMixtureProperties \
    -lsolidProperties \
    -lsolidMixtureProperties \
    -lthermophysicalFunctions \
    -lreactionThermophysicalModels \
    -lSLGThermo \
    -lchemistryModel \
    -lradiationModels \
    -lregionModels \
    -lsurfaceFilmModels \
    -lODE \
    -lcombustionModels \
    -lfvOptions \
    -lsampling

3- When I try to compile the new solver I still got an error:
Code:

cesar@cesarnotebook:~/OpenFOAM/cesar-2.3.1/personalizado/coalCollidingChemistryFoam$ wmake
Making dependency list for source file coalCollidingChemistryFoam.C
SOURCE=coalCollidingChemistryFoam.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/meshTools/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/turbulenceModels/compressible/turbulenceModel -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/lagrangian/basic/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/lagrangian/intermediate/lnInclude -I/home/cesar/OpenFOAM/cesar-2.3.1/personalizado/collidingCoalCombustion/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/lagrangian/distributionModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/specie/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/basic/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/solidProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/reactionThermo/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/SLGThermo/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/chemistryModel/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/radiationModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/regionModels/regionModel/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/regionModels/surfaceFilmModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/ODE/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/combustionModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/applications/solvers/combustion/reactingFoam -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/fvOptions/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/sampling/lnInclude -IlnInclude -I. -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/OpenFOAM/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/coalCollidingChemistryFoam.o
In file included from coalCollidingChemistryFoam.C:62:0:
/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude/readTimeControls.H: In function ‘int main(int, char**)’:
/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude/readTimeControls.H:38:8: warning: unused variable ‘maxDeltaT’ [-Wunused-variable]
 scalar maxDeltaT =
        ^
g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-100 -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/meshTools/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/turbulenceModels/compressible/turbulenceModel -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/lagrangian/basic/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/lagrangian/intermediate/lnInclude -I/home/cesar/OpenFOAM/cesar-2.3.1/personalizado/collidingCoalCombustion/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/lagrangian/distributionModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/specie/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/basic/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/solidProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/reactionThermo/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/SLGThermo/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/chemistryModel/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/thermophysicalModels/radiationModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/regionModels/regionModel/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/regionModels/surfaceFilmModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/ODE/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/combustionModels/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/applications/solvers/combustion/reactingFoam -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/fvOptions/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/sampling/lnInclude -IlnInclude -I. -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/OpenFOAM/lnInclude -I/home/cesar/OpenFOAM/OpenFOAM-2.3.1/src/OSspecific/POSIX/lnInclude  -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPOpt/coalCollidingChemistryFoam.o -L/home/cesar/OpenFOAM/OpenFOAM-2.3.1/platforms/linux64GccDPOpt/lib \
    -L/home/cesar/OpenFOAM/cesar-2.3.1/platforms/linux64GccDPOpt/lib -lfiniteVolume -lmeshTools -lcompressibleTurbulenceModel -lcompressibleRASModels -lcompressibleLESModels -llagrangian -llagrangianIntermediate -llagrangianTurbulence -lcollidingCoalCombustion -lspecie -lfluidThermophysicalModels -lliquidProperties -lliquidMixtureProperties -lsolidProperties -lsolidMixtureProperties -lthermophysicalFunctions -lreactionThermophysicalModels -lSLGThermo -lchemistryModel -lradiationModels -lregionModels -lsurfaceFilmModels -lODE -lcombustionModels -lfvOptions -lsampling -lOpenFOAM -ldl  -lm -o /home/cesar/OpenFOAM/cesar-2.3.1/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam
Make/linux64GccDPOpt/coalCollidingChemistryFoam.o: In function `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::type() const':
coalCollidingChemistryFoam.C:(.text._ZNK4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE4typeEv[_ZNK4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE4typeEv]+0x3): undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::typeName'
Make/linux64GccDPOpt/coalCollidingChemistryFoam.o: In function `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::New(Foam::dictionary const&, Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > >&)':
coalCollidingChemistryFoam.C:(.text._ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_[_ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_]+0xa9): undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::dictionaryConstructorTablePtr_'
coalCollidingChemistryFoam.C:(.text._ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_[_ZN4Foam24StochasticCollisionModelINS_14KinematicCloudINS_5CloudINS_24ReactingMultiphaseParcelINS_14ReactingParcelINS_12ThermoParcelINS_15CollidingParcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEEEEEE3NewERKNS_10dictionaryERSF_]+0x23b): undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::dictionaryConstructorTablePtr_'
collect2: error: ld returned 1 exit status
/home/cesar/OpenFOAM/OpenFOAM-2.3.1/wmake/Makefile:149: recipe for target '/home/cesar/OpenFOAM/cesar-2.3.1/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam' failed
make: *** [/home/cesar/OpenFOAM/cesar-2.3.1/platforms/linux64GccDPOpt/bin/coalCollidingChemistryFoam] Error 1

Anyone can please help me in this issue?

snak September 23, 2015 23:43

Hi,

Quote:

Originally Posted by cmigueis (Post 565308)
undefined reference to `Foam::StochasticCollisionModel<Foam::KinematicClo ud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam ::ReactingParcel<Foam::ThermoParcel<Foam::Collidin gParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >::dictionaryConstructorTablePtr_'

You should check the above part of the error message.
Please make sure you defined StochasticCollisionModel<<<.....>>>.

good luck,

cmigueis September 24, 2015 13:42

Hi, snak! Thanks for your reply!

I don't understand why this error occurs! When I look into the .dep file, the stochasticCollisionModel is present:

Code:

coalCollidingChemistryFoam.dep: $(WM_PROJECT_DIR)/src/lagrangian/intermediate/lnInclude/PatchInteractionModelNew.C
coalCollidingChemistryFoam.dep: $(WM_PROJECT_DIR)/src/lagrangian/intermediate/lnInclude/StochasticCollisionModel.H
coalCollidingChemistryFoam.dep: $(WM_PROJECT_DIR)/src/lagrangian/intermediate/lnInclude/StochasticCollisionModel.C
coalCollidingChemistryFoam.dep: $(WM_PROJECT_DIR)/src/lagrangian/intermediate/lnInclude/StochasticCollisionModelNew.C

coalCollidingChemistryFoam.dep: $(WM_PROJECT_DIR)/src/lagrangian/intermediate/lnInclude/SurfaceFilmModel.H

The Make/options file has the lagrangian/Intermediate libraries just like others solvers that contais the collisionCloud implemented (e.g. DPMFoam).

Do you have a suggestion about why this error occurs?

snak September 24, 2015 14:21

I think, problems will be on your own code.
I do not know exactly what you did. there is no way to say anything for sure.
Please review your codes and the referenced customized codes.
You are using StochasticCollisionModel<<<.....>>> in coalCollidingChemistryFoam ?

I am not familiar with coalChemistryFoam and thermo-related cloud/parcel. I just use icoUncoupledKinematicParcelFoam.
Lagrangian library uses multiple inheritance and template.
Please check that the elements in <> of the error message is what you expect?

wyldckat September 27, 2015 17:26

Quick answer: Shinji has the correct idea here, I'm just not certain if it's the exact problem.
From what I can figure out, the problem is that the new library does not have the necessary object creation part that is needed for generating the desired combination.

The quickest way to help you is that you provide the source code for the solver and library as an attachment. To do so, do the following steps:
  1. Go into the folder of the custom solver and run:
    Code:

    wclean  all
  2. Go into the folder of the custom library and run:
    Code:

    wclean all
  3. Then go into the parent folder for each source code folder and compress the folder for each one. For example, in "~/OpenFOAM/cesar-2.4.0/personalizado", run:
    Code:

    tar -czf coalCollidingChemistryFoam.tar.gz coalCollidingChemistryFoam
    And attach to your next post the file "coalCollidingChemistryFoam.tar.gz". Do the same for the library folder.

cmigueis September 28, 2015 12:21

2 Attachment(s)
Thanks a lot for your help, Bruno and Shinji!

I attached the compacted directories, Bruno! The only thing different from the beggining of the thread, is that I re-downloaded the original collidingCoalCombustion (from http://www.cfd-online.com/Forums/ope...dingcloud.html), and used it as it comes (I was trying to figure if renaming the files were the problem - it's not).

Thanks again and have a nice day!

wyldckat October 4, 2015 16:23

Hi César,

Sorry, but didn't manage to have enough time this weekend to fully diagnose the origin of this problem.
What I do know is that the issue is in one of the files in "collidingCoalCombustion":
  • "coalParcel/makeCoalParcelSubmodelsAdded.C" - this is the primary suspect
  • "coalParcel/makeCoalParcelSubmodels.C" - this is the secondary suspect
The reason is that these two files create the actual final class combinations. The missing combination is being hinted by the linker at the end of the build, that this configuration is missing:
Code:

Foam::StochasticCollisionModel<Foam::KinematicCloud<Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam::ReactingParcel<Foam::ThermoParcel<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > > > > >
This type of combination is built using the lines such as this one:
Code:

makeParcelDispersionModels(coalCloud);

You will have to look at the original files in OpenFOAM, in the folder given by this command:
Code:

echo $FOAM_SRC/lagrangian/

The other possibility is that you might need to take a step back to OpenFOAM 2.2 or 2.1, because I suspect that this is due to something that was upgraded in OpenFOAM 2.3.



Best regards,
Bruno

cmigueis October 8, 2015 11:32

Dear Bruno, thanks a lot for your help! I just added the lines

Code:

#include "makeParcelStochasticCollisionModels.H"
and

Code:

makeParcelStochasticCollisionModels(coalCloud);
into the makeCoalParcelSubmodelsAdded.C file, and now the particles aren't "invisible" to each other anymore!

I will adjust some other things in the case that I'm studying -mainly devolatilization and heterogeneous reactions(I might have to ask for help again)- and, as soon as I finished this, I'll post here the library, the solver and the test case, so anyone interested in the subject can download it.

Shuai_W October 27, 2015 00:55

Thank you for your share
 
Dear cmigueis,
Your work is pretty good. I want to simulate the coal combustion in a dense-phase fluidized bed, that is, four-way coupling should be taken into account. I see in your work you take the parcel collisions into consideration, however, it looks like that your model cannot utilized to model reacting dense two-phase flow.
However, based on your work, I think is available and I will do it based on yours. Thank you for your share, look forward.
Best wishes!

cmigueis October 27, 2015 06:39

Hi, Shuai, thanks for your considerations!

I didn't understand what you've said in the last part of your comment, I just added the parcel collision into the model, which already was a reacting parcel... why it can't model reacting dense two-phase flow?

Shuai_W October 27, 2015 07:18

di
 
Dear cmigueis,
Thank you for your quick reply.
First of all, I mean that your work can model reacting dilute two-phase flow, but not reacting dense two-phase flow. We can see in DPMFoam solver, there is an “alphac” in the mass and momentum equations of Ueqn.H, which mean the void fraction (voidage). However, in coalChemistryFoam, there isn’t a void fraction. That is, even though you implement coal cloud collisions into coalChemitryFoam, it look like DPM model in ANSYS Fluent, but not a CFD-DEM model with reaction, you should also implement “alphac”(voidage) into mass, momentum and energy equations.
For more details, you can have a look at article “Ku X, Li T, Løvås T. CFD–DEM simulation of biomass gasification with steam in a fluidized bed reactor [J]. Chemical Engineering Science, 2015, 122: 270-283.” or “Zhou H, Flamant G, Gauthier D. DEM-LES simulation of coal combustion in a bubbling fluidized bed Part II: coal combustion at the particle level [J]. Chemical Engineering Science, 2004, 59(20): 4205-4215.”, in these work, four-way coupling CFD-DEM with reaction were adopted to simulate a fluidized bed. The former is accomplished on OpenFOAM framework.
In my opinion, if you want to model dense phase reacting flow like above literature, I think DPMFoam combined with coalChemistryFoam can achieve it, which is the work I want to do and I am doing. Generally speaking, DPMFoam has already had parcels collisions and it is CFD-DEM method which can be used in cold fluidized bed modeling. If you only model pulverized coal combustion (that is, reacting dilute two-phase flow), four-way coupling is not necessary.
Best regards!

cmigueis October 27, 2015 07:38

Shuai, I apologize for the confusion! Now I understand what you've said! You're absolutely right! I was now trying to include the volumetric fraction of void into the model! The interstitialInletVelocity condition that I want to use in my model also requires the void fraction! Yes, the work of Ku et. al. is one of the main references that I'm using, together with the work of Oevermann and Gerber (2009)... If you have sucess in this task, or if I can help you in anything (although I don't have an advanced level of OpenFOAM/C++ knowledge) please let me know!

Shuai_W October 27, 2015 07:52

3-step char combustion chemsitry mechanism
 
Dear cmigueis,
Thank you for your reply.
I am very glad that someone does the same work with me. Frankly speaking, reacting dense two-phase flow simulation is widely used in many fields. I was now trying it, too. If I have some progress, I will share it with you.
Now, I am trying to implement a 3-step char combustion chemsitry mechanism for coalChemistryFoam solver. I intend to use following reactions to determine consumption of C:
C + 0.5O2 --> CO ; K1 is the rate constant
C + CO2 --> 2CO ; K2 is the rate constant
C + H2O --> CO+H2 ; K3 is the rate constant
After accomplish this, I will take the void fraction into account.
Best regards!

demolaoye May 10, 2016 19:31

Missing piece
 
Thank you, everyone.

Your posts have been informative. However, I looked at the developed collidingCoalCloud and realised that it does not accept the mu value during creation. As a result, I think it is perhaps the needed piece to have an effective DEM simulation, as mu is needed to calculate some particle behaviors like drag.

Does anyone have an idea on how to include mu in the creation of collidingCoalCloud.

Thank you.

Polli June 2, 2016 09:09

Problem implementing Collission into reactingParcel
 
Hi all,

according to this posting and that ( http://www.cfd-online.com/Forums/ope...dingcloud.html ) i tried to implement the collission model into the coalChemitryFoam or reactingParcelFoam

In which OF version was the solver from "cmigueis" developed? When i want to compile the solver it is without success.

So i tried to do the modifications in OF3.0.0 which were not the big deal, the modified basicKinematicReactingMulitphaseCloud compiled. But when i want to compile the solver with the new parcel cloud type i have a big problem (the errorcode is in the appendix).

So can you tell me in which version the solver from cmigueis is developed or can someone give me his now running version with the collission model?

At my error output at solver compilation there seems to be a linking error but i cant find the reason. The whole modified lagrangian folder compiles without errors, as long as i do not implement the collission model into the basicKinematicReactingMulitphase Parcel and Cloud the solver compiles. When i implement the collission model the lagrangian folder compiles but the solver makes the following output.


Making dependency list for source file reactingParcelFoam.C
g++ -m64 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -O3 -DNoRepository -ftemplate-depth-100 -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/finiteVolume/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/meshTools/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/TurbulenceModels/turbulenceModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/TurbulenceModels/compressible/lnInclude -I./lagrangian/basic/lnInclude -I./lagrangian/DSMC/lnInclude -I./lagrangian/solidParticle/lnInclude -I./lagrangian/spray/lnInclude -I./lagrangian/turbulence/lnInclude -I./lagrangian/intermediate/lnInclude -I./lagrangian/coalCombustion/lnInclude -I./lagrangian/distributionModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/specie/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/transportModels/compressible/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/basic/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/solidProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/reactionThermo/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/SLGThermo/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/chemistryModel/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/radiation/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/ODE/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/regionModels/regionModel/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/regionModels/surfaceFilmModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/combustionModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/fvOptions/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/sampling/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/applications/solvers/combustion/reactingFoam -IlnInclude -I. -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/OpenFOAM/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/OSspecific/POSIX/lnInclude -fPIC -c reactingParcelFoam.C -o Make/linux64GccDPInt32Opt/reactingParcelFoam.o
g++ -m64 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -O3 -DNoRepository -ftemplate-depth-100 -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/finiteVolume/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/meshTools/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/TurbulenceModels/turbulenceModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/TurbulenceModels/compressible/lnInclude -I./lagrangian/basic/lnInclude -I./lagrangian/DSMC/lnInclude -I./lagrangian/solidParticle/lnInclude -I./lagrangian/spray/lnInclude -I./lagrangian/turbulence/lnInclude -I./lagrangian/intermediate/lnInclude -I./lagrangian/coalCombustion/lnInclude -I./lagrangian/distributionModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/specie/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/transportModels/compressible/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/basic/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/liquidProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/liquidMixtureProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/solidProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/properties/solidMixtureProperties/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/thermophysicalFunctions/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/reactionThermo/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/SLGThermo/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/chemistryModel/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/thermophysicalModels/radiation/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/ODE/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/regionModels/regionModel/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/regionModels/surfaceFilmModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/combustionModels/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/fvOptions/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/sampling/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/applications/solvers/combustion/reactingFoam -IlnInclude -I. -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/OpenFOAM/lnInclude -I/home/TPT-Sim7/foam/OpenFOAM-3.0.0/src/OSspecific/POSIX/lnInclude -fPIC -Xlinker --add-needed -Xlinker --no-as-needed Make/linux64GccDPInt32Opt/reactingParcelFoam.o -L/home/TPT-Sim7/foam/OpenFOAM-3.0.0/platforms/linux64GccDPInt32Opt/lib \
-lfiniteVolume -lmeshTools -lturbulenceModels -lcompressibleTurbulenceModels -llagrangian -llagrangianIntermediate -llagrangianTurbulence -lspecie -lcompressibleTransportModels -lfluidThermophysicalModels -lliquidProperties -lliquidMixtureProperties -lsolidProperties -lsolidMixtureProperties -lthermophysicalFunctions -lreactionThermophysicalModels -lSLGThermo -lchemistryModel -lradiationModels -lODE -lregionModels -lsurfaceFilmModels -lcombustionModels -lfvOptions -lsampling -lOpenFOAM -ldl \
-lm -o /home/TPT-Sim7/OpenFOAM/TPT-Sim7-3.0.0/platforms/linux64GccDPInt32Opt/bin/reactingParcelFoamDEM01

Make/linux64GccDPInt32Opt/reactingParcelFoam.o: In function `Foam::IOPosition<Foam::Cloud<Foam::ReactingMultip haseParcel<Foam::ReactingParcel<Foam::ThermoParcel <Foam::CollidingParcel<Foam::KinematicParcel<Foam: article> > > > > > >::type() const':
reactingParcelFoam.C
.text._ZNK4Foam10IOPositionINS_5CloudINS_24Reactin gMultiphaseParcelINS_14ReactingParcelINS_12ThermoP arcelINS_15CollidingParcelINS_15KinematicParcelINS _8particleEEEEEEEEEEEEEE4typeEv[_ZNK4Foam10IOPositionINS_5CloudINS_24ReactingMulti phaseParcelINS_14ReactingParcelINS_12ThermoParcelI NS_15CollidingParcelINS_15KinematicParcelINS_8part icleEEEEEEEEEEEEEE4typeEv]+0x3): undefined reference to `Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam:: ReactingParcel<Foam::ThermoParcel<Foam::CollidingP arcel<Foam::KinematicParcel<Foam:article> > > > > >::typeName'


Make/linux64GccDPInt32Opt/reactingParcelFoam.o: In function `Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam:: ReactingParcel<Foam::ThermoParcel<Foam::CollidingP arcel<Foam::KinematicParcel<Foam:article> > > > > >::type() const':
reactingParcelFoam.C
.text._ZNK4Foam5CloudINS_24ReactingMultiphaseParce lINS_14ReactingParcelINS_12ThermoParcelINS_15Colli dingParcelINS_15KinematicParcelINS_8particleEEEEEE EEEEEE4typeEv[_ZNK4Foam5CloudINS_24ReactingMultiphaseParcelINS_1 4ReactingParcelINS_12ThermoParcelINS_15CollidingPa rcelINS_15KinematicParcelINS_8particleEEEEEEEEEEEE 4typeEv]+0x3): undefined reference to `Foam::Cloud<Foam::ReactingMultiphaseParcel<Foam:: ReactingParcel<Foam::ThermoParcel<Foam::CollidingP arcel<Foam::KinematicParcel<Foam::particle> > > > > >::typeName'


Make/linux64GccDPInt32Opt/reactingParcelFoam.o: In function `Foam::ReactingMultiphaseParcel<Foam::ReactingParc el<Foam::ThermoParcel<Foam::CollidingParcel<Foam:: KinematicParcel<Foam::particle> > > > >::type() const':
reactingParcelFoam.C.text._ZNK4Foam24ReactingMulti phaseParcelINS_14ReactingParcelINS_12ThermoParcelI NS_15CollidingParcelINS_15KinematicParcelINS_8part icleEEEEEEEEEE4typeEv[_ZNK4Foam24ReactingMultiphaseParcelINS_14ReactingP arcelINS_12ThermoParcelINS_15CollidingParcelINS_15 KinematicParcelINS_8particleEEEEEEEEEE4typeEv]+0x3): undefined reference to `Foam::ReactingMultiphaseParcel<Foam::ReactingParc el<Foam::ThermoParcel<Foam::CollidingParcel<Foam:: KinematicParcel<Foam:article> > > > >::typeName'


Make/linux64GccDPInt32Opt/reactingParcelFoam.o: In function `Foam::ReactingParcel<Foam::ThermoParcel<Foam::Col lidingParcel<Foam::KinematicParcel<Foam::particle> > > >::type() const':
reactingParcelFoam.C.text._ZNK4Foam14ReactingParce lINS_12ThermoParcelINS_15CollidingParcelINS_15Kine maticParcelINS_8particleEEEEEEEE4typeEv[_ZNK4Foam14ReactingParcelINS_12ThermoParcelINS_15C ollidingParcelINS_15KinematicParcelINS_8particleEE EEEEEE4typeEv]+0x3): undefined reference to `Foam::ReactingParcel<Foam::ThermoParcel<Foam::Col lidingParcel<Foam::KinematicParcel<Foam::particle> > > >::typeName'


.
.
.
.
.
.
.
.
.
.
.

Shuai_W June 2, 2016 10:15

The version of OpenFoam I use
 
Hi Polli,
The version of OpenFoam I used is 2.3.1, so I suggest that you should compile the codes in 2.3.1. If you have some problems, I will give you some advice.

Wang


All times are GMT -4. The time now is 09:06.