From bdb9a54bedb75b293479843bab4b10f1a8b5622c Mon Sep 17 00:00:00 2001
From: mattijs <mattijs>
Date: Fri, 11 Feb 2022 18:38:11 +0000
Subject: [PATCH] BUG: cyclicAMI: optional settings not written. Fixes #2363

---
 .../advancingFrontAMI/advancingFrontAMI.C          | 14 +++++++++++++-
 .../advancingFrontAMI/advancingFrontAMI.H          |  6 ++++++
 .../faceAreaWeightAMI2D/faceAreaWeightAMI2D.C      |  3 ++-
 .../nearestFaceAMI/nearestFaceAMI.C                |  9 ++++++++-
 .../nearestFaceAMI/nearestFaceAMI.H                |  3 +++
 5 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C
index 7c03cbed1cf..01f83db8c07 100644
--- a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C
+++ b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.C
@@ -6,7 +6,7 @@
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
     Copyright (C) 2013-2016 OpenFOAM Foundation
-    Copyright (C) 2015-2020 OpenCFD Ltd.
+    Copyright (C) 2015-2020,2022 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -476,4 +476,16 @@ bool Foam::advancingFrontAMI::calculate
 }
 
 
+void Foam::advancingFrontAMI::write(Ostream& os) const
+{
+    AMIInterpolation::write(os);
+    os.writeEntryIfDifferent<word>
+    (
+        "triMode",
+        faceAreaIntersect::triangulationModeNames_[faceAreaIntersect::tmMesh],
+        faceAreaIntersect::triangulationModeNames_[triMode_]
+    );
+}
+
+
 // ************************************************************************* //
diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.H b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.H
index 07e08b68d8c..9ba117ecd30 100644
--- a/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.H
+++ b/src/meshTools/AMIInterpolation/AMIInterpolation/advancingFrontAMI/advancingFrontAMI.H
@@ -252,6 +252,12 @@ public:
         //- Labels of faces that are not overlapped by any target faces
         //  Note: this should be empty for correct functioning
         inline const labelList& srcNonOverlap() const;
+
+
+        // I-O
+
+            //- Write
+            virtual void write(Ostream& os) const;
 };
 
 
diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/faceAreaWeightAMI2D/faceAreaWeightAMI2D.C b/src/meshTools/AMIInterpolation/AMIInterpolation/faceAreaWeightAMI2D/faceAreaWeightAMI2D.C
index c8270c6d313..bec5662ac9a 100644
--- a/src/meshTools/AMIInterpolation/AMIInterpolation/faceAreaWeightAMI2D/faceAreaWeightAMI2D.C
+++ b/src/meshTools/AMIInterpolation/AMIInterpolation/faceAreaWeightAMI2D/faceAreaWeightAMI2D.C
@@ -5,7 +5,7 @@
     \\  /    A nd           | www.openfoam.com
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
-    Copyright (C) 2020 OpenCFD Ltd.
+    Copyright (C) 2020,2022 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -520,6 +520,7 @@ bool Foam::faceAreaWeightAMI2D::calculate
 void Foam::faceAreaWeightAMI2D::write(Ostream& os) const
 {
     advancingFrontAMI::write(os);
+    os.writeEntryIfDifferent<scalar>("Cbb", 0.1, Cbb_);
 }
 
 
diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.C b/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.C
index aaebecbc950..5708ef55dba 100644
--- a/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.C
+++ b/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.C
@@ -5,7 +5,7 @@
     \\  /    A nd           | www.openfoam.com
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
-    Copyright (C) 2020 OpenCFD Ltd.
+    Copyright (C) 2020,2022 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -405,4 +405,11 @@ bool Foam::nearestFaceAMI::calculate
 }
 
 
+void Foam::nearestFaceAMI::write(Ostream& os) const
+{
+    AMIInterpolation::write(os);
+    os.writeEntryIfDifferent<scalar>("maxDistance2", GREAT, maxDistance2_);
+}
+
+
 // ************************************************************************* //
diff --git a/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.H b/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.H
index 85938ecf4d8..ea958b9a127 100644
--- a/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.H
+++ b/src/meshTools/AMIInterpolation/AMIInterpolation/nearestFaceAMI/nearestFaceAMI.H
@@ -155,6 +155,9 @@ public:
             const primitivePatch& tgtPatch,
             const autoPtr<searchableSurface>& surfPtr = nullptr
         );
+
+        //- Write
+        virtual void write(Ostream& os) const;
 };
 
 
-- 
GitLab