feat(elements): implement certified full-integration Hex8 kernel
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
#ifndef FESA_RESULTS_SOLID_RESULT_RECORDS_H_
|
||||
#define FESA_RESULTS_SOLID_RESULT_RECORDS_H_
|
||||
|
||||
#include <array>
|
||||
#include <vector>
|
||||
|
||||
#include "fesa/core/source_identity.h"
|
||||
|
||||
namespace fesa {
|
||||
|
||||
/// @brief Stores one unaveraged global solid integration-point result.
|
||||
/// @note Tensor order is [11,22,33,12,13,23], with tensor shear strain.
|
||||
struct SolidIntegrationPointRow {
|
||||
EntityIndex element;
|
||||
int integration_point;
|
||||
std::array<double, 3> natural_coordinates;
|
||||
std::array<double, 3> reference_coordinates;
|
||||
std::array<double, 6> cauchy_stress;
|
||||
// Infinitesimal strain for linear response; reference Green strain for TL.
|
||||
std::array<double, 6> strain;
|
||||
};
|
||||
|
||||
/// @brief Keeps eight physical solid rows and their reference-volume energy.
|
||||
struct SolidElementResultRows {
|
||||
std::vector<SolidIntegrationPointRow> rows;
|
||||
double physical_strain_energy{0.0};
|
||||
};
|
||||
|
||||
} // namespace fesa
|
||||
|
||||
#endif // FESA_RESULTS_SOLID_RESULT_RECORDS_H_
|
||||
Reference in New Issue
Block a user