View Issue Details

IDProjectCategoryView StatusLast Update
0003613OpenFOAMBugpublic2021-01-15 09:53
Reporterjtriesch Assigned Tohenry  
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionfixed 
PlatformGNU/LinuxOSUbuntuOS Version20.04
Product Versiondev 
Fixed in Versiondev 
Summary0003613: setFields breaks some time-varying boundary conditions, i.e. falsely replacing dictionary keyword
DescriptionWhen using setFields with some time-varying boundary conditions (e.g., sine), the 'amplitude' dictionary entry is falsely replaced by multiple keyword 'value' entries in '0' folder. This breaks the required keyword entries for subsequent solver runs. Apparently this does not affect the 'coded' BC used in the examples below.
Steps To ReproduceRun the modified 'pitzDailyPulse' tutorial cases attached to this report.
1. Added runApplication setFields to 'Allrun'
2. Added setFields dictionary to 'system' folder
3. Modified p -> boundaryField -> outlet -> type (e.g. uniformFixedValue etc, see examples)
4. Execute 'Allrun' for various cases

Case with uniformFixedValue and 'type sine' fails with 'keyword amplitude is undefined in dictionary' message (see attached log files).
Additional InformationI suspect this issue has been introduced to OpenFOAM-dev sometime between 6-Oct-2020 and 13-Jan-2021.
TagsNo tags attached.

Activities

jtriesch

2021-01-14 07:37

reporter  

log.blockMesh (3,254 bytes)   
/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  dev
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
Build  : dev-8182a0cff62c
Exec   : blockMesh -dict /home/jan/OpenFOAM/OpenFOAM-dev/tutorials/resources/blockMesh/pitzDaily
Date   : Jan 14 2021
Time   : 08:31:12
Host   : "jan-XPS-13-9370"
PID    : 3641695
I/O    : uncollated
Case   : /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

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

Creating block mesh from
    "/home/jan/OpenFOAM/OpenFOAM-dev/tutorials/resources/blockMesh/pitzDaily"
Creating block edges
No non-planar block faces defined
Creating topology blocks
Creating topology patches

Creating block mesh topology

Check topology

	Basic statistics
		Number of internal faces : 5
		Number of boundary faces : 20
		Number of defined boundary faces : 20
		Number of undefined boundary faces : 0
	Checking patch -> block consistency

Creating block offsets
Creating merge list .

Creating polyMesh from blockMesh
Creating patches
Creating cells
Creating points with scale 0.001
    Block 0 cell size :
        i : 0.00158284 .. 0.000791418
        j : 0.000318841 .. 0.000420268
        k : 0.001
    Block 1 cell size :
        i : 0.000528387 .. 0.00211355
        j : 0.00112889 .. 0.000360188 0.00112841 .. 0.000361677 0.00112889 .. 0.000360188 0.00112841 .. 0.000361677 
        k : 0.001
    Block 2 cell size :
        i : 0.000528387 .. 0.00211355
        j : 0.000318841 .. 0.000420268 0.000320918 .. 0.000419851 0.000318841 .. 0.000420268 0.000320918 .. 0.000419851 
        k : 0.001
    Block 3 cell size :
        i : 0.0020578 .. 0.00514451 0.00205699 .. 0.00514248 0.0020578 .. 0.00514451 0.00205699 .. 0.00514248 
        j : 0.000940741 .. 0.000940741 0.0009328 .. 0.0009328 0.000940741 .. 0.000940741 0.0009328 .. 0.0009328 
        k : 0.001
    Block 4 cell size :
        i : 0.0020466 .. 0.00511651 0.00204663 .. 0.00511656 0.0020466 .. 0.00511651 0.00204663 .. 0.00511656 
        j : 0.00112889 .. 0.000257962 0.00111936 .. 0.000255785 0.00112889 .. 0.000257962 0.00111936 .. 0.000255785 
        k : 0.001

There are no merge patch pairs edges

