Integrate Refactor solver sources and dual MSVC CMake builds
This commit is contained in:
@@ -6,10 +6,13 @@
|
||||
#include <cstddef>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include "math/vector3_operations.h"
|
||||
|
||||
namespace fesa {
|
||||
namespace {
|
||||
|
||||
using math_internal::WeightedSum;
|
||||
|
||||
constexpr std::size_t kNodeCount = 4U;
|
||||
constexpr std::size_t kDofsPerNode = 6U;
|
||||
constexpr std::size_t kDofCount = kNodeCount * kDofsPerNode;
|
||||
@@ -54,16 +57,6 @@ ShapeData ShapeAt(const double xi, const double eta) noexcept {
|
||||
0.25 * (1.0 + xi), 0.25 * (1.0 - xi)}}};
|
||||
}
|
||||
|
||||
/// @brief Evaluates one tangent or area vector from shape coefficients.
|
||||
Vector3 WeightedSum(const std::array<double, kNodeCount>& weights,
|
||||
const std::array<Vector3, kNodeCount>& coordinates) {
|
||||
Vector3 result{};
|
||||
for (std::size_t node = 0U; node < kNodeCount; ++node) {
|
||||
result = result + weights[node] * coordinates[node];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// @brief Evaluates finite bilinear surface data at one natural point.
|
||||
bool EvaluateGeometry(const std::array<Vector3, kNodeCount>& coordinates,
|
||||
const double xi, const double eta,
|
||||
|
||||
Reference in New Issue
Block a user