From f619f72a4214e0fb61343ea90035f3f0f6c73179 Mon Sep 17 00:00:00 2001 From: Peter Sharpe Date: Thu, 13 Nov 2025 16:43:57 -0500 Subject: [PATCH 1/2] Refactor center of mass calculation in DesignDatapipe to use torch tensors for improved compatibility. --- workflows/domino_design_sensitivities/design_datapipe.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/workflows/domino_design_sensitivities/design_datapipe.py b/workflows/domino_design_sensitivities/design_datapipe.py index 8d0f12f..bce7a0a 100644 --- a/workflows/domino_design_sensitivities/design_datapipe.py +++ b/workflows/domino_design_sensitivities/design_datapipe.py @@ -94,7 +94,10 @@ def __init__( surface_normals = -1.0 * np.array(mesh.cell_normals, dtype=np.float32) - center_of_mass = calculate_center_of_mass(stl_centers, surface_areas) + center_of_mass = calculate_center_of_mass( + torch.as_tensor(stl_centers), + torch.as_tensor(surface_areas) + ).detach().cpu().numpy() s_max = np.asarray(bounding_box_surface[1]) s_min = np.asarray(bounding_box_surface[0]) From 7d35574cb53c91b68a8aeadf5fd8409ed0e50659 Mon Sep 17 00:00:00 2001 From: Peter Sharpe Date: Fri, 5 Dec 2025 13:34:38 -0500 Subject: [PATCH 2/2] format --- .../domino_design_sensitivities/design_datapipe.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/workflows/domino_design_sensitivities/design_datapipe.py b/workflows/domino_design_sensitivities/design_datapipe.py index bce7a0a..16d0a1b 100644 --- a/workflows/domino_design_sensitivities/design_datapipe.py +++ b/workflows/domino_design_sensitivities/design_datapipe.py @@ -94,10 +94,14 @@ def __init__( surface_normals = -1.0 * np.array(mesh.cell_normals, dtype=np.float32) - center_of_mass = calculate_center_of_mass( - torch.as_tensor(stl_centers), - torch.as_tensor(surface_areas) - ).detach().cpu().numpy() + center_of_mass = ( + calculate_center_of_mass( + torch.as_tensor(stl_centers), torch.as_tensor(surface_areas) + ) + .detach() + .cpu() + .numpy() + ) s_max = np.asarray(bounding_box_surface[1]) s_min = np.asarray(bounding_box_surface[0])