|
SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
|
Implementation of fast tensor evaluation functions. These do not contribute physics but are used to accelerate evaluations. More...
#include <algorithm>#include <array>#include <cmath>#include <limits>#include <memory>#include <vector>#include <utility>#include "mfem/fem/fe/fe_h1.hpp"#include "mfem/fem/fe/fe_l2.hpp"#include "serif/utils/error/errors.hpp"#include "serif/backend/mfem/discretization/reconstruction.hpp"Classes | |
| struct | serif::discretization::backend::mfem::TensorWorkspace |
| A workspace for tensor contractions to avoid repeated allocations and pack memory (TODO: does this actual pack memory in a useful manner when using mfem vectors? Probably something to look into). More... | |
| class | serif::discretization::backend::mfem::TensorBasis |
| A class that represents a tensor basis for a finite element. This class is used to evaluate the basis functions and their derivatives at a set of reference points. More... | |
| struct | serif::discretization::backend::mfem::TensorBasis::Product |
| A struct that represents a product of one-dimensional basis functions. More... | |
| class | serif::discretization::backend::mfem::TensorBasisCache |
| Share immutable tensor plans within one operator; copied rules are keyed by their contents. More... | |
| struct | serif::discretization::backend::mfem::TensorBasisCache::Entry |
| A struct that represents an entry in the TensorBasisCache. Each entry contains a non-owning pointer to a finite element, the reference operation, the number of copies, the points used to construct the TensorBasis, and a shared pointer to the TensorBasis itself. More... | |
Namespaces | |
| namespace | serif |
| namespace | serif::discretization |
| namespace | serif::discretization::backend |
| namespace | serif::discretization::backend::mfem |
Enumerations | |
| enum class | serif::discretization::backend::mfem::ReferenceOperation { serif::discretization::backend::mfem::value , serif::discretization::backend::mfem::gradient , serif::discretization::backend::mfem::value_and_gradient } |
| Options enum to control what is actually evaluated at the reference points. More... | |
| enum class | serif::discretization::backend::mfem::ContractionMode { serif::discretization::backend::mfem::automatic , serif::discretization::backend::mfem::dense } |
| Options enum to control how the tensor contractions are performed. More... | |
Implementation of fast tensor evaluation functions. These do not contribute physics but are used to accelerate evaluations.