Writing polyMesh
----------------
Mesh Information
----------------
  boundingBox: (-0.0206 -0.0254 -0.0005) (0.29 0.0254 0.0005)
  nPoints: 25012
  nCells: 12225
  nFaces: 49180
  nInternalFaces: 24170
----------------
Patches
----------------
  patch 0 (start: 24170 size: 30) name: inlet
  patch 1 (start: 24200 size: 57) name: outlet
  patch 2 (start: 24257 size: 223) name: upperWall
  patch 3 (start: 24480 size: 250) name: lowerWall
  patch 4 (start: 24730 size: 24450) name: frontAndBack

End

log.blockMesh (3,254 bytes)   
log.pimpleFoam (1,688 bytes)   
/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  dev
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
Build  : dev-8182a0cff62c
Exec   : pimpleFoam
Date   : Jan 14 2021
Time   : 08:31:17
Host   : "jan-XPS-13-9370"
PID    : 3642024
I/O    : uncollated
Case   : /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

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

Create mesh for time = 0


PIMPLE: No convergence criteria found


PIMPLE: Operating solver in transient mode with 1 outer corrector
PIMPLE: Operating solver in PISO mode


Reading field p



--> FOAM FATAL IO ERROR: 
keyword amplitude is undefined in dictionary "/home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine/0/p/boundaryField/outlet/uniformValue"

file: /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine/0/p/boundaryField/outlet/uniformValue from line 33 to line 36.

    From function const Foam::entry& Foam::dictionary::lookupEntry(const Foam::word&, bool, bool) const
    in file db/dictionary/dictionary.C at line 790.

FOAM exiting

log.pimpleFoam (1,688 bytes)   
log.setFields (2,007 bytes)   
/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  dev
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
Build  : dev-8182a0cff62c
Exec   : setFields
Date   : Jan 14 2021
Time   : 08:31:13
Host   : "jan-XPS-13-9370"
PID    : 3641707
I/O    : uncollated
Case   : /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

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

Create mesh for time = 0

Reading setFieldsDict

Setting field default values
    Setting internal values of volScalarField p
    Setting internal values of volVectorField U
Using dynamicCode for Function1 pulse at line 29 in "/home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine/0/U/boundaryField/inlet/uniformValue"
Creating new library in "dynamicCode/pulse/platforms/linux64GccDPInt32Opt/lib/libpulse_836c01257f56160729021142ea45930e4c6506e1.so"
Invoking "wmake -s libso /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine/dynamicCode/pulse"
wmake libso /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine/dynamicCode/pulse
    ln: ./lnInclude
    wmkdep: Function1Template.C
    Ctoo: Function1Template.C
    ld: /home/jan/OpenFOAM/jan-dev/run/setFields_tests/pitzDailyPulse_uniformValue_sine/dynamicCode/pulse/../platforms/linux64GccDPInt32Opt/lib/libpulse_836c01257f56160729021142ea45930e4c6506e1.so

Setting field region values

End

log.setFields (2,007 bytes)   
setFields_tests.tar.gz (2,973 bytes)

henry

2021-01-14 10:55

manager   ~0011814

Thanks for the clear and detailed bug-report, with this it was easy to find the issue.

Try commit c6f69e7987d4ca2e4cd6f75fdcba074f6cc39fb1

jtriesch

2021-01-15 06:38

reporter   ~0011820

Thanks for the fast fix. I confirm this issue is solved for me.

Issue History

Date Modified Username Field Change
2021-01-14 07:37 jtriesch New Issue
2021-01-14 07:37 jtriesch File Added: log.blockMesh
2021-01-14 07:37 jtriesch File Added: log.pimpleFoam
2021-01-14 07:37 jtriesch File Added: log.setFields
2021-01-14 07:37 jtriesch File Added: setFields_tests.tar.gz
2021-01-14 10:55 henry Note Added: 0011814
2021-01-15 06:38 jtriesch Note Added: 0011820
2021-01-15 09:53 henry Assigned To => henry
2021-01-15 09:53 henry Status new => resolved
2021-01-15 09:53 henry Resolution open => fixed
2021-01-15 09:53 henry Fixed in Version => dev