ENH: functionObjects improvements.

- readFields works seamlessly on-the-fly and as postprocessor
- new surfaceInterpolateFields to create interpolated field
- writeRegisteredObject only check upon writing, not upon startup
- add min,max to faceSource
This commit is contained in:
mattijs
2010-04-12 17:04:40 +01:00
parent f1e7cae646
commit 9bf63117ae
17 changed files with 668 additions and 83 deletions

View File

@ -49,13 +49,14 @@ namespace Foam
fieldValues::faceSource::sourceTypeNames_;
template<>
const char* NamedEnum<fieldValues::faceSource::operationType, 5>::
const char* NamedEnum<fieldValues::faceSource::operationType, 7>::
names[] =
{
"none", "sum", "areaAverage", "areaIntegrate", "weightedAverage"
"none", "sum", "areaAverage",
"areaIntegrate", "weightedAverage", "min", "max"
};
const NamedEnum<fieldValues::faceSource::operationType, 5>
const NamedEnum<fieldValues::faceSource::operationType, 7>
fieldValues::faceSource::operationTypeNames_;
}

View File

@ -106,11 +106,13 @@ public:
opSum,
opAreaAverage,
opAreaIntegrate,
opWeightedAverage
opWeightedAverage,
opMin,
opMax
};
//- Operation type names
static const NamedEnum<operationType, 5> operationTypeNames_;
static const NamedEnum<operationType, 7> operationTypeNames_;
private:

View File

@ -103,6 +103,16 @@ Type Foam::fieldValues::faceSource::processValues
result = sum(values*weightField)/sum(weightField);
break;
}
case opMin:
{
result = min(values);
break;
}
case opMax:
{
result = max(values);
break;
}
default:
{
// Do nothing