Skip to content
  • Andrew Heather's avatar
    ENH: Added new caseInfo function object · 6242e70d
    Andrew Heather authored
    Collects and writes case information to file in OpenFOAM dictionary or JSON
    format.  Data includes:
    
    - meta: case name, path, regions, parallel etc.
    - dictionaries: entries retrieved from dictionaries - registered or from file
    - per region: mesh metrics, boundary and boundary field types
    - function object results
    
    Example of function object specification:
    
        caseInfo
        {
            type            caseInfo;
            libs            (utilityFunctionObjects);
    
            // Warn when entries are not found
            lookupMode  warn; // none | warn | error;
    
            // Write format
            writeFormat json; //  dictionary | json;
    
            dictionaries
            {
                USolver // User-specified names
                {
                    // Look up using registered name
                    name        "fvSolution";
    
                    // Optionally limit to specific entries
                    include
                    (
                        "solvers/U/solver"
                    );
                }
                fvSchemes
                {
                    name        "fvSchemes";
    
                    // include all entries by default
                }
                timeScheme
                {
                    name        "fvSchemes";
    
                    include
                    (
                        "/ddtSchemes/default"
                    );
                }
    
                turbulence
                {
                    name        "turbulenceProperties";
    
                    // include all entries by default
                }
                controlDict
                {
                    // Look up using file path
                    path        "<case>/system/controlDict";
    
                    include
                    (
                        "application"
                        "deltaT"
                        "startTime"
                        "endTime"
                    );
                }
            }
    
            functionObjects (minMax1);
        }
    6242e70d