From 9d9e1a5ef2ac39f2dc8751eafa0d2c46c7ba34c9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=C3=A9cile=20Patte?= <cecile.patte@inria.fr>
Date: Fri, 30 Nov 2018 18:32:25 +0100
Subject: [PATCH] Get part id_array and iarray_sector_id in the case where
 ref_frame is not None

---
 compute_strains.py | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/compute_strains.py b/compute_strains.py
index 6c69d3c..a6c2a27 100644
--- a/compute_strains.py
+++ b/compute_strains.py
@@ -46,7 +46,7 @@ def compute_strains(
             verbose=verbose)
         ref_mesh_n_cells = ref_mesh.GetNumberOfCells()
         if (verbose): print "ref_mesh_n_cells = " + str(ref_mesh_n_cells)
-        
+
         if (ref_mesh.GetCellData().HasArray("sector_id")):
             iarray_sector_id = ref_mesh.GetCellData().GetArray("sector_id")
             n_sector_ids = 0
@@ -57,7 +57,14 @@ def compute_strains(
                     n_sector_ids = sector_id+1
             if (verbose): print "n_sector_ids = " + str(n_sector_ids)
         else:
+            iarray_sector_id = None
             n_sector_ids = 0
+
+        if (ref_mesh.GetCellData().HasArray("part_id")):
+            part_id_array = ref_mesh.GetCellData().GetArray("part_id")
+        else:
+            part_id_array = None
+
     else:
         ref_mesh = None
         n_sector_ids = 0
@@ -104,10 +111,10 @@ def compute_strains(
         n_cells = mesh.GetNumberOfCells()
         if (ref_mesh is not None):
             assert (n_cells == ref_mesh_n_cells), "ref_mesh_n_cells ("+str(ref_mesh_n_cells)+") ≠ n_cells ("+str(n_cells)+"). Aborting."
-            if (ref_mesh.GetCellData().HasArray("part_id")):
-                mesh.GetCellData().AddArray(ref_mesh.GetCellData().GetArray("part_id"))
-            if (ref_mesh.GetCellData().HasArray("sector_id")):
-                mesh.GetCellData().AddArray(ref_mesh.GetCellData().GetArray("sector_id"))
+            if (part_id_array is not None):
+                mesh.GetCellData().AddArray(part_id_array)
+            if (iarray_sector_id is not None):
+                mesh.GetCellData().AddArray(iarray_sector_id)
         myvtk.addDeformationGradients(
             mesh=mesh,
             disp_array_name=disp_array_name,
-- 
GitLab