Finite Element Analysis

Description

Collaboration diagram for Finite Element Analysis:

Modules

 Nodes
 
 Elements
 
 Constraints
 
 Contact
 
 Mathematical support
 
 Utility classes
 

Classes

class  chrono::fea::Ch3DArrayOfItems< T >
 Helper class to store 3d arrays of items, with i,j,k indexing. More...
 
class  chrono::fea::Ch2DArrayOfItems< T >
 Helper class to store 2d arrays of items, with i,j indexing. More...
 
class  chrono::fea::ChBuilderVolumeBox
 For testing purposes. More...
 
class  chrono::fea::ChBuilderVolumeBoxTetra
 For testing purposes. More...
 
class  chrono::fea::ChContinuumMaterial
 Base class for properties of materials in a continuum. More...
 
class  chrono::fea::ChContinuumElastic
 Class for the basic properties of materials in an elastic continuum. More...
 
class  chrono::fea::ChContinuumElastoplastic
 Class for all elastic materials that can undergo plastic flow. More...
 
class  chrono::fea::ChContinuumPlasticVonMises
 Class for the basic properties of materials in an elastoplastic continuum, with strain yield limit based on Von Mises yield. More...
 
class  chrono::fea::ChContinuumDruckerPrager
 Class for the basic properties of elastoplastic materials of Drucker-Prager type, that are useful for simulating soils. More...
 
class  chrono::fea::ChContinuumPoisson3D
 Class for the basic properties of scalar fields P in 3D FEM problems that can be described by Laplace PDEs of type rho dP/dt + div [C] grad P = 0. More...
 
class  chrono::fea::ChElementData
 Base class for auxiliary per-element properties. More...
 
class  chrono::fea::ChElementDataNONE
 Class of empty element data. More...
 
class  chrono::fea::ChElementDataKRM
 Class for auxiliary per-element properties. More...
 
class  chrono::fea::ChDomain
 Base class for domains subject to a material model. More...
 
class  chrono::fea::ChDomainImpl< T_per_node, T_per_matpoint_aux, T_per_element >
 Class for domains subject to a material model. More...
 
class  chrono::fea::ChDomainIntegrating< T_per_node, T_per_matpoint_aux, T_per_element >
 Class for all domains that computes internal loads and tangent matrices by integrating at quadrature points. More...
 
class  chrono::fea::ChDomainGeneric< T_per_node, T_per_matpoint_aux, T_per_element >
 Class for all domains that computes internal loads and tangent matrices with generic procedures (collocation, analytical formulas, neural networks, etc), not necessarily integrating at quadrature points. More...
 
class  chrono::fea::ChFieldDataAuxiliaryDeformation
 Auxiliary data stored per each material point during the ChDomainDeformation computation. More...
 
class  chrono::fea::ChDomainDeformation
 Domain for FEA large deformations (nonlinear finite strain theory). More...
 
class  chrono::fea::ChFieldDataAuxiliaryThermal
 Auxiliary data stored per each material point during the ChDomainThermal computation. More...
 
class  chrono::fea::ChDomainThermal
 Domain for FEA thermal analysis. More...
 
class  chrono::fea::ChFieldDataAuxiliaryThermoDeformation
 Auxiliary scratch data stored per each material point during the ChDomainThermoDeformation computation. More...
 
class  chrono::fea::ChDomainThermoDeformation
 Domain for FEA nonlinear finite strain with thermal coupling. More...
 
class  chrono::fea::ChDrawer
 Generic finite element drawing interface. More...
 
class  chrono::fea::ChDrawerTetrahedron_4
 Drawing function to draw a ChFieldElementTetrahedron_4 finite element. More...
 
class  chrono::fea::ChDrawerHexahedron_8
 Drawing function to draw a ChFieldElementHexahedron_8 finite element, for the 3D visualization of the finite element in real time rendering, postprocessing, etc. More...
 
class  chrono::fea::ChElementDrawerDispatcher
 This object takes care of invoking the proper ChDrawer methods, like UpdateBuffers(), depending on the type of the element. More...
 
class  chrono::fea::ChVisualDomainGlyphs
 Attach this visual asset to a ChPhysicsItem (ex.a ChDomain) in order to provide an automatic visualization of Gauss material points and finite element nodes, as 3D glyps (arrows, dots, etc.). More...
 
class  chrono::fea::ChVisualDomainMesh
 Attach this visual asset to a ChPhysicsItem (ex.a ChDomain) in order to provide an automatic visualization of finite elements of a ChDomain, as 3D triangle meshes that can be rendered. More...
 
