The AMIWeights function object computes the min/max/average weights of arbitrary mesh interface (AMI) patches, and optionally reports into a text file or writes VTK surfaces of the sum of the weights and mask fields for arbitrarily coupled mesh interface (ACMI) patches.
The motivation for the AMIWeights is to monitor the AMI interpolation weights as cases that employ cyclic AMI patches are sensitive to the quality of these weights, e.g. zero AMI interpolation weights likely lead to a simulation crash.
Output statistics per AMI include:
| Operand | Type | Location |
|---|---|---|
| input | - | - |
| output file | dat | $POST/<file> |
| output field | vtp | $POST/<AMINames>_{src,tgt}.vtp |
where $POST=$FOAM_CASE/postProcessing/<FO>/<time>.
Example of the AMIWeights function object by using functions sub-dictionary in system/controlDict file:
AMIWeights1
{
// Mandatory entries (unmodifiable)
type AMIWeights;
libs (fieldFunctionObjects);
// Mandatory entries (runtime modifiable)
writeFields false;
// Optional (inherited) entries
writePrecision 8;
writeToFile true;
useUserTime true;
region region0;
enabled true;
log true;
timeStart 0;
timeEnd 1000;
executeControl timeStep;
executeInterval 1;
writeControl timeStep;
writeInterval 1;
}
where the entries mean:
| Property | Description | Type | Required | Default |
|---|---|---|---|---|
| type | Type name: AMIWeights | word | yes | - |
| libs | Library name: fieldFunctionObjects | word | yes | - |
| writeFields | Write weights as VTK fields | bool | yes | - |
The inherited entries are elaborated in:
Example by using the postProcess utility:
postProcess -func AMIWeights
Tutorial:
Source code:
History