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

foil
{
    type            actuatorLineSource;
    active          on;            // on/off switch

    actuatorLineSourceCoeffs
    {
        fieldNames          (U);
        selectionMode   cellSet;       // cellSet, points, cellZone
        cellSet         foil;          // cellSet name
        freeStreamVelocity  (29.9 0 0); // M = 0.381
        nElements           4;
        writePerf           true;
        writeVTK            true;

        elementGeometry // Will be interpolated linearly per nElements
        ( // point spanDir chordLength chordRefDir chordMount pitch
            ((0.0 0.0 0.0) (0 0 1) (1.22) (-1 0 0) (0.25) (15))
            ((0.0 0.0 1.98) (0 0 1) (1.22) (-1 0 0) (0.25) (15))
        );

        elementProfiles (NACA0012);

        dynamicStall
        {
            active              on;
            dynamicStallModel   LeishmanBeddoesSGC;
            speedOfSound        343;

            LeishmanBeddoesCoeffs
            {
                speedOfSound    $speedOfSound;
            }

            LeishmanBeddoes3GCoeffs
            {
                speedOfSound    $speedOfSound;
            }

            LeishmanBeddoesSGCCoeffs
            {
                speedOfSound    $speedOfSound;
                TAlpha          3.9;
                alphaDS0DiffDeg 3.78;
                B1              0.75;
                eta             1;
                E0              0.25;
            }
        }

        harmonicPitching
        {
            active          on;
            reducedFreq     0.124; // omega*c/(2*UInfty) about chordMount
            amplitude       10.0; // Degrees
        }

        profileData
        {
            NACA0012
            {
                data
                ( // alpha C_l C_d
                    #include "../../../resources/foilData/NACA0012_2e6"
                );
            }
        }
    }
}

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