CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Programming & Development

Problems with running a custom solver: "Unknown psiCombustionModel"

Register Blogs Community New Posts Updated Threads Search

Like Tree10Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 30, 2015, 13:20
Default
  #21
New Member
 
A. Kamitsis
Join Date: Aug 2015
Posts: 15
Rep Power: 10
AlexKam is on a distinguished road
Hi Bruno,

I have encountered another issue and hope you may be able to point me in the right direction. My simulations have been running quite well however when I go to run a fixed-density case in parallel I'm getting the following error:

running:
Code:
mpirun -np 8 rotatingCDFireFoam -parallel
and the output is:
Code:
alexei@alexei-OptiPlex-9010:~/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w$ mpirun -np 8 rotatingCDFireFoam -parallel
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.2.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : 2.2.0
Exec   : rotatingCDFireFoam -parallel
Date   : Oct 01 2015
Time   : 03:17:49
Host   : "alexei-OptiPlex-9010"
PID    : 7672
Case   : /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w
nProcs : 8
Slaves : 
7
(
"alexei-OptiPlex-9010.7673"
"alexei-OptiPlex-9010.7674"
"alexei-OptiPlex-9010.7675"
"alexei-OptiPlex-9010.7676"
"alexei-OptiPlex-9010.7677"
"alexei-OptiPlex-9010.7678"
"alexei-OptiPlex-9010.7679"
)

Pstream initialized with:
    floatTransfer      : 0
    nProcsSimpleSum    : 0
    commsType          : nonBlocking
    polling iterations : 0
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Disallowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create mesh for time = 0


Reading g
Creating combustion model

Selecting combustion model infinitelyFastChemistry<psiThermoCombustion,gasThermoPhysics>
Selecting thermodynamics package 
{
    type            hePsiThermo;
    mixture         singleStepReactingMixture;
    transport       sutherland;
    thermo          janaf;
    energy          sensibleEnthalpy;
    equationOfState perfectGas;
    specie          specie;
}

Selecting chemistryReader foamChemistryReader
Fuel heat of combustion :5.00312e+07
stoichiometric air-fuel ratio :17.0854
stoichiometric oxygen-fuel ratio :3.98918
Maximum products mass concentrations:
    H2O: 0.124183
    CO2: 0.151685
    N2: 0.724132
Combustion mode: explicit
Reading thermophysical properties

Creating component thermo properties:
    multi-component carrier - 5 species
[2] [4] [6] 
[7] 
[7] 
[4] 
[4] --> FOAM FATAL IO ERROR: 
[4] Cannot find patchField entry for procBoundary4to0
[4] 
[6] 
[6] --> FOAM FATAL IO ERROR: 
[6] Cannot find patchField entry for procBoundary6to2
[6] 
[6] file: 
[7] --> FOAM FATAL IO ERROR: 
[7] Cannot find patchField entry for procBoundary7to3
[7] 
[7] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor7/../constant/rho.boundaryField from line 25 to line 43.
[7] 
[7]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[7]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[7] 
FOAM parallel run exiting
[7] 

[2] 
[2] --> FOAM FATAL IO ERROR: 
[2] Cannot find patchField entry for procBoundary2to0
[2] 
[2] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor2/../constant/rho.boundaryField from line 25 to line 43.
[2] 
[2]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[2]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[2] 
FOAM parallel run exiting
[2] 
/home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor6/../constant/rho.boundaryField from line 25 to line 43.
[6] 
[6]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[6]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[6] 
FOAM parallel run exiting
[6] 
[4] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor4/../constant/rho.boundaryField from line 25 to line 43.
[4] 
[4]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[4]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[4] 
FOAM parallel run exiting
[4] 
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 1 in communicator MPI_COMM_WORLD 
with errorcode 1.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
[1] 
[1] 
[1] --> FOAM FATAL IO ERROR: 
[1] Cannot find patchField entry for procBoundary1to0
[1] 
[1] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor1/../constant/rho.boundaryField from line 25 to line 43.
[1] 
[1]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[1]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[1] 
FOAM parallel run exiting
[1] 
[5] 
[5] 
[5] --> FOAM FATAL IO ERROR: 
[5] Cannot find patchField entry for procBoundary5to1
[5] 
[5] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor5/../constant/rho.boundaryField from line 25 to line 43.
[5] 
[5]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[5]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[5] 
FOAM parallel run exiting
[5] 
    no liquid components
    no solid components
Creating field rho

[0] 
[0] 
[0] --> FOAM FATAL IO ERROR: 
[0] Cannot find patchField entry for procBoundary0to1
[0] 
[0] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor0/../constant/rho.boundaryField from line 25 to line 43.
[0] 
[0]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[0]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[0] 
FOAM parallel run exiting
[0] 
[3] 
[3] 
[3] --> FOAM FATAL IO ERROR: 
[3] Cannot find patchField entry for procBoundary3to1
[3] 
[3] file: /home/alexei/OpenFOAM/alexei-2.2.0/my_cases/flame_1/whirl/changing_diff/constant_density/whirl_0.05r_0.01in_3.0w/processor3/../constant/rho.boundaryField from line 25 to line 43.
[3] 
[3]     From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh>&, const dictionary&)
[3]     in file /opt/openfoam220/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 154.
[3] 
FOAM parallel run exiting
[3] 
--------------------------------------------------------------------------
mpirun has exited due to process rank 0 with PID 7672 on
node alexei-OptiPlex-9010 exiting improperly. There are two reasons this could occur:

