CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   OLAFOAM solver stops working (https://www.cfd-online.com/Forums/openfoam-solving/196486-olafoam-solver-stops-working.html)

Chubo December 5, 2017 21:30

OLAFOAM solver stops working
 
Dear Foamers,

I am new in OpenFOAM simulation. Recently, I am building a numerical wave flume by using OLAFOAM library, to simulate the motion of a wave energy converter (olaDyMFoam). The flume works well. But when I add a function to the controlDict to run-time sample alpha.water at fixed points, the solver "olaDyMFoam" only runs 9.7 sec and then stop updating the log file (log.olaDyMFoam). The odd thing is, this job will be still running until timeout without any errors.

I use OpenFOAM-3.0.1 and my job was calculated on a cluster. The controlDict setting is listed below. Many thanks for your help.

Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  3.0.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    3.0;
    format      ascii;
    class      dictionary;
    location    "system";
    object      controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application    olaDyMFoam;

startFrom      latestTime;

startTime      0;

stopAt          endTime;

endTime        240;

deltaT          0.1;

writeControl    adjustableRunTime;

writeInterval  0.05;

purgeWrite      0;

writeFormat    ascii;

writePrecision  12;

writeCompression uncompressed;

timeFormat      general;

timePrecision  6;

runTimeModifiable yes;

adjustTimeStep  yes;

maxCo          .5;
maxAlphaCo      .5;
maxDeltaT      0.02;

functions
{
    waveElevation
    {
        type                  sets;
        functionObjectLibs    ("libsampling.so");
        setFormat              raw;
        interpolationScheme    cellPoint;
        outputControl          outputTime; // Don't use timeStep
        outputInterval 1;
        sets
        (
            Probe_50m
            {
                type        uniform;
                axis        z;
                start      (50 0 2);
                end        (50 0 -2);
                nPoints    401;
            }
            Probe_100m
            {
                type        uniform;
                axis        z;
                start      (100 0 2);
                end        (100 0 -2);
                nPoints    401;
            }

        );
        fields
        (
          alpha.water
        );
    }
};


libs
(
    "libwaveGeneration.so"
    "libwaveAbsorption.so"
    "libsampling.so"
);


Phicau December 5, 2017 22:45

Hi Chubo,

I have faced this problem too.

This is caused by a limitation of OpenFOAM sampling procedure. From what I remember, as the time and mesh deformation progress, the initial sampling points that were inside a given cell will belong to another one (or even to a face, which is less likely, but has also happened to me), and sampling will fail.

I suggest that you open a bug in the OpenFOAM system to see if they can do something to update the points at runtime for 'DyM' solvers.

https://bugs.openfoam.org/rules.php

Best,

Pablo

Chubo December 6, 2017 02:24

Hi Pablo,

Thank you for your information.

Not sure the problem will be solved if I change the interpolationScheme from 'cellPoint' to 'cellPointFace'. I will let you know the result.

Regards
Chubo


All times are GMT -4. The time now is 01:00.