feat(poly): find all connected elements to central vertex

In order to constrain the central slope we find all the elements connected to the central vertex. The slope will be approximated over these using the finite difference method
This commit is contained in:
2025-03-19 11:15:37 -04:00
parent e6039494f8
commit 0ec1b6e751
3 changed files with 87 additions and 6 deletions

View File

@@ -2,7 +2,7 @@
//
// Copyright (C) 2025 -- The 4D-STAR Collaboration
// File Author: Emily Boudreaux
// Last Modified: February 14, 2025
// Last Modified: March 19, 2025
//
// 4DSSE is free software; you can use it and/or modify
// it under the terms and restrictions the GNU General Library Public
@@ -23,11 +23,9 @@
#include "mfem.hpp"
#include <string>
#include <array>
#include <vector>
#include "config.h"
#include "probe.h"
#include "quill/LogMacros.h"
@@ -175,8 +173,10 @@ namespace polyMFEMUtils {
mfem::Array<int> m_originElementIDs;
mfem::Array<mfem::IntegrationPoint> m_originIntegrationPoints;
mfem::DenseMatrix m_originCoordinateMatrix;
mfem::Mesh* m_mesh;
std::vector<int> m_originConnectedElementIds;
public:
ConstraintIntegrator(const double gamma);
ConstraintIntegrator(const double gamma, mfem::Mesh* mesh);
~ConstraintIntegrator() = default;
void AssembleElementMatrix(const mfem::FiniteElement &el, mfem::ElementTransformation &Trans, mfem::DenseMatrix &elmat) override;