class  chrono::fea::ChFeaPerElementDataNONE
 Base class for the per-element properties of some material. More...
 
class  chrono::fea::ChFeaPerElementDataKRM
 Class for the per-element properties of some material. More...
 
class  chrono::fea::ChFeaDomain
 Base class for domains subject to a material model. More...
 
class  chrono::fea::ChFeaDomainImpl< T_per_node, T_per_matpoint, T_per_element >
 Base class for domains subject to a material model. More...
 
class  chrono::fea::ChFeaDomainThermal
 Domain for FEA thermal analysis. More...
 
class  chrono::fea::ChFieldBase
 Base class for fields, more precisely discretized fields, that are maps of FEA nodes and associated states. More...
 
class  chrono::fea::ChField< T_data_per_node >
 Templated class for implementing fields, more precisely discretized fields, that are maps of FEA nodes and associated states. More...
 
class  chrono::fea::ChFieldScalar
 Generic scalar field. More...
 
class  chrono::fea::ChFieldVector
 Generic scalar field. More...
 
class  chrono::fea::ChFieldTemperature
 Temperature field. More...
 
class  chrono::fea::ChFieldElectricPotential
 Electric potential field. More...
 
class  chrono::fea::ChFieldDisplacement3D
 Field of spatial positions of moving material. More...
 
class  chrono::fea::ChFieldData
 Base interface for the per-node and per-materialpoint properties of some material. More...
 
class  chrono::fea::ChFieldDataStateless
 Class for data structures for the per-node and per-materialpoint properties that do NOT contain an integrable state. More...
 
class  chrono::fea::ChFieldDataNONE
 Placeholder to use in templates if no data is needed. More...
 
class  chrono::fea::ChFieldDataState
 Class for data structures for the per-node and per-materialpoint properties of some material, that contain some type of ChVariable that should be automatically integrated. More...
 
class  chrono::fea::ChFieldDataGeneric< T_nstates >
 Class for data structures for per-node and per-materialpoint properties that that contain an integrable state vector, of size T_nstates. More...
 
class  chrono::fea::ChFieldDataPos3D
 Class for data structure for per-node and per-materialpoint properties that contain an integrable vector state, namely position in 3D space. More...
 
class  chrono::fea::ChFieldElement
 Base class for finite elements over generic fields (scalrar, vectorial, etc), to be used in the new PDE multiphysics system that uses ChField and ChDomain managers. More...
 
class  chrono::fea::ChFieldElementLine
 Class for grouping all finite elements that have a manifold dimension of 1, like beams, cables, etc. More...
 
class  chrono::fea::ChFieldElementSurface
 Class for grouping all finite elements that have a manifold dimension of 2, like surfaces (shells, etc.) More...
 
class  chrono::fea::ChFieldElementVolume
 Class for grouping all finite elements that have a manifold dimension of 3, like volumes (tetrahedrons, hexahedrons, etc.) More...
 
class  chrono::fea::ChFieldElementHexahedron8
 Linear hexahedron for generic constitutive laws. More...
 
class  chrono::fea::ChFieldHexahedron8Face
 Face of an hexahedron. More...
 
class  chrono::fea::ChFieldElementLoadableSurface
 Loadable surface of an element, with reference to some interpolated field. More...
 
class  chrono::fea::ChFieldElementLoadableVolume
 Loadable volume of an element, with reference to some interpolated field. More...
 
class  chrono::fea::ChFieldElementTetrahedron4
 Linear tetrahedron for generic constitutive laws. More...
 
class  chrono::fea::ChFieldTetrahedron4Face
 Tetrahedron face. More...
 
class  chrono::fea::ChLoadContactSurfaceMesh
 Class for applying loads to a contact mesh as a cluster of forces on the nodes of the underlying finite elements. More...
 
class  chrono::fea::ChLoaderGravity
 Constant gravitational load, typically used for FEA elements. More...
 
class  chrono::fea::ChLoaderHeatConvection
 Thermal load: heat convection from surface. More...
 
class  chrono::fea::ChLoaderHeatFlux
 Thermal load: forced heat flux through a boundary surface. More...
 
class  chrono::fea::ChLoaderHeatRadiation
 Thermal load: radiation from surface. More...
 
class  chrono::fea::ChLoaderHeatVolumetricSource
 Thermal load: forced volumetric heat flux (volumetric heat source). More...
 
