완성된 HHT trial의 constraint 자료 중복 평가 제거
This commit is contained in:
@@ -10,9 +10,34 @@
|
||||
#include <utility>
|
||||
|
||||
#include "fesa/elements/finite_rotation.h"
|
||||
#include "elements/nonlinear_mitc4_configuration_internal.h"
|
||||
#include "math/dense_blas_internal.h"
|
||||
|
||||
namespace fesa {
|
||||
|
||||
nonlinear_mitc4_internal::ConfigurationSnapshot
|
||||
nonlinear_mitc4_internal::ConfigurationSnapshot::Read(
|
||||
const NonlinearMitc4Shell& element) {
|
||||
ConfigurationSnapshot result{};
|
||||
std::size_t index = 0U;
|
||||
for (const auto& coordinates : element.coordinates_)
|
||||
for (std::size_t c = 0U; c < 3U; ++c)
|
||||
result.values[index++] = coordinates[c];
|
||||
for (const auto& frame : element.initial_frames_)
|
||||
for (std::size_t i = 0U; i < 3U; ++i)
|
||||
for (std::size_t j = 0U; j < 3U; ++j)
|
||||
result.values[index++] = frame(i, j);
|
||||
for (const auto& director : element.initial_directors_)
|
||||
for (std::size_t c = 0U; c < 3U; ++c) result.values[index++] = director[c];
|
||||
result.values[index++] = element.thickness_;
|
||||
result.values[index++] = element.youngs_modulus_;
|
||||
result.values[index++] = element.poisson_ratio_;
|
||||
result.values[index] = element.drilling_stiffness_;
|
||||
result.source = element.source_location_;
|
||||
result.identity = element.identity_;
|
||||
return result;
|
||||
}
|
||||
|
||||
namespace {
|
||||
|
||||
constexpr std::size_t kNodeCount = 4U;
|
||||
|
||||
Reference in New Issue
Block a user