43 void Foam::calcTypes::addSubtract::writeAddSubtractFields
50 bool processed =
false;
54 addSubtractFieldName_,
60 if (addSubtractFieldHeader.headerOk())
62 writeAddSubtractField<scalar>
65 addSubtractFieldHeader,
69 writeAddSubtractField<vector>
72 addSubtractFieldHeader,
76 writeAddSubtractField<sphericalTensor>
79 addSubtractFieldHeader,
83 writeAddSubtractField<symmTensor>
86 addSubtractFieldHeader,
90 writeAddSubtractField<tensor>
93 addSubtractFieldHeader,
101 <<
"Unable to process " << baseFieldName_
102 <<
" + " << addSubtractFieldName_ <<
nl
103 <<
"No call to addSubtract for fields of type "
104 << baseFieldHeader.headerClassName() <<
" + "
105 << addSubtractFieldHeader.headerClassName() <<
nl <<
nl
111 FatalErrorIn(
"calcTypes::addSubtract::writeAddSubtractFields()")
112 <<
"Unable to read addSubtract field: " << addSubtractFieldName_
118 void Foam::calcTypes::addSubtract::writeAddSubtractValues
125 bool processed =
false;
127 writeAddSubtractValue<scalar>
130 addSubtractValueStr_,
134 writeAddSubtractValue<vector>
137 addSubtractValueStr_,
141 writeAddSubtractValue<sphericalTensor>
144 addSubtractValueStr_,
148 writeAddSubtractValue<symmTensor>
151 addSubtractValueStr_,
155 writeAddSubtractValue<tensor>
158 addSubtractValueStr_,
165 FatalErrorIn(
"calcTypes::addSubtract::writeAddSubtractValue()")
166 <<
"Unable to process " << baseFieldName_
167 <<
" + " << addSubtractValueStr_ <<
nl
168 <<
"No call to addSubtract for fields of type "
169 << baseFieldHeader.headerClassName() <<
nl <<
nl
182 addSubtractFieldName_(
""),
183 addSubtractValueStr_(
""),
218 if (calcModeName ==
"add")
222 else if (calcModeName ==
"subtract")
224 calcMode_ = SUBTRACT;
229 <<
"Invalid calcMode: " << calcModeName <<
nl
230 <<
" Valid calcModes are add and subtract" <<
nl
236 addSubtractFieldName_ = args.
option(
"field");
241 addSubtractValueStr_ = args.
option(
"value");
247 <<
"addSubtract requires either -field or -value option"
253 resultName_ = args.
option(
"resultName");
273 if (baseFieldHeader.headerOk())
279 writeAddSubtractFields(runTime, mesh, baseFieldHeader);
284 writeAddSubtractValues(runTime, mesh, baseFieldHeader);
290 <<
"unknown calcType " << calcType_ <<
nl
298 <<
"Unable to read base field: " << baseFieldName_