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

controlDict optimization

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   August 17, 2023, 06:20
Default controlDict optimization
  #1
Senior Member
 
Saeed Jamshidi
Join Date: Aug 2019
Posts: 214
Rep Power: 8
saeed jamshidi is on a distinguished road
Hi,
Along my running in openfoam I realized that when computational time reaches higher and higher, run time also would be so high because of DMD. I have attached some part of my terminal output.
would you tell me know why this happens and how i could ignore some unnecessary DMDs command in controlDict in order to decrease run time.
thank you.

Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  v2112                                 |
|   \\  /    A nd           | Website:  www.openfoam.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application     pimpleFoam;

startFrom       startTime;

startTime       0;

stopAt          endTime;

endTime         100;

deltaT          0.05;

writeControl    runTime;

writeInterval   5;

purgeWrite      0;

writeFormat     ascii;

writePrecision  16;

timeFormat      general;

timePrecision   8;

runTimeModifiable false;


functions
{

    fieldAverage1
    {
        type                fieldAverage;
        libs                (fieldFunctionObjects);

        fields
        (
            U
            {
                mean            on;
                prime2Mean      off;
                base            time;
                windowType      exact;
                window          0.25;
                windowName      movingAverageWindow;
                allowRestart    no;
            }

            U
            {
                mean        on;
                prime2Mean  on;
                base        time;
            }

            p
            {
                mean        on;
                prime2Mean  on;
                base        time;
            }
        );

        timeStart           10;
        executeControl      timeStep;
        executeInterval     1;
        writeControl        onEnd;
    }

    mapFields1
    {
        type            mapFields;
        libs            (fieldFunctionObjects);
        mapRegion       coarseMesh;
        mapMethod       cellVolumeWeight;
        consistent      no;
        patchMap        ();
        cuttingPatches  ();
        fields
        (
            U
            p
        );

        timeStart       10;
        timeEnd         2000;

        executeControl  timeStep;
        executeInterval 10;

        writeControl    timeStep;
        writeInterval   50;
    }

    mapFields2
    {
        ${mapFields1}
        fields
        (
            UMean
            pMean
            UPrime2Mean
            pPrime2Mean
            UMean_movingAverageWindow
        );
    }

    yPlus1
    {
        type            yPlus;
        libs            (fieldFunctionObjects);
        timeStart       10;
        executeControl  timeStep;
        executeInterval 1;
        writeControl    writeTime;
    }
	
    forces
    {
        type            forceCoeffs;
        functionObjectLibs ( "libforces.so" );
        outputControl   timeStep;
        outputInterval  1;
        patches         ("cylinder");
        pName           p;
        UName           U;
        rho             rhoInf;
        log             true;
        rhoInf          1000;
        liftDir         (0 1 0);
        dragDir         (1 0 0);
        CofR            (0 0 0);
        pitchAxis       (0 0 1);
        magUInf         0.0025;
        lRef            0.04;
        Aref            0.0008;
    }


    #include "DMDs/stdmd01" // field=U
    #include "DMDs/stdmd02" // field=U, region=coarseMesh
    #include "DMDs/stdmd03" // field=U, patch=cylinder
    #include "DMDs/stdmd04" // field=U, patch=outlet
    #include "DMDs/stdmd05" // field=U, maxRank=10
    #include "DMDs/stdmd06" // field=U, region=coarseMesh, maxRank=5
    #include "DMDs/stdmd07" // field=U, patch=outlet, maxRank=2

    #include "DMDs/stdmd08" // field=p
    #include "DMDs/stdmd09" // field=p, region=coarseMesh
    #include "DMDs/stdmd10" // field=p, patch=cylinder
    #include "DMDs/stdmd11" // field=p, patch=outlet
    #include "DMDs/stdmd12" // field=p, maxRank=10
    #include "DMDs/stdmd13" // field=p, region=coarseMesh, maxRank=5
    #include "DMDs/stdmd14" // field=p, patch=outlet, maxRank=2

    #include "DMDs/stdmd15" // field=U, modeSorter=kiewat
    #include "DMDs/stdmd16" // field=U, region=coarseMesh, modeSorter=kiewat
    #include "DMDs/stdmd17" // field=U, patch=cylinder, modeSorter=kiewat
    #include "DMDs/stdmd18" // field=U, patch=outlet, modeSorter=kiewat
    #include "DMDs/stdmd19" // field=U, maxRank=10, modeSorter=kiewat
    #include "DMDs/stdmd20" // field=U, region=coarseMesh, maxRank=5, modeSorter=kiewat
    #include "DMDs/stdmd21" // field=U, patch=outlet, maxRank=2, modeSorter=kiewat

    #include "DMDs/stdmd22" // field=p, modeSorter=kiewat
    #include "DMDs/stdmd23" // field=p, region=coarseMesh, modeSorter=kiewat
    #include "DMDs/stdmd24" // field=p, patch=cylinder, modeSorter=kiewat
    #include "DMDs/stdmd25" // field=p, patch=outlet, modeSorter=kiewat
    #include "DMDs/stdmd26" // field=p, maxRank=10, modeSorter=kiewat
    #include "DMDs/stdmd27" // field=p, region=coarseMesh, maxRank=5, modeSorter=kiewat
    #include "DMDs/stdmd28" // field=p, patch=outlet, maxRank=2, modeSorter=kiewat

    #include "DMDs/stdmd29" // field=UMean
    // #include "DMDs/stdmd30" // field=UMean, region=coarseMesh
    #include "DMDs/stdmd31" // field=UMean, patch=cylinder
    #include "DMDs/stdmd32" // field=UMean, patch=outlet
    #include "DMDs/stdmd33" // field=UMean, maxRank=10
    // #include "DMDs/stdmd34" // field=UMean, region=coarseMesh, maxRank=5
    #include "DMDs/stdmd35" // field=UMean, patch=outlet, maxRank=2

    #include "DMDs/stdmd36" // field=pMean
    // #include "DMDs/stdmd37" // field=pMean, region=coarseMesh
    #include "DMDs/stdmd38" // field=pMean, patch=cylinder
    #include "DMDs/stdmd39" // field=pMean, patch=outlet
    #include "DMDs/stdmd40" // field=pMean, maxRank=10
    // #include "DMDs/stdmd41" // field=pMean, region=coarseMesh, maxRank=5
    #include "DMDs/stdmd42" // field=pMean, patch=outlet, maxRank=2

    #include "DMDs/stdmd43" // field=UPrime2Mean
    // #include "DMDs/stdmd44" // field=UPrime2Mean, region=coarseMesh
    #include "DMDs/stdmd45" // field=UPrime2Mean, patch=cylinder
    #include "DMDs/stdmd46" // field=UPrime2Mean, patch=outlet
    #include "DMDs/stdmd47" // field=UPrime2Mean, maxRank=10
    // #include "DMDs/stdmd48" // field=UPrime2Mean, region=coarseMesh, maxRank=5
    #include "DMDs/stdmd49" // field=UPrime2Mean, patch=outlet, maxRank=2

    #include "DMDs/stdmd50" // field=UMean_movingAverageWindow
    // #include "DMDs/stdmd51" // field=UMean_movingAverageWindow, region=coarseMesh
    #include "DMDs/stdmd52" // field=UMean_movingAverageWindow, patch=cylinder
    #include "DMDs/stdmd53" // field=UMean_movingAverageWindow, patch=outlet
    #include "DMDs/stdmd54" // field=UMean_movingAverageWindow, maxRank=10
    // #include "DMDs/stdmd55" // field=UMean_movingAverageWindow, region=coarseMesh, maxRank=5
    #include "DMDs/stdmd56" // field=UMean_movingAverageWindow, patch=outlet, maxRank=2

    #include "DMDs/stdmd57" // field=yPlus
    #include "DMDs/stdmd58" // field=yPlus, patch=cylinder
    #include "DMDs/stdmd59" // field=yPlus, patch=outlet
    #include "DMDs/stdmd60" // field=yPlus, maxRank=10
    #include "DMDs/stdmd61" // field=yPlus, patch=cylinder, maxRank=2
}


// ************************************************************************* //
Attached Files
File Type: txt New Text Document.txt (24.4 KB, 5 views)
saeed jamshidi 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
Optimization of airfoil Gradient based optimization SU2 ryupuriwat SU2 0 March 30, 2023 10:46
ANSYS Optimization failing to update Results component. harmollo1 ANSYS 1 March 21, 2019 15:30
MOGA Direct Optimization chris15012 ANSYS 0 February 17, 2019 14:55
COMSOL: optimization applied to a laminar flow tdh89 COMSOL 0 April 30, 2012 08:57
BOOK ON OPTIMIZATION OF FORTRAN CODES Alberto Main CFD Forum 3 November 10, 2008 06:07


All times are GMT -4. The time now is 15:17.