1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.

2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"

This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).
--------------------------------------------------------------------------
[alexei-OptiPlex-9010:07671] 7 more processes have sent help message help-mpi-api.txt / mpi-abort
[alexei-OptiPlex-9010:07671] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
When I run the solver without parallel the case seems to run?

Kindest Regards,
Alexei
AlexKam is offline   Reply With Quote

Old   October 3, 2015, 09:04
Default
  #22
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Hi Alexei,

Mmm... that kind of error message occurs when you copy a field file from the main "0" folder into the "processor*/0" folders.
I say this because the utility decomposePar will create those boundaries for you in the field files, which in your case, is the "rho" file that is missing the boundary entries.

If you really want to copy the field files from the main "0" folder to the "processor*/0" folders, then you should add this entry to all files:
Code:
    "proc.*"
    {
        type            processor;
    }
You can find the practical example in the tutorial folder "incompressible/pisoFoam/les/motorBike/motorBike/0.org/".

Best regards,
Bruno
AlexKam likes this.
__________________
wyldckat is offline   Reply With Quote

Old   October 16, 2015, 11:37
Default
  #23
New Member
 
A. Kamitsis
Join Date: Aug 2015
Posts: 15
Rep Power: 10
AlexKam is on a distinguished road
Hi Bruno,

If I did not want to copy the field files to the processor folders how would I get around the problem?

I currently have my constant rho as follows:

Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.1.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    location    "constant";
    object      rho;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [1 -3 0 0 0 0 0];
internalField   uniform 1;

boundaryField
{
    outer_boundary
    {
        type            fixedValue;
        value           uniform 1;
    }

    floor
    {
        type            fixedValue;
        value           uniform 1;
    }

    top
    {
        type            fixedValue;
        value           uniform 1;
    }
    hotspot
    {
        type            fixedValue;
        value           uniform 1;
    }
}
Kind Regards,
Alexei
AlexKam is offline   Reply With Quote

Old   October 17, 2015, 10:30
Default
  #24
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Quick answer: Ah, OK, the field file "rho" is in the folder "constant". Then try running decomposePar like this:
Code:
decomposePar -constant
This should enforce the need to also decompose field fields that are in the "constant" folder.

If this doesn't work, then you must place the "rho" file in the time folder, even if the field doesn't change during the simulation. You will also need to modify the solver accordingly.
AlexKam likes this.
wyldckat is offline   Reply With Quote

Old   November 23, 2015, 20:29
Default
  #25
Member
 
Fengjiao Bian
Join Date: Nov 2013
Location: beijing
Posts: 30
Rep Power: 12
jiaojiao is on a distinguished road
Hi Bruno,I changed my files in the 0.original folder as the case "motobike" .Then I decomposed. It still didn't generate the 0 folders in all processors.Could you tell me how to do it? The starttime of my controlDict is 0.




Quote:
Originally Posted by wyldckat View Post
Hi Alexei,

Mmm... that kind of error message occurs when you copy a field file from the main "0" folder into the "processor*/0" folders.
I say this because the utility decomposePar will create those boundaries for you in the field files, which in your case, is the "rho" file that is missing the boundary entries.

If you really want to copy the field files from the main "0" folder to the "processor*/0" folders, then you should add this entry to all files:
Code:
    "proc.*"
    {
        type            processor;
    }
You can find the practical example in the tutorial folder "incompressible/pisoFoam/les/motorBike/motorBike/0.org/".

Best regards,
Bruno
jiaojiao is offline   Reply With Quote

Old   November 23, 2015, 20:51
Smile
  #26
Member
 
Fengjiao Bian
Join Date: Nov 2013
Location: beijing
Posts: 30
Rep Power: 12
jiaojiao is on a distinguished road
Hi,Bruno.I have solved the problem, your method is quite well, the problem is the wrong boundary.Thanks!
Quote:
Originally Posted by wyldckat View Post
Hi Alexei,

Mmm... that kind of error message occurs when you copy a field file from the main "0" folder into the "processor*/0" folders.
I say this because the utility decomposePar will create those boundaries for you in the field files, which in your case, is the "rho" file that is missing the boundary entries.

If you really want to copy the field files from the main "0" folder to the "processor*/0" folders, then you should add this entry to all files:
Code:
    "proc.*"
    {
        type            processor;
    }
You can find the practical example in the tutorial folder "incompressible/pisoFoam/les/motorBike/motorBike/0.org/".

Best regards,
Bruno
jiaojiao is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[ANSYS Meshing] Help with element size sandri_92 ANSYS Meshing & Geometry 14 November 14, 2018 07:54
Segmentation fault running waveDyMFoam solver (mod. interDyMFoam solver - waves2Foam) Ed R OpenFOAM Running, Solving & CFD 5 July 2, 2013 11:36
Problems running customized solver for diffusion mmkr825 OpenFOAM Running, Solving & CFD 1 August 30, 2012 14:01
problem in running a modified solver adambarfi OpenFOAM 5 August 10, 2012 15:52
CFX 5.5 Roued CFX 1 October 2, 2001 16:49


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