version 0.4.1
ferequirements.hh File Reference

Definition of the LinearElastic class for finite element mechanics computations. More...

#include <iosfwd>
#include <map>
#include <set>
#include <vector>
#include <dune/common/exceptions.hh>
#include <Eigen/Core>
#include <ikarus/finiteelements/feresulttypes.hh>
#include <ikarus/utils/makeenum.hh>

Go to the source code of this file.

Classes

struct  Ikarus::AffordanceCollection< Affordances >
 Struct representing a collection of affordances. More...
 
class  Ikarus::FERequirements< sol, para, SV, PM >
 Class representing the requirements for finite element calculations. More...
 
struct  Ikarus::FERequirementsFactory< sol, para, wrapWithRef, SV, PM >
 

Namespaces

namespace  Ikarus
 
namespace  Ikarus::AffordanceCollections
 

Concepts

concept  Ikarus::FEAffordance
 Concept to check if a given type is one of the predefined affordance enums or the AffordanceCollection.
 

Enumerations

enum class  Ikarus::ScalarAffordance {
  Ikarus::BEGIN , Ikarus::noAffordance , Ikarus::mechanicalPotentialEnergy , Ikarus::microMagneticPotentialEnergy ,
  Ikarus::END
}
 A strongly typed enum class representing the scalar affordance. More...
 
enum class  Ikarus::VectorAffordance {
  Ikarus::BEGIN , Ikarus::noAffordance , Ikarus::forces , Ikarus::microMagneticForces ,
  Ikarus::END
}
 A strongly typed enum class representing the vector affordance. More...
 
enum class  Ikarus::MatrixAffordance {
  Ikarus::BEGIN , Ikarus::noAffordance , Ikarus::stiffness , Ikarus::materialstiffness ,
  Ikarus::geometricstiffness , Ikarus::stiffnessdiffBucklingVector , Ikarus::microMagneticHessian , Ikarus::mass ,
  Ikarus::END
}
 A strongly typed enum class representing the matrix affordance. More...
 
enum class  Ikarus::FEParameter {
  Ikarus::FEParameter::BEGIN , Ikarus::FEParameter::noParameter , Ikarus::FEParameter::loadfactor , Ikarus::FEParameter::time ,
  Ikarus::FEParameter::END
}
 A strongly typed enum class representing the FE parameter. More...
 
enum class  Ikarus::FESolutions {
  Ikarus::FESolutions::BEGIN , Ikarus::FESolutions::noSolution , Ikarus::FESolutions::displacement , Ikarus::FESolutions::velocity ,
  Ikarus::FESolutions::director , Ikarus::FESolutions::magnetizationAndVectorPotential , Ikarus::FESolutions::END
}
 A strongly typed enum class representing the type of the solutions vectors. More...
 

Functions

constexpr std::string Ikarus::toString (ScalarAffordance _e)
 
constexpr std::string Ikarus::toString (VectorAffordance _e)
 
constexpr std::string Ikarus::toString (MatrixAffordance _e)
 
constexpr std::string Ikarus::toString (FEParameter _e)
 
constexpr std::string Ikarus::toString (FESolutions _e)
 
auto Ikarus::vectorAffordance (MatrixAffordance affordanceM)
 
auto Ikarus::scalarAffordance (MatrixAffordance affordanceM)
 
auto Ikarus::scalarAffordance (VectorAffordance affordanceV)
 
constexpr AffordanceCollection Ikarus::AffordanceCollections::elastoStatics (ScalarAffordance::mechanicalPotentialEnergy, VectorAffordance::forces, MatrixAffordance::stiffness)
 

Variables

constexpr VectorAffordance Ikarus::forces = VectorAffordance::forces
 
constexpr MatrixAffordance Ikarus::stiffness = MatrixAffordance::stiffness
 
constexpr MatrixAffordance Ikarus::stiffnessdiffBucklingVector = MatrixAffordance::stiffnessdiffBucklingVector
 
constexpr MatrixAffordance Ikarus::mass = MatrixAffordance::mass
 
constexpr ScalarAffordance Ikarus::potentialEnergy = ScalarAffordance::mechanicalPotentialEnergy