30 template<
class GeoField>
33 const HashPtrTable<GeoField, label, Hash<label>>&
fields,
38 const GeoField& field0 = *(*
fields.begin());
45 "uniformInterpolate(" + field0.name() +
')',
46 field0.time().timeName(),
51 weights[0]*(*
fields[indices[0]])
55 for (label i = 1; i < indices.size(); ++i)
64 template<
class GeoField>
67 const IOobject& fieldIO,
68 const word& fieldName,
71 const objectRegistry& fieldsCache
75 const objectRegistry& time0Fields = fieldsCache.lookupObject
82 const GeoField& field0 = time0Fields.lookupObject
93 GeoField&
fld = tfld.ref();
95 for (label i = 1; i < times.size(); ++i)
97 const objectRegistry& timeIFields =
98 fieldsCache.lookupObject<
const objectRegistry>(times[i]);
100 const GeoField& fieldi =
101 timeIFields.lookupObject<
const GeoField>(fieldName);
103 fld += weights[i]*fieldi;
110 template<
class GeoField>
113 const IOobject& fieldIO,
114 const word& fieldName,
117 const word& registryName
120 return uniformInterpolate<GeoField>
126 fieldIO.db().subRegistry(registryName,
true)