Commit graph

6 commits

Author SHA1 Message Date
Henry Weller
a0cec770fa DataEntry/Sine: New DataEntryType which evaluates a sin function with offset
Description
    Templated sine function with support for an offset level.

        \f[
            a sin(2 \pi f (t - t_0)) s + l
        \f]

    where

    \vartable
        a       | Amplitude
        f       | Frequency [1/s]
        s       | Type scale factor
        l       | Type offset level
        t_0     | Start time [s]
        t       | Time [s]
    \endvartable

    Example for a scalar:
    \verbatim
        <entryName> sine;
        <entryName>Coeffs
        {
            frequency 10;
            amplitude 0.1;
            scale     2e-6;
            level     2e-6;
        }
    \endverbatim

    Example for a vector:
    \verbatim
        <entryName> sine;
        <entryName>Coeffs
        {
            frequency 10;
            amplitude 1;
            scale     (1 0.1 0);
            level     (10 1 0);
        }
    \endverbatim
2016-02-08 11:06:28 +00:00
Henry Weller
a162a26de6 DataEntry: Created the DataEntryTypes namespace for all the concrete DataEntry types
to avoid name conflicts with these primitive names in the OpenFOAM namespace
2016-02-07 13:32:38 +00:00
Henry Weller
1fdf881377 DataEntry: Rationalized IO to ensure consistency between read and write
Removed inconsistent binary output.
Removed unused and IO-inconsistent functions.
Simplified the handling of backward-compatible constant value:
    Removed the unnecessary CompatibilityConstant,
    Updated Constant and DataEntryNew to handle constant value construction.
2016-02-06 19:34:43 +00:00
Henry Weller
7265d90d0d DataEntry: Do not instantiate DataEntry<label> for DataEntry types which interpolate
// Polynomial functions and interpolation do evaluate to label
    // Instead evaluate a scalar and convert to label as appropriate
    // makeDataEntryType(PolynomialEntry, label);
    // makeDataEntryType(CSV, label);
    // makeDataEntryType(Table, label);
    // makeDataEntryType(TableFile, label);

Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1987
2016-02-04 17:28:18 +00:00
Henry
e72b2557d5 PolynomialEntry: Templated polynomial DataEntry to support all basic field types from scalar to tensor
This allows polynomial functions for e.g. velocity to be specified in the uniformFixedValue BC

Consider a linear function for Ux(t) with Uy and Uz = 0:

    inlet
    {
        type            uniformFixedValue;
        uniformValue    polynomial
        (
            ((10 0 0)   (0 0 0))
            ((100 0 0)  (1 0 0))
        );
    }

Resolves bug report http://www.openfoam.org/mantisbt/view.php?id=1508
2015-02-06 09:57:20 +00:00
Henry
446e5777f0 Add the OpenFOAM source tree 2014-12-10 22:40:10 +00:00