73 template<
class GeoField>
81 word fieldName(fieldValueStream);
92 if (fieldHeader.headerOk())
94 Info<<
" Setting " << fieldHeader.headerClassName()
95 <<
" " << fieldName <<
endl;
97 GeoField field(fieldHeader, mesh);
99 typename GeoField::value_type value
101 static_cast<const typename GeoField::value_type&>
107 if (selectedCells.
size() == field.size())
109 field.internalField() = value;
113 forAll(selectedCells, celli)
115 field[selectedCells[celli]] = value;
121 field.boundaryField()[
patchi] =
122 field.boundaryField()[
patchi].patchInternalField();
132 "(const fvMesh& mesh, const labelList& selectedCells,"
133 "Istream& fieldValueStream)"
134 ) <<
"Field " << fieldName <<
" not found" <<
endl;
162 selectedCells_(selectedCells)
167 word fieldType(fieldValues);
169 if (fieldType ==
"volScalarFieldValue")
171 setFieldType<volScalarField>
172 (mesh_, selectedCells_, fieldValues);
174 else if (fieldType ==
"volVectorFieldValue")
176 setFieldType<volVectorField>
177 (mesh_, selectedCells_, fieldValues);
179 else if (fieldType ==
"volSphericalTensorFieldValue")
181 setFieldType<volSphericalTensorField>
182 (mesh_, selectedCells_, fieldValues);
184 else if (fieldType ==
"volSymmTensorFieldValue")
186 setFieldType<volSymmTensorField>
187 (mesh_, selectedCells_, fieldValues);
189 else if (fieldType ==
"volTensorFieldValue")
191 setFieldType<volTensorField>
192 (mesh_, selectedCells_, fieldValues);
196 WarningIn(
"setField::iNew::operator()(Istream& is)")
197 <<
"field type " << fieldType <<
" not currently supported"
209 int main(
int argc,
char *argv[])
221 Info<<
"Reading setFieldsDict\n" <<
endl;
235 if (setFieldsDict.found(
"defaultFieldValues"))
237 Info<<
"Setting field default values" <<
endl;
240 setFieldsDict.lookup(
"defaultFieldValues"),
247 Info<<
"Setting field region values" <<
endl;
253 const entry& region = regions[regionI];
274 setField::iNew(mesh, selectedCellSet.
toc())