From fa364eda1276890e90c50767ac0f3b906dab64aa Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 31 Aug 2020 10:04:20 +0200 Subject: [PATCH] BUG: inconsistency between constructor and output (fixes #1816) - slipped in with changes to csvTableReader (commit 59ed3ba18d1a) so only affects the 2006 version. - adjust constructor to expect "componentColumns", but also accept "valueColumns" as 1912 and earlier-compatibility. This not only fixes the reported bug, but also ensure proper compatibility with older files. ENH: use "refColumn" instead of "timeColumn" for csvTableReader - consistent with the CSV Function1. Support 'timeColumn' as 1912 and earlier-compatibility. TUT: remove unused table-reader entry --- .../interpolationTable/interpolationTable.H | 11 +++++------ .../tableReaders/csv/csvTableReader.C | 14 +++++++++----- .../tableReaders/csv/csvTableReader.H | 1 + .../primitives/functions/Function1/CSV/CSV.C | 2 +- .../pimpleFoam/RAS/TJunctionFan/0.orig/p | 1 - 5 files changed, 16 insertions(+), 13 deletions(-) diff --git a/src/OpenFOAM/interpolations/interpolationTable/interpolationTable.H b/src/OpenFOAM/interpolations/interpolationTable/interpolationTable.H index 934976ffcb..a90dc1b834 100644 --- a/src/OpenFOAM/interpolations/interpolationTable/interpolationTable.H +++ b/src/OpenFOAM/interpolations/interpolationTable/interpolationTable.H @@ -43,14 +43,13 @@ Description Read csv format: \verbatim - readerType csv; - file "/p0vsTime.csv"; - hasHeaderLine true; // skip first line - timeColumn 0; // time is in column 0 - valueColumns (1); // value starts in column 1 + readerType csv; + file "/p0vsTime.csv"; + hasHeaderLine true; // skip first line + refColumn 0; // reference (eg, time) is in column 0 + componentColumns (1); // component values starts in column 1 \endverbatim - Note - Accessing an empty list results in an error. - Accessing a list with a single element always returns the same value. diff --git a/src/OpenFOAM/interpolations/interpolationTable/tableReaders/csv/csvTableReader.C b/src/OpenFOAM/interpolations/interpolationTable/tableReaders/csv/csvTableReader.C index ea6e419791..bc09a69dde 100644 --- a/src/OpenFOAM/interpolations/interpolationTable/tableReaders/csv/csvTableReader.C +++ b/src/OpenFOAM/interpolations/interpolationTable/tableReaders/csv/csvTableReader.C @@ -37,6 +37,7 @@ template Foam::labelList Foam::csvTableReader::getComponentColumns ( const word& name, + std::initializer_list> compat, const dictionary& dict ) { @@ -45,7 +46,7 @@ Foam::labelList Foam::csvTableReader::getComponentColumns labelList cols; - ITstream& is = dict.lookup(name); + ITstream& is = dict.lookupCompat(name, compat); is.format(IOstream::ASCII); is >> cols; dict.checkITstream(is, name); @@ -113,8 +114,11 @@ Foam::csvTableReader::csvTableReader(const dictionary& dict) : tableReader(dict), headerLine_(dict.get("hasHeaderLine")), - refColumn_(dict.get