50 lines
1.3 KiB
C
50 lines
1.3 KiB
C
|
|
fileName casePath(args.additionalArgs()[0]);
|
|
fileName fluidRootDir = casePath.path();
|
|
fileName fluidCaseDir = casePath.name();
|
|
|
|
Info<< "Fluid: " << fluidRootDir << " " << fluidCaseDir << endl;
|
|
|
|
Time fluidRunTime
|
|
(
|
|
Time::controlDictName,
|
|
fluidRootDir,
|
|
fluidCaseDir
|
|
);
|
|
|
|
fluidRunTime.setDeltaT(runTime.deltaT().value());
|
|
|
|
fvMesh fluidMesh
|
|
(
|
|
IOobject
|
|
(
|
|
fvMesh::defaultRegion,
|
|
fluidRunTime.timeName(),
|
|
fluidRunTime
|
|
)
|
|
);
|
|
|
|
label fluidInterfacePatchID =
|
|
fluidMesh.boundaryMesh().findPatchID("interface");
|
|
|
|
if(fluidInterfacePatchID == -1)
|
|
{
|
|
FatalErrorIn(args.executable())
|
|
<< "Can't find patch with name interface" << abort(FatalError);
|
|
}
|
|
|
|
patchToPatchInterpolation interpolator
|
|
(
|
|
fluidMesh.boundaryMesh()[fluidInterfacePatchID],
|
|
mesh.boundaryMesh()[interfacePatchID],
|
|
intersection::VISIBLE
|
|
);
|
|
|
|
scalarField error =
|
|
mag
|
|
(
|
|
mesh.C().boundaryField()[interfacePatchID]
|
|
- interpolator.faceInterpolate(fluidMesh.C().boundaryField()[fluidInterfacePatchID])
|
|
);
|
|
|
|
Info << "Patch-to-patch interpolation error, max: " << max(error) << ", avg: " << average(error) << endl;
|