class  chrono::fea::ChLoaderPressure
 Constant pressure load, a 3D per-area force aligned with the surface normal. More...
 
class  chrono::fea::ChLoaderBeamWrench
 Atomic wrench. More...
 
class  chrono::fea::ChLoadBeamWrench
 Atomic wrench (ready to use load) Load for a wrench (force+torque) at a specific position of a beam. More...
 
class  chrono::fea::ChLoaderBeamWrenchDistributed
 Distributed constant wrench. More...
 
class  chrono::fea::ChLoadBeamWrenchDistributed
 Distributed constant wrench (ready to use load) Load for a wrench (force+torque) at a specific position of a beam. More...
 
class  chrono::fea::ChMaterial
 Base class for all material properties of continua. More...
 
class  chrono::fea::ChMaterial3DDensity
 Base class for density in a continuum. More...
 
class  chrono::fea::ChMaterial3DHyperelastic
 Class for hyperelastic materials, that is materials with a constitutive equation of the type S = f(C) , where S is the 2nd Piola-Kirchhoff stress and C is the right Cauchy-Green deformation tensor C=F^T*F (in material space) as in E = 1/2(C -I) where E the Green Lagrange strain tensor. More...
 
class  chrono::fea::ChMaterial3DStress
 Class for the basic properties of materials in 3D continua where stress can be computed from some deformation measure and some state. More...
 
class  chrono::fea::ChMaterial3DStressKelvinVoigt
 Class for Kelvin-Voigt damping. More...
 
class  chrono::fea::ChMaterial3DStressNeoHookean
 Class for properties of the 3D elasticity from Neo-Hookean model. More...
 
class  chrono::fea::ChMaterial3DStressOgden
 Class for Ogden materials. More...
 
class  chrono::fea::ChMaterial3DStressStVenant
 Class for properties of the 3D elasticity from StVenant-Kirchhoff model. More...
 
class  chrono::fea::ChMaterial3DThermal
 Base class for materials about thermal problems, for FEA problems involving temperature, heat flow, etc. More...
 
class  chrono::fea::ChMaterial3DThermalLinear
 Class for properties of a linear thermal material in finite element problems. More...
 
class  chrono::fea::ChMaterial3DThermalNonlinear
 Class for properties of a non-linear thermal material in finite element problems. More...
 
class  chrono::fea::ChMaterial3DThermalStress
 Material for coupled thermal and stress problems, ex thermoelasticity. More...
 
class  chrono::fea::ChMaterialPoisson
 Class for the basic properties of scalar fields P in 3D FEM problems that can be described by PDEs of type rho dP/dt + div [C] grad P = 0. More...
 
class  chrono::fea::ChMesh
 Class which defines a mesh of finite elements of class ChElementBase using nodes of class ChNodeFEAbase. More...
 
class  chrono::fea::ChMeshSurface
 Class which defines a surface for a mesh FEA elements. More...
 
class  chrono::fea::ChNodeFEAfieldXYZ
 Class for a node of a generic 3D finite element node with x,y,z position. More...
 
class  chrono::fea::ChSurfaceOfDomain
 Class which defines a surface for a domain of FEA elements. More...
 
class  chrono::fea::ChVisualDataExtractor
 Base class for all extractors, that are objects capable of looking into a ChFieldData and return a corresponding scalar / vector / tensor, only if the type of ChFieldData allows it, otherwise a std::nullopt is returned. More...
 
class  chrono::fea::ChVisualDataExtractorScalarBase
 Base class for all extractors that look into a ChFieldData and return a corresponding scalar, if the type of ChFieldData allows it
More...
 
class  chrono::fea::ChVisualDataExtractorVectorBase
 Base class for all extractors that look into a ChFieldData and return a corresponding vector, if the type of ChFieldData allows it
More...
 
class  chrono::fea::ChVisualDataExtractorMatrix33Base
 Base class for all extractors that look into a ChFieldData and return a corresponding 3x3 matrix, if the type of ChFieldData allows it
More...
 
class  chrono::fea::ChVisualDataExtractorQuaternionBase
 Base class for all extractors that look into a ChFieldData and return a corresponding quaternion, if the type of ChFieldData allows it
More...
 

Functions

template<typename Base , typename Tuple , std::size_t... Is>
auto chrono::fea::make_basearray_from_tuple_IMPL (const Tuple &t, std::index_sequence< Is... >)
 
template<typename Base , typename... Ts>
auto chrono::fea::make_basearray_from_tuple (const std::tuple< Ts... > &t)